WifiManager wifiManager = (WifiManager) MainActivity.this
.getSystemService(Context.WIFI_SERVICE);
if (!wifiManager.isWifiEnabled()) {
wifiManager.setWifiEnabled(true);
}
while (!wifiManager.isWifiEnabled()) {
SystemClock.sleep(100);
}
WifiConfiguration conf = new WifiConfiguration();
conf.SSID = "\"" + networkSSID + "\"";
conf.preSharedKey = "\"" + networkPass + "\"";
// 连接公网时设置如下
// conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40)
//如果是WEP的加密协议,就用如下设置
//conf.wepKeys[0] = "\"" + networkPass + "\""
//conf.wepTxKeyIndex = 0
//conf.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE)
//conf.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40)
wifiManager.addNetwork(conf);
List<WifiConfiguration> list = wifiManager.getConfiguredNetworks();
for (WifiConfiguration i : list) {
Log.d(TAG, "ssid" + i.SSID);
if (i.SSID != null&& i.SSID.equals("\"" + networkSSID + "\"")) {
Log.d(TAG, networkSSID + "------" + networkPass);
wifiManager.disconnect();
wifiManager.enableNetwork(i.networkId, true);
boolean reconnect = wifiManager.reconnect();
if (!reconnect) {
Intent intent = new Intent(getApplicationContext(),ErrorActivity.class);
startActivity(intent);
finish();
}
}
}