1、首先要判斷當(dāng)前wifi是否是已經(jīng)保存過的,包括當(dāng)前正在連接的wifi
/**
* 判斷是否連接過指定的SSID wifi信號
*/
public WifiConfiguration isExsitsInRecord(String SSID) {
if (mWifiManager == null)
return null;
List<WifiConfiguration> existingConfigs = mWifiManager.getConfiguredNetworks();
for (WifiConfiguration existingConfig : existingConfigs) {
if (existingConfig.SSID.equals("\"" + SSID + "\"")) {
return existingConfig;
}
}
return null;
}
2、在通過獲取到的networkId,通過removeNetwork忘記密碼
/**
* 從已保存過的wifi密碼列表中刪除
*
* @param ssid
* @return
*/
public boolean forgetSaved(String ssid) {
WifiConfiguration exsitsInRecord = isExsitsInRecord(ssid);
int networkId = exsitsInRecord.networkId;
boolean removeNetwork = mWifiManager.removeNetwork(networkId);
boolean saveConfiguration = false;
if (removeNetwork) {
saveConfiguration = mWifiManager.saveConfiguration();
}
return saveConfiguration;
}
此方法好像只在高版本中能正常使用,親測7.1版本可用