2016-06-26 4 views
1

Я работаю над приложением для отправки данных на сервер каждые 20 минут. Здесь я нашел одну трудность из-за android idle mode. Во время idle mode доступ к сети отключен для приложений, как указано here. Поэтому в это время я не могу связаться с сервером. Поэтому, чтобы преодолеть это, я нашел FULL_WAKE_LOCK, который выведет устройство из режима ожидания. Но на самом деле это пробудит экран, когда мы попытаемся отправить данные. Так что нам это не нужно. Поэтому я пробовал с PARTIAL_WAKE_LOCK, который разбудит процессор с выключенным экраном. Но в это время сеть также отключена. Поэтому я не могу отправить данные.Выход из режима ожидания без использования экрана бодрствования

Я много искал. Но я не нашел в этом хороших статей. Так что никто не мог бы рассказать мне программный способ выйти из режима ожидания без пробуждения экрана.

Спасибо.

ответ

1

Возможно, в последнее время. https://stackoverflow.com/users/3049065/mahendran-sakkarai, у меня была аналогичная ситуация, но для системы слежения. Через некоторое время все мои услуги, где в режиме ожидания. Я пробовал WhiteList, PartialWakeLock, не работал. ActivityRecognition и LocationServices были прекращены.

Раствор прошел регистрацию BroadcastReceiver с Intent Фильтр для PowerManager.ACTION_DEVICE_IDLE_MODE_CHANGED и вызова if(isDeviceIdleMode()) затем restart LocationUpdated. Это обходное решение заставило устройство выйти из режима ожидания.

+1

Привет, У меня такая же проблема. Не могли бы вы добавить некоторые ссылки или детали, чтобы помочь разработать? Благодаря! – forresthopkinsa