Google is committed to advancing racial equity for Black communities. See how.
Эта страница переведена с помощью Cloud Translation API.
Switch to English

Профили питания для Android

Информация об использовании батареи получается из статистики использования батареи и значений профиля мощности.

Статистика использования батареи

Платформа автоматически определяет статистику использования батареи, отслеживая, как долго компоненты устройства находятся в разных состояниях. Когда компоненты (набор микросхем Wi-Fi, сотовое радио, Bluetooth, GPS, дисплей, ЦП) меняют состояния (ВЫКЛ. / ВКЛ., Режим ожидания / полная мощность, низкая / высокая яркость и т. Д.), Управляющая служба сообщает сервису платформы BatteryStats. BatteryStats собирает информацию с течением времени и сохраняет ее для использования при перезагрузках. Служба не отслеживает потребление тока батареей напрямую, а вместо этого собирает информацию о времени, которую можно использовать для приблизительного расчета потребления батареи различными компонентами.

Платформа собирает статистику, используя следующие методы:

  • Нажмите . Службы, осведомленные об изменениях компонентов, отправляют изменения состояния в службу BatteryStats.
  • Тянуть . Для таких компонентов, как использование ЦП приложениями, платформа автоматически извлекает данные в точках перехода (например, при запуске или остановке действия), чтобы сделать снимок.

Потребление ресурсов связано с приложением, использующим ресурс. Когда несколько приложений одновременно используют ресурс (например, wakelocks, предотвращающие приостановку системы), структура распределяет потребление между этими приложениями, хотя и не обязательно одинаково.

Чтобы избежать потери статистики использования для события выключения, которое может указывать на проблемы с энергопотреблением батареи (т. Е. Выключение происходит из-за того, что батарея достигла нулевой оставшейся емкости), фреймворк отображает статистику примерно каждые 30 минут.

Статистика использования батареи полностью обрабатывается платформой и не требует модификации OEM.

Значения профиля мощности

Внимание: Производители устройств должны предоставить профиль мощности компонента, который определяет значение потребления тока для компонента и приблизительный разряд батареи, вызванный компонентом с течением времени. Этот профиль определен в платформе / frameworks / base / core / res / res / xml / power_profile.xml . Инструкции по этим настройкам см. В разделе Значения мощности .

В профиле мощности потребляемая мощность указывается в миллиамперах (мА) потребляемого тока при номинальном напряжении и может быть дробной величиной в микроамперах (мкА). Значение должно быть мА, потребляемым батареей, а не значением, применимым к шине питания, которое не соответствует току, потребляемому от батареи.

Например, профиль мощности дисплея определяет ток в мА, необходимый для поддержания минимальной и максимальной яркости дисплея. Чтобы определить затраты на электроэнергию (т. Е. Разрядку батареи компонентом дисплея) для поддержания дисплея включенным, структура отслеживает время, проведенное на каждом уровне яркости, а затем умножает эти временные интервалы на интерполированную стоимость яркости дисплея.

Платформа также умножает время ЦП для каждого приложения на количество мА, необходимое для работы ЦП с определенной скоростью. Этот расчет устанавливает сравнительный рейтинг того, сколько батареи потребляет приложение при выполнении кода ЦП (время в качестве приложения переднего плана и общее время, включая фоновую активность, сообщаются отдельно).