Команды Android и Google Play объединилсь с производителями устройств для добавления новых метрик в Android Vitals в Google Play. На днях запустили новую метрику - excessive wake locks в Beta. Она позволяет понять где у вас происходит большое потребление батареи по причине несвоевременного освобождения Wake Lock.
Wake Lock - это механизм PowerManager API, который позволяет не засыпать процессору, после того как отключится экран устройства.
val powerManager = context.getSystemService<PowerManager>()
// Создаем WakeLock с указанием типа блокировки
val wakeLock = powerManager.newWakeLock(
PowerManager.PARTIAL_WAKE_LOCK,
"MyApp:WakeLockTag"
)
// Проверяем и активируем WakeLock
if (!wakeLock.isHeld) {
wakeLock.acquire()
}
// Освобождаем WakeLock
if (wakeLock.isHeld) {
wakeLock.release()
}
#android #googleplay #батарея