Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何以编程方式使用SSID、安全性和密码添加网络?_Android_Android Wifi_Wifimanager - Fatal编程技术网

Android 如何以编程方式使用SSID、安全性和密码添加网络?

Android 如何以编程方式使用SSID、安全性和密码添加网络?,android,android-wifi,wifimanager,Android,Android Wifi,Wifimanager,我可以使用下面的代码连接特定的网络。但是我想通过使用SSID、安全选项和密码来添加网络 public void connectToSelectedNetwork(WifiManager wifiManager, String networkSSID, String password, boolean open_secured) { try { WifiConfiguration wifiConfig = new WifiConfiguration

我可以使用下面的代码连接特定的网络。但是我想通过使用SSID、安全选项和密码来添加网络

     public void connectToSelectedNetwork(WifiManager wifiManager, String networkSSID, String password, boolean open_secured) {
        try {
            WifiConfiguration wifiConfig = new WifiConfiguration();
            wifiConfig.SSID = "\"" + networkSSID + "\"";

            if (!open_secured)
                wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
            else {
                wifiConfig.preSharedKey = "\"" + password + "\"";
                wifiConfig.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
                wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
                wifiConfig.allowedProtocols.set(WifiConfiguration.Protocol.RSN);
                wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
                wifiConfig.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
                wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);
                wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104);
                wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
                wifiConfig.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
            }


//            WifiManager wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);
//            int netId = wifiManager.addNetwork(wifiConfig);
            int netID = wifiManager.addNetwork(wifiConfig);
            if (wifiConfig.SSID != null && wifiConfig.SSID.equals("\"" + networkSSID + "\"")) {
                wifiManager.disconnect();
                wifiManager.enableNetwork(netID, true);
                wifiManager.saveConfiguration();
                wifiManager.reconnect();
            }
//            Toast.makeText(SettingsActivity.this,"position "+position+" "+netID,Toast.LENGTH_LONG).show();
//            PreviousNetworkID.add(position,netID);
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("logs " + e.toString());
        }
    }

关于这个问题要更具体一些。我正在下面添加相关图片。

哦,是的,我已经得到了