有没有人遇到过问题
I/WifiManager(22480): setWifiEnabled : true
E/WifiManager(22480): java.lang.Throwable
E/WifiManager(22480): at android.net.wifi.WifiManager.setWifiEnabled(WifiManager.java:959)
通过 android API 打开或关闭 Wi-Fi 无线电时,我似乎遇到了这种情况。它被用于以下功能:
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 Samsung Galaxy S III 和 Sprint HTC Evo 4G 上执行了此操作,两者都遇到了这个问题。当错误被抛出时,它会在 Android 操作系统中被捕获,但 Wi-Fi 无线电永远不会改变状态。