0
所以我創建了我的應用程序的大部分,但我遇到了節電應用程序干擾它的問題。我使用AlarmManager運行一段代碼,每隔x分鐘(至少1小時)向服務器發送一次信息,我遇到的主要問題是電源管理器正在禁用WiFi,因爲設備正在睡眠。AlarmManager - 喚醒WiFi?
什麼是最有效的方法來確保WiFi在喚醒時可用?它只是啓用WiFi並重新連接?
所以我創建了我的應用程序的大部分,但我遇到了節電應用程序干擾它的問題。我使用AlarmManager運行一段代碼,每隔x分鐘(至少1小時)向服務器發送一次信息,我遇到的主要問題是電源管理器正在禁用WiFi,因爲設備正在睡眠。AlarmManager - 喚醒WiFi?
什麼是最有效的方法來確保WiFi在喚醒時可用?它只是啓用WiFi並重新連接?
也許您的解決方案的另一種方法是偵聽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);
還沒有嘗試過,但是這個應該做的伎倆。
問題是,我喚醒手機,獲取喚醒鎖並執行我的代碼,上傳需要在代碼執行後運行,因爲我不想經常運行應用程序(會浪費電池)。 – JamieB