在Android中通过代码切换到指定 WiFi

权限

代码

/**

*

* @param context

* @param ssid 带引号的ssid "\"wifi_name\""

* @param password wifi 密码

* @param fuzzyMatch 是否模糊匹配ssid

*/

private void changeWifi(Context context, String ssid, String password, boolean fuzzyMatch) {

WifiManager wifiManager = getWifiManager(context);

List list = wifiManager.getConfiguredNetworks();

for (WifiConfiguration wifiConfiguration : list) {

String wifiSSID = wifiConfiguration.SSID;

boolean ssidMatch = fuzzyMatch ? wifiSSID.startsWith(ssid) : wifiSSID.equals(ssid);

if (ssidMatch) {

if (!TextUtils.isEmpty(password)) {

wifiConfiguration.preSharedKey = "\"" + password + "\"";

}

wifiManager.disconnect();

wifiManager.enableNetwork(wifiConfiguration.networkId, true);

wifiManager.reconnect();

break;

}

}

}

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐