Стандартна ситуація — телефон раптом став розряджатися швидше, ніж повинен, а статистика в налаштуваннях точну інформацію не дає. Однак для Android є потужний інструмент для аналізу, які програми, коли і наскільки розрядили акумулятор, що виводить повну статистику використання акумулятора, який будує красиві графіки та дає всю інформацію про wakelock-ах (події, які будять телефон). Називається цей інструмент Battery Historian Tool.
Для того, щоб скористатися ним, спочатку потрібно включити режим розробника. Для цього потрібно зайти в Налаштування> Про телефон> кілька разів натиснути на «Номер збірки» (точне число раз буде виводитися в нижній частині екрана). Тепер перейдіть в Налаштування> Для розробників і включіть налагодження по USB. Тепер трохи нижче з’явиться пункт «Звіт про помилку» — натискаємо на нього і вибираємо «Інтерактивний звіт»:
Все, тепер почекайте, поки звіт створиться, і перекиньте його на ПК (через меню поділитися, наприклад). Тепер потрібно дістати зі звіту потрібні дані. Вихідні тексти Battery Historian доступні за посиланням, однак можна скористатися і готовим сервером — він доступний тут. Правда, варто враховувати те, що в звіті багато особистої інформації, і, хоча творець сервера запевняє, що не збирає особисті дані, вирішувати вам — вірити йому чи ні. Звіт можна завантажити у вигляді .txt або .zip файлу, а дані зі звіту в результаті виглядають так:
Ну і найголовніше питання — як працювати з отриманими даними? Відкриваємо графік — він буде виглядати якось так:
Бачимо, що о 6 годині екран був вимкнений, але батарея розряджалася швидко: в цьому місці видно великий partial wakelock «net_scheduler», який і був причиною пробудження телефону. Переходимо в розділ Userspace partial wakelock на вкладці System і шукаємо схожий вейклок. У додатку YouTube якраз є такою — ось ми і знайшли причину пробудження.
Способів позбутися від нього кілька:
- Подивитися, які налаштування самого додатка можуть змушувати його працювати в фоні і будити телефон: наприклад, якась Яндекс.Почта будить телефон кожні 10 хвилин, перевіряючи наявність нових листів. Якщо вам це критично — доведеться змиритися, немає — поставте проміжок перевірки більше, або ж взагалі включите ручну перевірку.
- Використовувати додаток Amplify для повного позбавлення від цього вейклока. Xposed для Andoid 7.0+ все ще сирий, тому спосіб підходить не всім користувачам Android.
- Видалити додаток. Так, як би смішно звучить, буває що програма написана так криво, що єдиний спосіб збільшити час автономної роботи це видалити її. Тут вже вирішувати вам, що вам важливіше — автономність vs програма.
До слова — це далеко не всі можливості Battery Historian: їх дуже багато, і для опису всіх знадобиться не одна стаття. Так що «копайтеся» в інструменті самі, і діліться найцікавішими його можливостями в коментарях.