我正在运行一个小型应用程序,该程序通过WifiManager.startScan()/ WifiReceiver扫描可用的WLAN网络。一旦检测到特定的开放网络,我就会尝试通过调用以下代码连接到该网络:

WifiConfiguration wifiConfig = new WifiConfiguration();
wifiConfig.BSSID =result.BSSID; // BSSID of detected network
wifiConfig.priority = 1;
wifiConfig.allowedKeyManagement.set(KeyMgmt.NONE);
wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
wifiConfig.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
wifiConfig.status=WifiConfiguration.Status.ENABLED;

int netId = scanData.wifiManager.addNetwork(wifiConfig);
scanData.wifiManager.enableNetwork(netId, true);

奇怪的是:在我的平板电脑和其他一些智能手机上,Android崩溃了!需要明确的是:不是我的应用程序失败,整个设备会重新启动!那么,这可能是什么原因呢?有人知道解决此问题的方法吗?还是我连接网络的方法有问题?

谢谢!

尔米

最佳答案

好的,似乎此问题无法通过Android App本身解决,因为这是底层固件的问题。这些cr脚的Archos数位板之一(通常是垃圾桶)出现了此问题。完全相同的代码现在可以在Motorola Xoom 2上正常运行。

10-05 17:44