我正在使用一个函数将网络添加到 wifi 列表:
public void connecttowifi(String networkSSID, String networkPass) {
try {
WifiConfiguration conf = new WifiConfiguration();
conf.SSID = "\"" + networkSSID + "\"";
conf.preSharedKey = "\""+ networkPass +"\"";
conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
WifiManager wifiManager = (WifiManager)getSystemService(Context.WIFI_SERVICE);
wifiManager.addNetwork(conf);
List<WifiConfiguration> list = wifiManager.getConfiguredNetworks();
for( WifiConfiguration i : list ) {
if(i.SSID != null && i.SSID.equals("\"" + networkSSID + "\"")) {
wifiManager.disconnect();
wifiManager.enableNetwork(i.networkId, true);
wifiManager.reconnect();
break;
}
}
} catch (Exception ex) {
Log.d("Wifi exception is",ex.toString());
}
}
在 MainActivity.java 中我写道:
connecttowifi("333","333");
网络未添加,未发现异常,有什么帮助吗?
最佳答案
也许你可以登录循环
打印所有已配置网络的 SSID
我猜这就是问题所在:
if(i.SSID != null && i.SSID.equals("\"" + networkSSID + "\""))
把“\”去掉到下面
if(i.SSID != null && i.SSID.equals(networkSSID))
希望这有帮助!!
关于java - Android 网络未添加到 Wifi 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34767560/