2013-01-29 3 views
2

У меня есть приложение для Android, которое слушает сетевое местоположение. В некоторых сценариях он начинает выполнять некоторые задачи, но только на короткое время, а затем возвращает прослушивание сетевых изменений местоположения (NETWORK_PROVIDER).Использование аккумулятора для Android - Подробности

Когда я смотрю на экране использования аккумулятора, всегда кажется, что он много работает. My App

«Stay awake» показывает, что приложение работает много, где должно было показать, что оно вообще не работает (почти ..). По сравнению с другим популярным приложением, я вижу, что «Stay awake» показывает очень мало времени, хотя приложение находится на переднем плане, и оно вызывающе работает! Other App

Другое приложение также использует сеть, но не использует данные (данные отправлены/получены данные).

Может кто-нибудь объяснить, что означает каждый из пунктов под «Использовать детали»? Почему «бодрствовать» на самом деле не отражает, когда приложение бодрствует?

Спасибо. PB

ответ

1

«Stake Awake» здесь представляет собой время, в которое ваше приложение держало вакелон (как частичный, так и полный вакелок). Вакелокс заставляет устройство бодрствовать. Обратите внимание, что ваше устройство может переспать, даже когда приложение находится на переднем плане (технически его можно считать запущенным, но практически ничего не может сделать). В основном, если приложение просто ждет ввода пользователя и дисплей выключен, устройство может перейти в «Глубокий сон». Но любое приложение (включая фоновые приложения) может захватить wakelock и заставить систему не переходить в сон.

Используйте приложение типа «Wakelock Detector» или инструмент для профилирования, например Little Eye (отказ от ответственности: я стал соучредителем компании, создающей этот инструмент), чтобы понять, как ваше приложение использует wakelocks.

:-)

Смежные вопросы