2013-06-21 50 views
1

任何人都經歷了一個問題,在的Android WiFiManager - 偶爾拋出錯誤時setWiFiEnabled使用

I/WifiManager(22480): setWifiEnabled : true 
E/WifiManager(22480): java.lang.Throwable 
E/WifiManager(22480): at android.net.wifi.WifiManager.setWifiEnabled(WifiManager.java:959) 

我似乎有或關閉Wi-Fi無線電通過Android開啓時,這種情況發生命中/缺失蜜蜂。它被用於下面的功能:

public static void manageWiFiRadio(Context context, String onoff) 
{ 
    Log.d(TAG, "managerWiFiRadio(context, " + onoff + ")"); 
    try 
    { 
     wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); 
     Thread.sleep(250); 
     if (onoff == "on") 
     { 
      if(!wifiManager.isWifiEnabled()) 
      { 
       Thread.sleep(250); 
       wifiManager.setWifiEnabled(true); 
      } 
      else Log.d(TAG,"WiFi is already" + onoff); 
     } 
     else if(onoff == "off") 
     { 
      if(wifiManager.isWifiEnabled()) 
      { 
       Thread.sleep(250); 
       wifiManager.setWifiEnabled(false); 
      } 
      else Log.d(TAG,"WiFi is already" + onoff); 
     } 

    } 
    catch (Exception e) {Log.d(TAG, "There was an exception in wifi e:" + e);} 
    wifiManager = null; 
} 

我加了上面的睡眠調試,但只降低了繁殖率。

對於測試,我已經在Sprint三星Galaxy S III和Sprint HTC Evo 4G上執行了這個操作,兩者都遇到了這個問題。當錯誤被拋出時,它會被捕獲到Android操作系統中,但Wi-Fi無線電不會改變狀態。

+0

我看到了同樣的錯誤,三星注3設備上,當我嘗試通過代碼或通過系統CONFIGS使圈養。你有沒有找到更多的答案? –

回答

0

變化

Thread.sleep(250); 
wifiManager.setWifiEnabled(false); 

wifiManager.setWifiEnabled(false); 
Thread.sleep(250); 
+0

我嘗試了所有常見的變化,時間等等。它沒有任何區別。 – Falcon165o