Телефон Android, какие устройства отключены в спящем режиме

У меня есть сценарий, что устройство Android обменивается данными с FTP-сервером через службу роуминга. Я надеюсь, что ОС перейдет в правильный режим сна, установив тип WakeLock во время передачи данных, потому что он действительно не взаимодействует с конечным пользователем.

Я просматриваю спящие потоки и пытаюсь проверить, какие устройства будут отключены в спящем режиме, чтобы предотвратить отправку данных. Пока ни один официальный документ не указывает их.

Итак, не могли бы вы помочь мне проинформировать меня о вопросах: когда Android переходит в спящий режим, какие компоненты перестают работать, такие как WIFI, Data Roaming?

Большое спасибо.

2 ответа

Решение

Когда Android переходит в спящий режим, почти все отключается. Для приема текстов, вызовов, push-уведомлений и т. Д. Остаются только базовые системные приложения и радиостанции GSM/CDMA. Сервисы, все действия отключены, а ЦП переведен в режим низкого энергопотребления. В зависимости от того, что пользователь выбрал в настройках Wi-Fi, Wi-Fi-соединение может или не может переключиться на мобильные данные или полностью отключиться.

Если вы хотите продолжить обработку, но не хотите, чтобы экран взаимодействовал с пользователем, вы должны получить PARTIAL_WAKE_LOCK, в котором экран и клавиатура выключены, но процессор включен. Тем не менее, не забудьте снять блокировку после того, как вы закончите, как PARTIAL_WAKE_LOCK это единственная из четырех блокировок пробуждения, в которой процессор будет работать до тех пор, пока вы не отпустите его или ваше приложение не будет убито. Забыв освободить блокировку от пробуждения, вы сильно расходуете батарею пользователя.

Когда пользователь выключает кнопку выключения питания (горит), телефон переходит в спящий режим.

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

Когда нам нужен только процессор и другие вещи, мы используем PARTIAL_WAKE_LOCK, который идеально подходит для вашего сценария. Погода эта блокировка обычно используется в приложениях, таких как mp3-плеер

Поскольку вы хотите передавать данные здесь, в этом режиме, вы должны переопределить уже заданные методы из класса PowerManager, в частности, разрешив включение некоторых функций в этом режиме.

Другие вопросы по тегам