Як діагностувати розряджання акумулятора на пристрої Android за допомогою logcat?


17

Я зіткнувся з серйозною проблемою розряду акумулятора на офіційному спеціальному ПЗУ Cyanogenmod. Після обговорення на форумах спільноти було запропоновано використати logcat для усунення проблеми.

Проблема:
Кожен раз, коли я відключаю пристрій після повного заряду, він швидко розряджає акумулятор. Він втрачає майже 50% за 15-20 хвилин. Як було сказано вище, я планую використовувати logcat, щоб спробувати вирішити проблему. Планую працювати adb logcatвідразу після відключення телефону від живлення. Однак я раніше використовував logcat і мені було дуже важко витягти конкретні дані з великого результату. Я вже пройшов офіційну сторінку довідки logcat та " Читання та запис журналів", щоб дізнатися, чи зможу я знайти щось корисне, але не зміг знайти рішення для своєї проблеми.

Питання:

  • Чи все-таки варто використовувати фільтри або якусь іншу функцію, де я можу обмежити вихід logcat статистикою, яка стосується лише використання акумулятора?
  • Чи може щось на зразок adb shell dumpsys batterystats > batterystats.txtкорисніше для мене? Якщо так, то як я використовую це, щоб отримати те, що я хочу?

Графік акумулятора1 Схема використання нічого не показує Графік батареї 2

ОНОВЛЕННЯ:
BatteryStats для мого зливу тепер можна знайти тут, на Patebin. Також це моя історія історії батареї:
Історія історичних батарей



1
З графіку розряду я вважаю, що тут несправний акумулятор, ніж додаток (особливо якщо це завжди відбувається саме так). Можливо, ви спробуєте новий акумулятор (за умови, що ваш пристрій підтримує його заміну)?
Izzy

Я думаю, проблема в акумуляторі, а не в додатку. Спробуйте запозичити акумулятор у когось із того ж пристрою та перевірити, чи однакова помилка виникає з новою батареєю. Якщо це не так, вам доведеться просто отримати новий акумулятор. Якщо це все-таки є, я все одно не думаю, що це пов’язано з додатком - для зливання цього багато акумулятора знадобиться активувати GPS, мати великий мережевий трафік і робити складні процеси за один раз.
Namnodorel

@Namnodorel, на жаль, це незнімний акумулятор .. Я також думаю, що це не пов'язано з будь-яким додатком. Це або витік в ПЗУ, або щось інше. Я припускаю, що в акумуляторі немає жодних проблем, тому що, як я вже сказав, після зарядки, якщо після падіння, він працює чудово: |
Геман

Батареї, які йдуть погано, іноді можуть бути непослідовними. Акумулятор мого Galaxy S6 повільно згасає, а деякі дні - це краще, деякі дні - гірше. Моя стіка не така значна, як ваша, але я вважаю, що це не пов’язано із заявою. Ви спробували запустити телефон у безпечному режимі? Ви спробували скинути заводські налаштування (настільки жахливі та невдалі, як їх виконувати та відновлювати)?
Кайзервольф

Відповіді:


1

Ви впевнені, що це не будь-яка програма, яка розряджає ваш акумулятор? Це можна дізнатися, завантаживши телефон у безпечний режим. Прочитайте, як завантажувати телефон у безпечному режимі для отримання інструкцій. Якщо акумулятор не розряджається в безпечному режимі, спробуйте видалити встановлені додатки після того, як ви почали бачити це дивне поведінку. Якщо ви не в змозі розібратися, що це за програма, спробуйте відновити його на заводі. Крім того, якщо акумулятор стікає так швидко, це може бути несправним акумулятором.


Ну, загальна пропозиція хороша, але вона не відповідає дійсно на запитання (діагностувати використання акумулятора за допомогою logcat)
Ендрю Т.

@AndrewT. Взагалі кажучи, ви маєте рацію. Але, враховуючи, що ОП хоче вирішити цю проблему, фіксація її до logcat якимось чином робить це проблемою XY (в межах). Тож як не на 100% відповідає питання "буквально", я б сказав, що він відповідає питанню та пропонує підхід до його вирішення.
Іззі

0

Чи все-таки варто використовувати фільтри або якусь іншу функцію, де я можу обмежити вихід logcat статистикою, яка стосується лише використання акумулятора?

Звичайно. Найпростіший спосіб - використовувати монітор пристрою від Android Studio. Складнішим способом є використання інтерфейсу командного рядка для adb logcat (він використовує env var ANDROID_LOG_TAGS). Cf logcat Документація інструмента командного рядка на developer.android.com.

Чи може мені щось корисніше як adb shell dumpsys batterystats> batterystats.txt? Якщо так, то як я використовую це, щоб отримати те, що я хочу?

Витрата акумулятора відбувається в основному через деякі несподівані умови (помилки, що ведуть програми для безперервного циклу, погано виявлені пристрої, що роблять суб-оптимальними для доступу, наприклад, для читання байтів на байт замість Мб на Мб тощо). Щоб знайти такі несподівані умови, слід використовувати здатність фільтрації adb logcat. Але слід попередити, що такі інструменти в основному використовуються розробниками додатків або навіть платформ, і трактувати такі журнали може бути часом, але досить складно. Однак 100% хлопців, які досягли успіху, спробували ;-)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.