Отладка блокировок пробуждения локально

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

Следующие инструменты помогут вам отладить или оптимизировать ваши блокировки пробуждения:

  • dumpsys предоставляет информацию о состоянии системных служб на устройстве.
  • В результате трассировки системы создается файл трассировки, который можно использовать для создания системного отчета.
  • Инспектор фоновых задач Android Studio помогает отслеживать блокировки пробуждения, включая блокировки пробуждения, которые могут быть получены такими библиотеками, как WorkManager.

дампсис

dumpsys — это инструмент, работающий на устройствах Android и предоставляющий информацию о системных службах устройства.

Следующая команда особенно полезна для отладки блокировок пробуждения:

  • adb shell dumpsys batterystats предоставляет подробную историю блокировок пробуждения, удерживаемых каждым приложением. Для получения дополнительной информации см. документацию по диагностике батареи dumpsys Inspect .

Системная трассировка

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

Для получения информации о том, как начать, см. это краткое руководство по трассировке системы . Вы также можете посмотреть это видео о повышении эффективности работы батареи Android .

Инспектор фоновых задач

Для мониторинга блокировок сна, будильников и заданий можно использовать инспектор фоновых задач Android Studio.

В частности, библиотека WorkManager использует JobScheduler для планирования и выполнения заданий. Пока эти задания выполняются, они удерживают блокировку пробуждения, которая приписывается приложению. Вы можете использовать Background Task Inspector для мониторинга рабочих процессов и заданий, которые выполняются в фоновом режиме, и просмотра подробностей об их работе.