Помощь по BetterBatteryStats

Перевод ©Dmitry Gaich 2020

ПРОЕКТ BETTER​Инструменты для улучшения использования Андроид.
Проект Better начался с  BetterBatteryStats, но вскоре превратился в  нечто большее: он стал предлагать набор инструментов, призванных оказать помощь в улучшении использования Андроид.Все составные части проекта better являются открытым кодом согласно условий лицензии Apache 2.0 и размещены на github.
1.png
2.png
3.PNG

   

BetterBatteryStats

Описание

Поддержка

Как

Помощь

Активный мониторинг

Изменения

Устройства без рута

Авторство

Подробности

Системное приложение

    Описание

Высокий расход батареи зачастую становится ограничивающим фактором для пользователя.

С BetterBatteryStats Вы сможете анализировать поведение Вашего телефона, найти приложения, заставляющие разряжаться батарею тогда, когда он должен спать, и определить эффект ответных действий:

  • Найти виновников расхода, основываясь на детальной информации о причинах
  • Используя базу знаний онлайн, найти, как уменьшить или убрать вэйклоки
  • Определить эффект действий для уменьшения расхода
  • Обнаружить изменения в профиле бодрствования/сна и быстро найти причину (энергоёмкие приложения)

Другими словами, BetterBatteryStats помогает получить Вам всё самое лучшее от Вашего смартфона на Андроид.

Поддержка

Пожалуйста, не используйте систему обратной связи маркета для поддержки. При возникновении проблем, любых вопросов или предложений, свяжитесь со мной по e-mail (sven.knispel [at] gmail.com). Для сообщения об ошибках, пожалуйста, прилагайте логкат, сделанный из приложения, вместе с любой возможной информацией, которая поможет воспроизвести проблему.

Также Вы можете обратиться в форум xda-developers для помощи и поддержки.

BetterBatteryStats является приложением с открытым  исходным кодом, Вы можете наблюдать, оставлять отзывы, вносить свой вклад, открывать проблемы и запрашивать функции.

Как

Документ дает общее понятие, как использовать BetterBatteryStats для уменьшения расхода батареи системным образом.

Сперва Вы должны выбрать метку (обычно, отношение «Отключено (Unplugged)» к «Текущему (Current)» является наилучшим вариантом для начала).

Проверьте время глубокого сна, бодрствования и включенного экрана

Отношение глубокого сна к общему времени показывает, сколько времени телефон провел в наиболее экономичном режиме: в идеале глубокий сон должен почти быть равным общему времени.

Отношение включенного экрана ко времени бодрствования показывает, сколько времени телефон использовался ко времени бодрствования. В идеале время включенного экрана должно равняться времени бодрствования, означая, что телефон находился в режиме бодрствования только во время использования.

Примечание: виджет 1×1 показывает оба соотношения и дает лучший обзор оптимальности работы телефона.

Проверьте вэйклоки ядра

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

Вэйклок PowerManagerService

Этот вэйклок показывается в ряде частичных вэйклоков на многих телефонах. Если данный вэйклок #1, перейдите в Частичные вэйклоки для получения дополнительных сведений.

Вэйклок multipdp / svnet-dormancy

Этот вэйклок указывает на интенсивное сетевое использование. Если данный вэйклок #1, перейдите в Статистику сети для получения дополнительных сведений.

Если PowerManagerService не является самым активным вэйклоком, проверьте базу знаний онлайн или используйте поиск для получения дополнительной информации о вэйклоке и его потенциальных причинах.

Проверьте частичные вэйклоки

Список показывает, какие частичные вэйклоки срабатывали и для большинства из них — какие приложения их вызывали. См. «Что дальше» для дополнительных деталей и информации по их уменьшению.

Вэйклок AlarmManager

Большое время или количество вэйклока AlarmManager показывает, что многие пробуждения вызывались сигналами или тем, что приложения интенсивно добавляли/изменяли сигналы. Детальный обзор можно найти в [Сигналах].

Статистика сети

Здесь Вы найдете, какие приложения/ пакеты использовались для наибольшего объема передачи данных.

Что дальше?

Некоторые, но не все вэйклоки могут вызываться определенным приложением. В данном случае доступны следующие опции:

Проверить / изменить настройки

Иногда нам действительно необходимы приложения/ функционал, вызывающие вэйклоки и есть хорошая новость — надежда присутствует. Настройки многих приложений могут определять их поведение, таким образом, можно проверить:

  • частота: давать твиттеру проверять новые сообщения каждые 2 минуты не особо совместимо с хорошей продолжительностью жизни батареи. Зная цену такой функциональности, лучше установить использование по запросу, чем дать приложению работать в фоне
  • количество: проверьте дополнительные службы, например облачное резервное копирование, полную синхронизацию и др., и спросите себя, все ли это Вам необходимо

Удаление или заморозка

Если причина частичных вэйклоков установлена, спросите себя, используете ли Вы это приложение. Если нет — отключите/удалите/заморозьте его. Возвращайтесь в начало и проведите новую проверку для подтверждения эффекта выполненных действий.

В некоторых случаях невозможно соотнести вэйклок с определенным приложением. Используйте базу знаний и поиск для получения дополнительной информации о потенциальных причинах.

Общие замечания

  • Следующие замечания помогут Вам устранить некоторые причины пробуждений:
  • выключайте GPS когда он не необходим для того, чтобы приложения не злоупотребляли источниками местоположения
  • когда Вы закончили работу с приложением, закройте его кнопкой «назад». Это завершит его и предотвратит работу в фоне
  • не используйте авто-киллеры. Если есть приложения, которые Вы не хотите запускать или кэшировать, заморозьте их или, соответственно, настройте их автозапуск
  • не используйте также энергосберегающие утилиты типа Juice Defender или Green Power: большинство приложений ведут себя неадекватно при невозможности использования передачи данных и увеличат расход за счет дополнительного объема попыток
  • если Вы не используете Wifi, выключите его: в некоторых случаяхWifi может вызывать пробуждения и дополнительную нагрузку, например, на службы местоположения

Насладитесь Вашими успехами

Базовое правило оптимизации работы — это проверка результатов каждого действия и это касается следующего:

  • не делайте слишком много изменений за один раз: если причина устранена, картина может мовершенно измениться. Поэтому работа над двумя или более процессами за один раз может быть пустой тратой времени
  • замена ядра, прошивки или модема во время процесса оптимизации может исказить Вашу статистику, не проводите тестов в это время, чтобы не получить неверных результатов
  • учитывайте внешние факторы, в случае неожиданной статистики BBS, проведите тесты снова для подтверждения результатов: наши телефоны не являются закрытыми системами и условия, такие как покрытие сети, могут влиять на результаты. Если сомневаетесь, подтвердите результаты повторным проведением проверок в разных условиях для корректного диагностирования проблемы
  • не переусердствуйте: Вы ведь хотите пользоваться телефоном, так что не охотьтесь за вэйклоком до последней секунды. Насладитесь результатами и периодически снова проверяйте статистику, если Вы чувствуете, что расход батареи увеличивается

      Помощь

Здесь вы найдете детали об организации экранов и опций BetterBatteryStatistics. Другая информация об использовании BetterBatteryStats находится в разделе Как.

Метки

BetterBatteryStats не собирает данные в фоне, но использует метки, сохраненные в определенное время (в определенных событиях):

Загрузка (Boot): сохраняется, когда телефон загружается, удаляются все другие ссылки

Отключено (Unplugged): сохраняется, когда Вы отключаете телефон от зарядки

Заряжено (Charged): сохраняется, когда телефон заряжен до 100%

Экран выкл (Screen off): сохраняется, когда экран Вашего телефона отключается (при активированном дежурном режиме)

Экран вкл (Screen on): сохраняется, когда экран Вашего телефона включается (при активированном дежурном режиме)

Пользовательская (Custom): сохраняется при выборе в меню опции сохранить пользовательскую метку

Текущее (Current): текущие данные

Пожалуйста, помните, что данные временных промежутков удаляются при перезагрузке. Для использования «От Отключено» после перезагрузки Вы должны подключить/отключить Ваш телефон.

Если данные события не происходят, или после перезагрузки, BBS сообщит об отсутствующей ссылке. Это не баг, так предусмотрено BBS

Экраны

Есть следующие типы статистики:

  1. Другая статистика (Other): показывается сон, пробуждения, включенный экран и другое важное время
  2. Вэйклоки ядра (Kernel Wakelocks): показываются общее время и количество вэйклоков ядра
  3. Частичные вэйклоки (Partial Wakelocks): показываются общее время и количество частичных вэйклоков
  4. Сигналы (Alarms): показываются пробуждения, вызванные приложениями или службами
  5. Сеть (Network): показывается статистика сети
  6. Статистика CPU (CPU States): показывается статистика процессора и глубокий сон
  7. Процессы (Processes): показывается время процессора (пользователь и система), потребленное процессами

Информация о пакетах (операции в приложениях): показывает разрешения и службы определенного пакета (приложения): этот экран можно открыть нажатием значка в любом из экранов

а это возможные временные точки показа статистики (выбор «от» и «до» любых из этих точек):

Другая статистика

Группа различных индикаторов потребления батареи. Эта статистика должна всегда проверяться первой, так как она дает хорошее представление о расходе.

Обычный профиль покажет низкое соотношение «Экран вкл» к «Бодрствованию», означая, что за расход батареи несут ответственность частичные вэйклоки, не позволяющие уйти телефону в глубокий сон.

  • Глубокий сон (Deep Sleep): общее время сна телефона
  • Бодрствование (Awake): общее время, когда телефон не находился в глубоком сне
  • Экран вкл (Screen On): общее время бодрствования телефона со включенным дисплеем
  • Телефон вкл (Phone On): общее время, когда телефон находился в режиме звонка
  • Wifi вкл (Wifi on): общее время включенного Wifi
  • Wifi используется (Wifi Running): общее время, когда Wifi был подключен к SSID
  • Блютус вкл (Bluetooth On): общее время, когда был включен блютус

Частичные вэйклоки

Список показывает общее время частичных вэйклоков, вызванных приложением или службой во временной промежуток, количество вэйклоков и их значение в процентах. Значение в процентах высчитывается от общего времени работы, бодрствования или пробуждения — времени включенного экрана в зависимости от установок. Обычно значение высчитывается от времени бодрствования, что более показательно, поскольку отображает потенциал сокращения сроков времени бодрствования. Графики показывают процентное отношение в зависимости от установок (см. выше).

Даже если общее время незначительно, важно проверить количество вэйклоков. Большое количество коротких периодов пробуждений может иметь большое воздействие на время бодрствования, так как телефон использует некоторое время на пробуждение и иногда снова на переход в сон. Это не показывается данной статистикой. Например, предположим, что время пробуждения телефона и повторного перехода в сон заняло 1/2 секунды. Для вэйклока в 10 секунд результат времени бодрствования составит 11 секунд. Для 10 вэйклоков по 0,1 секунде общее время вэйклоков будет меньше 1 секунды, но время бодрствования составит 11 секунд.

Вэйклоки ядра

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

Сигналы

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

Сеть

Показываются переданные байты по приложениям и по интерфейсу сети.

Статистика CPU

Показывается время, затраченное на каждое состояние процессора (частоту), включая время глубокого сна.

Процессы

Список показывает процессы и их потребление CPU во временной промежуток. Потребление CPU выражается в использовании процессора пользователем и использовании CPU системой, оба времени показываются в общем графике и в диаграмме разными цветами.

Дежурный режим

Дежурный режим — это функция, помогающая Вам анализировать, что происходит при отключенном экране. Когда дежурный режим включен, при отключении экрана создается метка ‘экран выкл’. В конфигурации режима Вы также можете создать метку ‘экран вкл’, когда экран включается (или разблокируется). Опционно, дежурный режим оповестит Вас, когда экран включается и соотношение пробуждений больше, чем установленный порог пробуждений. Во избежание излишней обработки, длительность порога может быть установлена на отключение дежурного режима в короткие промежутки отключения экрана.

Активный мониторинг

Активный мониторинг -экспериментальная функция, предназначенная для сохранения меток в заданные настраиваемые интервалы. Перед включением активного мониторинга, пожалуйста, имейте в виду, что данная функция станет причиной определенного количества вэйклоков и работы в фоне. Функция должна быть активной только на обозначенное время, требующее сбора информации. Если Вы не понимаете, что это такое, значит, активный мониторинг — это не та функция, которую Вам надо использовать. 

Изменения

V2.2.0.0

  • Убрана необходимость в системном приложении (на устройствах с рутом)
  • Поддержка устройств без рута (необходимо применение разрешений сторонними способами)
  • Добавлена статистика датчиков — статистика «Other (Другое)» заменена на «Summary (Общее)»
  • Добавлено поле»примечание» для прикрепления заметок к дампу
  • Обновление до текущих библиотек android
  • Возможность прокручивать подробности сигналов
  • Исправление стиля и удобства использования
  • Объединение json и текста дампа в один файл
  • Исправление ошибок и сбоев
  • Переводы

V2.1.0.0

  • Поддержка Android Marshmallow 
  • Новое оформление
  • Новый виджет с обратной связью
  • Оптимизация старых виджетов
  • Новая версия системного приложения
  • Исправление обновления виджетов при включении экрана
  • Исправление ошибок, полученных через сообщения о сбоях
  • Исправления графиков на 5.1
  • Исправление диалога рейтинга
  • Исправления итогов в процессах
  • Специальные исправления вэйклоков ядра на LG G3

V2.0.0.0

  • Полностью новое и яркое, со светлой и тёмной темами
  • Полная поддержка Lolipop
  • Переводы (см. вкладку о приложении для информации об переводчиках)
  • Добавление деталей о статистике API в дамп
  • Добавление ссылки на ZIP-ы для рекавери во вкладке системного приложения
  • Добавление опции отображения/скрытия выбора меток
  • Отображение политики SELinux в меню системного приложения и в дампе
  • Попытка обхода недоступности службы BATTERY_INFO на некоторых устройствах
  • Исправление ошибок, которые могут возникнуть при обработке статистики
  • Переработка вычислений по времени и временным промежуткам: ошибок округления больше не должно быть
  • Добавление возможности сохранять дампы в формате JSON для плагина tasker
  • Удаление сортировки
  • Удаление google analytics
  • Удаление увеличения графиков

V1.16.0.0

  • Совместимость с предварительной версией L
  • Исправление проблем с лончером google (отсутствие статистики)
  • Новые круглые проценты (полосы можно установить в настройках)
  • Небольшие изменения интерфейса
  • Обновление до Dashclock 2.0 API
  • Больше нет необходимости включать рут-функции в настройках
  • Различные оптимизации производительности и памяти
  • Исправления на основе отчётов об ошибках
  • …. и многое другое

V1.15.0.0

  • Добавление поддержки статистики для Kitkat (по причине значительных изменений, внесённых Google, для полнофункциональной работы BBS на Kitkat теперь требуется рут)
  • Добавление возможности устанавливать BBS в качестве системного приложения
  • Создание заново всех значков и добавление поддержки xxxhdpi
  • Исправление обработки сигналов на 4.3+
  • Исправление сбоев, сообщённых через gplay

V1.14.0.0

  • Исправление сбоев, сообщённых через gplay
  • Добавление соответствующих разрешений для доступа su в манифесте
  • Удержание постоянной оболочки su shell для выполнения всех операций суперпользователя
  • Исправление двойного хэша частичных вэйклоков, вызывавшего сбой в вычислениях
  • Обновление библиотек до текущей версии

V1.13.4.0

  • Редизайн доступа к базе данных для поддержки разных устройств

V1.13.2.0

  • Исправление для пользователей со сбоем приложения при запуске после обновления с предыдущей версии

V1.13.0.0

  • Обнаружение и исправление проблемы с обновлением спиннера, приводившей к пустой статистике у некоторых пользователей
  • Исправление уровня батареи / напряжения в дампе
  • Несколько опечаток
  • Добавление функции «поделиться» для дампа, логката и dmesg
  • Переработка необработанной статистики
  • Обратная связь поля статистики
  • Добавление временных меток в логкат
  • Маскировка ряда данных аккаунта (персональная информация)
  • Исправление отсутствия значка для пакетов в процессах
  • Исправление отсутствия значка базы знаний
  • Добавление виджета дашклока (только Андроид 4.2.2+)
  • Добавление обработки JSON информации дампа

V1.12.4.0

  • Исправление умолчаний виджетов при чистой установке
  • Статистика для виджетов по умолчанию установлена на загрузку
  • Обновление действий очищает кэш для обеспечения точности данных
  • Исправление другой статистики (глубокий сон), отображавшейся больше чем  «от»
  • Исправление неправильных показаний статистики по умолчанию из настроек маленького виджета
  • Исправление проблем с кэшированием
  • Исправление иногда возникавшей проблемы с синхронизацией, приводившей к пустой статистике
  • Исправление проблемы с плагином tasker
  • Исправление значения «до» % батареи и напряжения, всегда показывавшей текущее значение
  • Исправление возможных сбоев и ошибок, основанное на отчётах gplay
  • Исправление ошибок, связанных с обновлением от 1.11 до 1.12 (неполные данные)

Устройства без рута

Статья описывает метод включения BBS для работы на устройствах без рута в версиях Андроид, начиная с Kitkat (на предыдущих версиях рут обязателен).

Необходима установка некоторых инструментов на Ваш компьютер, базовые знания, понимание и готовность работать и учиться.

Здесь описывается метод вставки соответствующих разрешений для доступа к статистике батареи с использованием команд ADB на компьютере. Разрешения будут предоставлены и сохранятся после перезагрузки.. 

Авторство

Авторство этого блестящего метода принадлежит пользователю  форума xda developers @Looki75. особая благодарность пользователю  xda-developers @Perseus, а также всему сообществу bbs в целом за поддержку, отзывы и постоянную помощь..

Подробности

Поздравляем, Вы дошли до того места, когда можно начать. 

Мы распишем все шаги установки. Если Вам уже известны инструменты и технологии, пожете сразу переходить к нужному Вам разделу. 

Начальные действия по данной теме и базовые шаги (для опытных пользователей) можно найти в этом посте: http://forum.xda-developers.com/show…ostcount=30632

 1. Установите необходимые драйвера ADB и саму программу на компьютер

Это может вызвать сложности, но можно пополнить свой запас знаний в этой области. Стоит почитать тут: The 15 second adb installer

 2. Включите отладку USB в разделе настроек разработчика на телефоне

Как это делается: http://www.howtogeek.com/129728/how-…n-android-4.2/

Поздравляем, теперь Вы разработчик!

3. Подключите телефон к компьютеру

Самое простое действие: подключите usb-кабель в обе стороны. Когда Вы подключаете телефон к компьютеру по ADB, в некоторых моделях всплывает сообщение о необходимости авторизации, запрашивающее Ваше разрешение на доступ компьютера к телефону. Это функция Android M.

4. Выполните команды

Необходимы некоторые пояснения и помощь в том, чтобы понять, что может пойти не так.

После того, как Вы подключили телефон по usb, разблокируйте телефон и напечатайте в командной строке: adb devices

Если появится надпись с именем устройства вместо “ waiting for device” или «no permissions» (на linux), Вы можете спокойно продолжать ввод команд. Эта команда adb devices также активирует и запрос об авторизации.

Если после команды «adb devices» нет положительного результата, проверьте:

a) на windows — правильно ли установлены специальные драйвера usb

b) на linux  — возможно, надо добавить некоторые правила udev. Может помочь вот это: http://stackoverflow.com/questions/3…vice-on-ubuntu

Если после «adb devices» получен положительный результат, можно безопасно продолжать ввод:

adb -d shell pm grant com.asksven.betterbatterystats android.permission.BATTERY_STATS

(если Вы используете версию xda-edition, команду надо изменить на adb -d shell pm grant com.asksven.betterbatterystats_xdaedition android.permission.BATTERY_STATS

)

Вуаля… спасибо за Ваше упорство, Вы этого заслужили!

    Системное приложение

(устарело, начиная с версии 2.2)

Начиная с Андроид 4.4, Google изменил доступ к статистике батареи, отозвав у приложений разрешение на доступ. Подробнее об этом изменении здесь.

Для обхода этого ограничения было использовано вспомогательное системное приложение — при установке его в /system/priv-app отсутствующие разрешения вновь предоставляются BetterBatteryStats. К сожалению, это означает, что рут, начиная с 4.4, является необходимостью.

Установка системного приложения предлагается при открытии BetterBatteryStats на устройстве 4.4+ с рутом.

В определённых случаях (разные бинарные установки или версии busybox) встроенная установка через приложение может не сработать. Для этого автор сделал ZIP-файл, который можно прошить через рекавери (проверено на TWRP и CWM). Этот ZIP можно загрузить отсюда.

После установки системного приложения Вам, возможно, надо будет переустановить главное приложение и перезагрузиться.

Оригинал

Поделиться ссылкой:

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *