Быстрый разряд батареи - поиск приложения будящего устройство и решение проблемы без удаления проблемного приложения
Fedor Potapenko- Прежде чем продолжить, убедитесь что имеете установленный инструмент ADB на ПК и устройстве. Если этого нет - ссылайтесь на следующее руководство:
Начало работы с инструментами Platform-Tools
В случае, если вы не знаете, какое приложение израсходует вашу батарею - для определения виновника, необходимо установить на устройство специальное ПО - BetterBatteryStats.
- Обычно приложению необходим Root доступ, однако можно выдать разрешение специальной ADB командой
adb shell pm grant com.asksven.betterbatterystats_xdaedition android.permission.BATTERY_STATS
- После чего даем системные разрешения внутри приложения. Готово, приложение запустилось.
Теперь, для определения изрядно употрябляющего батарею приложения, необходимо оставить устройство в режиме покоя на пол часа. Этого времени должно хватить для сбора необходимой информации.
- По прошествию времени, выберите раздел Partial Wakelocks в приложении.
В моем случае, сервис LagunaServiceHandler приложения Snapchat будит устройство во время сна.
- Используем App inspector для нахождения имени пакета
- Прописываем следующую ADB команду:
adb shell cmd appops set com.snapchat.android WAKE_LOCK ignore
Вместо com.snapchat.android вставляем свое имя пакета.
Понятное дело, что в режиме сна, уведомления после такой операции с этого приложения не будут приходить, по этому понимайте, что делаете.
- Если необходимо вернуть все на место, можно прописать команду
adb shell cmd appops set com.snapchat.android WAKE_LOCK allow
Или же просто переустановить приложение.