Как исправить чрезмерные пробуждения в Android

Недавно я получил отчет о производительности от магазина Google Play (Android Vitals), и отчет приведен ниже

Чрезмерное количество срабатываний Alarm Manager Процент сеансов батареи, в течение которых пользователи испытывали более 10 пробуждений в час. Сеанс батареи - это период между двумя полной зарядкой устройства. Данные собираются только когда устройство отключено от зарядного устройства.

https://developer.android.com/topic/performance/vitals/wakeup.html

я попробовал вышеупомянутую идею, но у меня не было никакой ясной идеи, как исправить чрезмерные пробуждения

Мой код указан ниже

public void registerAlarm() 
{
    AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
    Calendar alarmTime = Calendar.getInstance();
    PendingIntent poperation = PendingIntent.getService(this, 0, getIntentForNotification(this), 0);
    alarmManager.cancel(poperation);
    int currentapiVersion = android.os.Build.VERSION.SDK_INT;
    if (currentapiVersion < android.os.Build.VERSION_CODES.KITKAT) {
        alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, alarmTime.getTimeInMillis(), 1 * 60 * 60 * 1000, poperation);
    } else {
        alarmManager.setInexactRepeating(AlarmManager.RTC_WAKEUP, alarmTime.getTimeInMillis(), 1 * 60 * 60 * 1000, poperation);
    }
}

Примечание: я использую разрешение WAKE_LOCK в моем приложении

0 ответов

Другие вопросы по тегам