WiFi неверный пароль возвращает true

Я пытаюсь добавить сеть Wi-Fi на моем устройстве, как это

 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();

}

Независимо от пароля, он возвращает истину.

Потом я проверил интернет соединение или не так

 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");
        }

но он также возвращает истину, если я добавил неправильный пароль.
Так что вы можете исправить меня по этому вопросу.

0 ответов

Другие вопросы по тегам