2010-07-14 2 views
2

По умолчанию политика сна Wifi - «Сон на экране бездействия».Android Froyo and Wifi

С помощью этой политики возможно ли использовать фоновое обслуживание в более позднем периоде, чтобы разбудить Wi-Fi, используя какой-либо API?

Попробуйте следующее, но не работает: Когда моя служба фонового будирования просыпается, он вызывает «ConnectivityManager.getActiveNetworkInfo()», чтобы получить активную сеть. Поскольку беспроводная сеть отключена, я пробовал пробудить ее, используя «WifiManager.startScan» на ранее использованном Wi-Fi-соединении. Но все равно не получите Wi-Fi.

Любые идеи? Я предпочитаю не менять политику сна на «Никогда».

Благодаря Hemant

ответ

0

Там нет реальных простых решений для этого. С большой вероятностью убедитесь, что у вас есть WIFI-соединение, когда телефон/экран переходит в режим сна, лучший способ - отключить его. Для получения дополнительной информации - http://wififixer.wordpress.com/

Важно понимать, что в режиме сна Wi-Fi переходит в режим с низким энергопотреблением. Это станет сложным, чтобы программно проверить, как это может быть связано с Wi-Fi, но соединение Wifi слишком слабое или слишком медленное, чтобы завершить HTTP-запрос, и, следовательно, он истекает. Это заставит вас также проверить скорость подключения Wi-Fi, а также у вас будет активная сеть, но довольно паршивая.

Правильное обращение с экранированием при возникновении тайм-аута для HTTP-вызова, которое вы делаете, делает его доступным для использования, но в конечном итоге единственный способ постоянно поддерживать фоновый поток для получения данных возможен только тогда, когда у вас есть режим Wifi, чтобы никогда не спать ,

Это сложно и не лучший способ узнать. :-(Это единственный путь, который я нашел, который достаточно надежный.