Skip to content

Google Play rejectionGoogle Play: USE_EXACT_ALARM permission not allowed for your app

USE_EXACT_ALARM is an Android 13 permission that Google Play allows only for alarm, timer and calendar apps. Some reminder and notification apps add it without needing it. The fix is to remove it and use SCHEDULE_EXACT_ALARM, which the user grants, or an inexact alarm.

Short answer

Remove USE_EXACT_ALARM from the manifest unless the app is an alarm, timer or calendar app. If a feature still needs exact timing, request SCHEDULE_EXACT_ALARM, check canScheduleExactAlarms() before you schedule, and send the user to the settings screen when it is off. Most reminders work with inexact alarms. Then upload a new release.

Rather not fix it yourself? App Fix Ticket starts with a fixed-price diagnosis, then a fixed price for the fix before any fix work.

Why Play flags it, and the fix

  1. 01

    The app isn’t an alarm, timer or calendar app

    “USE_EXACT_ALARM is a restricted permission and apps must only declare this permission if their core functionality supports the need for an exact alarm.” Google Play Help, Exact Alarm Permission policy

    Android grants USE_EXACT_ALARM without asking the user, so Play restricts it and reviews apps that declare it. A to-do list, a habit tracker or a reminder inside another app doesn’t qualify, even when its reminders are time based.

  2. 02

    A plugin’s setup told you to add it

    Notification and reminder plugins for Flutter and React Native may list USE_EXACT_ALARM in their setup steps, or ship it in their own manifest. Check the Merged Manifest tab in Android Studio, then remove it so it doesn’t come back.

    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools">
      <uses-permission android:name="android.permission.USE_EXACT_ALARM"
          tools:node="remove" />
      <uses-permission android:name="android.permission.SCHEDULE_EXACT_ALARM" />
    </manifest>
  3. 03

    Use SCHEDULE_EXACT_ALARM and ask the user

    “If your app does not have this specific core need, consider using SCHEDULE_EXACT_ALARM permission instead. It provides the same functionality but access must be granted by the user.” Google Play Help, Exact Alarm Permission policy

    SCHEDULE_EXACT_ALARM does the same job, but the user has to turn it on. Check for it before each exact alarm, and fall back to an inexact alarm or open the settings screen when it is off. canScheduleExactAlarms() and that settings screen need Android 12 (API 31) or higher; on older versions, skip the check.

    val am = context.getSystemService(AlarmManager::class.java)
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.S || am.canScheduleExactAlarms()) {
      am.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, timeMs, pendingIntent)
    } else {
      // from an Activity; from other contexts add FLAG_ACTIVITY_NEW_TASK
      startActivity(Intent(Settings.ACTION_REQUEST_SCHEDULE_EXACT_ALARM,
          Uri.parse("package:$packageName")))
    }
  4. 04

    The permission is off on Android 14 installs

    “Check the permission with canScheduleExactAlarms() before scheduling exact alarms.” Android Developers, Schedule exact alarms are denied by default

    On Android 14, SCHEDULE_EXACT_ALARM starts as denied for most new installs of apps that target Android 13 or higher. An app that assumes it can set exact alarms crashes or misses them, so always check first.

  5. 05

    Most reminders don’t need an exact alarm

    “Note: Most apps can schedule tasks and events using inexact alarms.” Android Developers, Schedule alarms

    A reminder that fires a minute late is fine for most apps. Inexact alarms or WorkManager need no special permission and respect battery saving.

Checked against the vendor’s docs on : Google Play Help: Permissions and APIs that Access Sensitive Information (Exact Alarm Permission); Android Developers: Schedule exact alarms are denied by default; Android Developers: Schedule alarms.

Rather hand it over?

Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.

“Very responsive, attentive to fixing bugs, and completed the project as needed! Thank you!”
A buyer in the United States, July 2022. Shopify on Fiverr
All 127 Fiverr reviews

Related: Google Play QUERY_ALL_PACKAGES rejection · Google Play foreground service declaration · Google Play target API level 35 · Google Play invalid privacy policy

Questions

More on this launch

Do I need a new release?

Yes. The permission is in the app bundle, so upload a version without it, and replace any older release on a testing or production track that still has it.

Which apps can keep USE_EXACT_ALARM?

Google lists two: an alarm or timer app, and a calendar app that shows event notifications. For any other need, Google points to SCHEDULE_EXACT_ALARM.

Can you fix it for me?

If one bug is the whole problem, the App Fix Ticket covers it: a written diagnosis first, then the fix. If the app has more going on, the Launch Check is a written check of the whole app. Each issue found is rated critical, high, medium or low, with where it is and how it was confirmed. No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.

Something else?

Describe it and get a written quote

Describe the app and where it is in the launch. You get a written scope, a fixed price and a timeline; Simon replies by email, usually within one business day.