В Android 13 появилась концепция трекера энергопотребления — процесса, который отслеживает использование батареи приложениями в фоновом или переднем плане, чтобы определить, нарушают ли приложения какие-либо правила. Android 13 содержит два трекера энергопотребления: трекер передних служб и трекер использования батареи в фоновом режиме. Вместо использования собственных механизмов для определения чрезмерного расхода батареи приложениями, мы рекомендуем использовать эти трекеры для мониторинга и оповещения пользователей о чрезмерном использовании батареи.
Трекер служб переднего плана
Активные службы могут работать и расходовать заряд батареи в течение длительного времени. Трекер активных служб отображает уведомление пользователям, когда активная служба работает длительное время, но невидима, например, когда пользователь закрыл уведомление службы. Если пользователь щелкнет по уведомлению, отобразится диспетчер задач, позволяющий остановить активную службу. Этот трекер включен по умолчанию.
Отслеживание фонового использования батареи
Приложения могут разряжать батарею в фоновом режиме, оставаясь незамеченными для пользователя. Фоновый трекер расхода батареи отслеживает использование батареи каждым приложением. В данном контексте использование батареи определяется тремя параметрами: работающее приложение на переднем плане, служба переднего плана, выполняющая невидимые действия, и фоновая часть приложения. Если использование батареи фоновой частью приложения превышает определенный порог, приложение перемещается в ограниченную категорию, ограничивая его выполнение одной задачей в день. Этот трекер отключен по умолчанию. Чтобы включить его, выполните следующие команды:
adb shell device_config put activity_manager bg_auto_restrict_abusive_apps 1
adb shell device_config put activity_manager bg_current_drain_auto_restrict_abusive_apps_enabled 1