1

我正在尝试像这样在我的设备上添加 wifi 网络

 public static boolean connectToWifi(String ssid, String password) {
    WifiConfiguration wifiConfig = new WifiConfiguration();

    wifiConfig.SSID = String.format("\"%s\"", ssid);
    wifiConfig.preSharedKey = String.format("\"%s\"", password);

    WifiManager wifiManager = (WifiManager) getContext().getApplicationContext().getSystemService(WIFI_SERVICE);
    assert wifiManager != null;
    wifiManager.setWifiEnabled(true);
    int netId = wifiManager.addNetwork(wifiConfig);
    wifiManager.disconnect();
    wifiManager.enableNetwork(netId, true);

    return wifiManager.reconnect();

}

无论密码是什么,它都会返回 true。

然后我检查了互联网连接或不这样

 ConnectivityManager connectivity = (ConnectivityManager) getContext()
            .getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo[] infos = connectivity.getAllNetworkInfo();
    for (int i = 0; i < infos.length; i++) {
        if (infos[i].getState() == NetworkInfo.State.CONNECTED) {
            //   return true;  //<--  --  -- Connected
            Log.d("ConnectionString", "Connected");
        }

但如果我添加了错误的密码,它也会返回 true。
所以你能在这个问题上纠正我吗?

4

0 回答 0