2013-01-16 52 views
0

所以我創建了我的應用程序的大部分,但我遇到了節電應用程序干擾它的問題。我使用AlarmManager運行一段代碼,每隔x分鐘(至少1小時)向服務器發送一次信息,我遇到的主要問題是電源管理器正在禁用WiFi,因爲設備正在睡眠。AlarmManager - 喚醒WiFi?

什麼是最有效的方法來確保WiFi在喚醒時可用?它只是啓用WiFi並重新連接?

回答

0

也許您的解決方案的另一種方法是偵聽connection_changed意圖。這樣你就知道有一個連接到互聯網,你可以上傳。

您還可以啓用的WiFi,但你將需要該權限:(我想這些)

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission> 
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission> 

WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
wifi.setWifiEnabled(enabled); 

還沒有嘗試過,但是這個應該做的伎倆。

+0

問題是,我喚醒手機,獲取喚醒鎖並執行我的代碼,上傳需要在代碼執行後運行,因爲我不想經常運行應用程序(會浪費電池)。 – JamieB