我想将我的设备连接到现有的网络WiFi时出现问题。Android连接到带有程序化Wifi配置的无线网络
情况就是这样:
我期待到现有配置的网络,如果没有我要找我建立它,然后我尝试连接的手机之一。
当使用手机界面手动构建wifi配置时,我可以找到它,然后连接到它。 但是,当我试图通过编程方式构建配置时,Android无法将手机连接到网络。
我收到以下消息:“对驱动程序的关联请求失败”。
我想知道失败的关联是否是扫描的网络和可配置网络之间的关联。我不知道为什么,所以我不知道如何解决这个问题。
编辑:我忘了说,我的WifiConfiguration是完全一样的手动创建,因为我从一些日志的conf获取信息。
EDIT2:这里是我的wificonf(网络由一个WEP密钥保护):
WifiConfiguration wifiConf = new WifiConfiguration(); wifiConf.SSID = "\"ssid\""; wifiConf.wepKeys[0] = "\"password\""; wifiConf.wepTxKeyIndex = 0; wifiConf.hiddenSSID = false; wifiConf.status = WifiConfiguration.Status.DISABLED; wifiConf.priority = 40; wifiConf.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN); wifiConf.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED); wifiConf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40); wifiConf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104); wifiConf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);//+ wifiConf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);//+ wifiConf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE); wifiConf.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP); wifiConf.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP); wifiConf.allowedProtocols.set(WifiConfiguration.Protocol.RSN); wifiConf.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
EDIT3:我已经添加的权限在AndroidManifest:
使用许可权android:name =“android.permission.ACCESS_WIFI_STATE” uses-permission android:name =“android.permission.UPDATE_DEVICE_STATS” uses-permission android:name =“android.pe rmission.CHANGE_WIFI_STATE“
我希望我的问题很清楚,也希望有人能帮助我。
你可以张贴在那里你创建它,并尝试连接到它的一些代码摘录。谢谢。 – 2012-01-16 16:49:00
[这里] [1]你会得到你的答案。它也帮助了我。 [1]:http://stackoverflow.com/questions/8818290/how-to-connect-to-a-specific-wifi-network-in-android-programmatically – 2013-06-24 11:57:38