App Store RejectionGuideline Google Play — PermissionsExact Alarm Permission Policy

You're Requesting Exact Alarm Permission Without a Good Enough Reason

SCHEDULE_EXACT_ALARM is a restricted permission that Google only allows for specific use cases like calendar, clock, and reminder apps. Using it for background work or analytics will get you rejected.

What Apple said

Your app requests the SCHEDULE_EXACT_ALARM permission, which is restricted to apps whose core functionality requires scheduling exact alarms — such as alarm clocks, calendar reminders, or time-sensitive notifications. Based on our review, your app's use of this permission does not appear to meet these requirements.

What this actually means

Android 12 and higher made SCHEDULE_EXACT_ALARM a special permission that users must grant manually. Google Play restricts which apps can even request it — only apps where precise time notification is the core user-facing feature (alarm clocks, calendar apps, reminder apps, medication reminders) can justify it. Using it as a convenient way to trigger background work is not acceptable.

What Apple needs to see

  • A clear user-facing feature that genuinely requires exact (to-the-minute or to-the-second) alarm precision
  • Use of inexact alarms or WorkManager for all background processing and non-user-visible tasks
  • Documentation in your review notes explaining specifically why your app's core functionality requires exact alarms
  • Graceful degradation if the user denies the permission — the app must still function without it
  1. 1Audit every use of AlarmManager.setExact() and AlarmManager.setExactAndAllowWhileIdle() in your codebase
  2. 2Replace all background processing uses with WorkManager which handles scheduling without requiring exact alarms
  3. 3Keep SCHEDULE_EXACT_ALARM only for genuine user-visible, time-critical notifications like alarms, appointments, or medication reminders
  4. 4Add a permission rationale screen explaining to users why the permission is needed before requesting it
  5. 5Update your Data Safety and permissions declaration in Play Console to accurately reflect your use of this permission

While you're at it — Apple also requires these pages for every app.

Fix this rejection, then make sure you're covered on the compliance side too. Apple requires every app to link to a hosted Privacy Policy, Terms of Service, Support page, and Data Deletion page. No link means another rejection — just for a different reason.

Privacy Policy
Terms of Service
Support Page
Data Deletion Page
Generate my compliance pages — $9

Common questions

My app sends time-sensitive push notifications — does that justify exact alarms?
Usually no. Time-sensitive push notifications should use FCM (Firebase Cloud Messaging), not local exact alarms. FCM handles delivery timing server-side. If your notifications are triggered by server events, use push notifications instead of scheduling local exact alarms.
What if my exact alarm use case is genuinely critical — how do I convince Google?
Explain it clearly in the Play Console's declaration and in your app listing description. For truly justified use cases (medication reminder apps, professional scheduling tools), document why inexact alternatives would compromise the core user experience. Be specific about failure scenarios.
Can I use USE_EXACT_ALARM instead of SCHEDULE_EXACT_ALARM?
USE_EXACT_ALARM is for a narrower set of use cases (alarm clock and timer apps specifically) and is auto-granted without user prompt, but it's also more restricted. Check Google's documentation to see which permission applies to your use case — using the wrong one is also a policy issue.