Как протестировать режим Doze на Android?

Существует старое приложение для Android, в котором работает фоновая служба 2 (Service).

Потребовалось обновить приложение с возможностью отправки данных и логирования при работе не нового DozeMode. Прежде чем вносить изменения в текущий код, я решил проверить, как теперь все будет работать. Чтобы запустить приложение, в логах вижу, что оба сервиса запущены (основной смысл сервиса считывать положение устройства, второй сервис отправляет данные на сервер). Выключить экран командой

adb shell dumpsys deviceidle step

перевести систему в DozeMode:

Nikita:app NG$ adb shell dumpsys deviceidle step
Stepped to: ACTIVE
Nikita:app NG$ adb shell dumpsys deviceidle step
Stepped to: IDLE_PENDING
Nikita:app NG$ adb shell dumpsys deviceidle step
Stepped to: SENSING
Nikita:app NG$ adb shell dumpsys deviceidle step
Stepped to: LOCATING
Nikita:app NG$ adb shell dumpsys deviceidle step
Stepped to: IDLE

Если я все правильно понимаю - IDLE как раз тот самый режим, в котором по документации все сервисы, джобшедулеры, аларм-менеджеры и прочие фоновые компоненты должны быть выключены. Но этого не происходит. Судя по логам, приложение работает как надо и DozeMode либо я что-то не так делаю.

Подскажите, может быть есть какие-то лучшие практики по тестированию DozeMode и (поздней) перезаписи с Сервисами на более современные, если есть способы каких-то действий в фоновом режиме (т.е. при закрытии приложения).

Android 6, BlackView BV6000S, приложение отсутствует в списке разрешенных из-за неоптимального времени автономной работы (белый список)

UPD: Nikita:app NG$ adb shell dumpsys deviceidle force-idle Приложение теперь принудительно переведено в режим ожидания и работает.


person abbath0767    schedule 27.03.2017    source источник
comment
где вы видели эту команду оболочки? В API-оптимизации для режима ожидания есть команда $ adb shell dumpsys deviceidle force-idle для активации режима ожидания...   -  person Opiatefuchs    schedule 27.03.2017
comment
developer.android.com/training/monitoring-device-state/   -  person Opiatefuchs    schedule 27.03.2017


Ответы (1)


person    schedule
comment
Спасибо за ответ! Я уже нашел решение, но не нашел времени, чтобы опубликовать его. Тем не менее, спасибо за ответ! - person abbath0767; 11.09.2017
comment
У меня проблема с режимом дремоты... Я хотел протестировать его, потому что мне нужно было подождать около 15 минут, чтобы естественным образом войти в это состояние... Теперь, когда экран гаснет, он сразу входит в дремлющий режим, а я этого не хочу. больше. Как я могу вернуть его? Пожалуйста, посмотрите: stackoverflow.com/q/66593485/2597775 - person sebasira; 12.03.2021
comment
файл недоступен. - person AlexS; 09.04.2021