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

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

权限
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>

代码

    /**
     *
     * @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<WifiConfiguration> 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;
            }
        }
    }

参考:
https://stackoverflow.com/questions/8818290/how-do-i-connect-to-a-specific-wi-fi-network-in-android-programmatically

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,659评论 25 709
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,642评论 2 45
  • 懂事的孩子最可怜,他们乖得让人心疼。 在德国,在我是孩子的时候,有过这样的体验。那时我的爸爸作为一个二战的战士,被...
    系统排列阅读 266评论 0 0
  • 2016年过去了一个月, 越来越清楚自己要的是什么, 什么是爱,就是这一刻我还惦记着你。 晚安。吴悠悠
    温纯丨丨阅读 296评论 0 0
  • 一辆开往冬天的列车 那里是北方 不是去游玩 一辆开往冬天的列车 那里是哀愁 不是去享受 一辆开往冬天的列车 那里是...
    jinlei_1523阅读 245评论 0 0