Excessive partial wake locks

Partial wake locks are a mechanism in the PowerManager API that lets developers keep the CPU running after a device's display turns off (whether due to system timeout or the user pressing the power button). Excessive use of partial wake locks drains the device's battery because it prevents the device from entering lower power states.

Detect the problem

Android vitals

Android vitals can help improve your app's performance by alerting you via the Play Console when your app's use of partial wake locks is excessive.

Android vitals reports partial wake lock use as excessive when all of the partial wake locks, added together, run for 2 or more hours in a 24-hour period. Android vitals tracks wake lock duration only if the wake lock is held when the app is in the background or is running a foreground service. Currently, Android vitals exempts wake locks created by audio, location, and JobScheduler user-initiated APIs from the wake lock calculation.

The Android vitals excessive partial wake lock dashboard provides breakdowns of non-exempted wake lock names associated with your app, showing affected sessions and durations.

If excessive partial wake locks occur in more than 5% of app sessions across all devices in a 28-day period, it can affect your app's visibility on Play.