Я пишу клиентское приложение для Android, которое продолжает получать push-уведомления с сервера с использованием длинного опроса HTTP (Comet).
Я не хочу всегда сохранять WakeLock, поскольку он разряжает батарею, но яНеобходимо убедиться, что устройство может получать уведомления, даже когда оно находится в спящем режиме.
И я нашел этот вопрос:
Android: этапы / уровни сна на устройстве Android?
, где "CommonsWare" упомянул, что входящий пакетв разъеме без Wi-Fi устройство будет активировано.
Итак, мое решение выглядит следующим образом:
Client ------------------------- Server
---- Request----->
release WakeLock (Allow device to sleep)
<----Notification-- (Hopes it can wake up the device)
require WakeLock
process the notification
---- Request----->
release WakeLock
....
Но между получением уведомления и запросом wakelock существует небольшое временное окно,поэтому мой вопрос, как долго устройство будет оставаться в активном состоянии?Возможно ли, чтобы устройство вернулось в спящий режим в течение этого временного окна?