android.net.wifi.WifiConfiguration.KeyMgmt#android.net.wifi.WifiConfiguration.AuthAlgorithm源码实例Demo

下面列出了android.net.wifi.WifiConfiguration.KeyMgmt#android.net.wifi.WifiConfiguration.AuthAlgorithm 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

private WifiConfiguration createWifiInfo(String SSID, String Password,
		WifiCipherType Type) {
	WifiConfiguration config = new WifiConfiguration();
	config.allowedAuthAlgorithms.clear();
	config.allowedGroupCiphers.clear();
	config.allowedKeyManagement.clear();
	config.allowedPairwiseCiphers.clear();
	config.allowedProtocols.clear();
	config.SSID = "\"" + SSID + "\"";
	// config.SSID = SSID;
	// nopass
	if (Type == WifiCipherType.WIFICIPHER_NOPASS) {
		// config.wepKeys[0] = "";
		config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
		// config.wepTxKeyIndex = 0;
	}
	// wep
	if (Type == WifiCipherType.WIFICIPHER_WEP) {
		if (!TextUtils.isEmpty(Password)) {
			if (isHexWepKey(Password)) {
				config.wepKeys[0] = Password;
			} else {
				config.wepKeys[0] = "\"" + Password + "\"";
			}
		}
		config.allowedAuthAlgorithms.set(AuthAlgorithm.OPEN);
		config.allowedAuthAlgorithms.set(AuthAlgorithm.SHARED);
		config.allowedKeyManagement.set(KeyMgmt.NONE);
		config.wepTxKeyIndex = 0;
	}
	// wpa
	if (Type == WifiCipherType.WIFICIPHER_WPA) {
		config.preSharedKey = "\"" + Password + "\"";
		config.hiddenSSID = true;
		config.allowedAuthAlgorithms
				.set(WifiConfiguration.AuthAlgorithm.OPEN);
		config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
		config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
		config.allowedPairwiseCiphers
				.set(WifiConfiguration.PairwiseCipher.TKIP);
		// 此处需要修改否则不能自动重联
		// config.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
		config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
		config.allowedPairwiseCiphers
				.set(WifiConfiguration.PairwiseCipher.CCMP);
		config.status = WifiConfiguration.Status.ENABLED;

	}
	return config;
}
 
private WifiConfiguration createWifiInfo(String SSID, String Password, WifiCipherType Type) {
	WifiConfiguration config = new WifiConfiguration();
	config.allowedAuthAlgorithms.clear();
	config.allowedGroupCiphers.clear();
	config.allowedKeyManagement.clear();
	config.allowedPairwiseCiphers.clear();
	config.allowedProtocols.clear();
	config.SSID = "\"" + SSID + "\"";
	// nopass
	if (Type == WifiCipherType.WIFICIPHER_NOPASS) {
		// config.wepKeys[0] = "";
		config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
		// config.wepTxKeyIndex = 0;
	}
	// wep
	if (Type == WifiCipherType.WIFICIPHER_WEP) {
		if (!TextUtils.isEmpty(Password)) {
			if (isHexWepKey(Password)) {
				config.wepKeys[0] = Password;
			} else {
				config.wepKeys[0] = "\"" + Password + "\"";
			}
		}
		config.allowedAuthAlgorithms.set(AuthAlgorithm.OPEN);
		config.allowedAuthAlgorithms.set(AuthAlgorithm.SHARED);
		config.allowedKeyManagement.set(KeyMgmt.NONE);
		config.wepTxKeyIndex = 0;
	}
	// wpa
	if (Type == WifiCipherType.WIFICIPHER_WPA) {
		config.preSharedKey = "\"" + Password + "\"";
		config.hiddenSSID = true;
		config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);
		config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
		config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
		config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);
		// 此处需要修改否则不能自动重联
		// config.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
		config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
		config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);
		config.status = WifiConfiguration.Status.ENABLED;

	}
	return config;
}
 
源代码3 项目: gokit-android   文件: WifiAutoConnectManager.java
private WifiConfiguration createWifiInfo(String SSID, String Password,
		WifiCipherType Type) {
	WifiConfiguration config = new WifiConfiguration();
	config.allowedAuthAlgorithms.clear();
	config.allowedGroupCiphers.clear();
	config.allowedKeyManagement.clear();
	config.allowedPairwiseCiphers.clear();
	config.allowedProtocols.clear();
	config.SSID = "\"" + SSID + "\"";
	// config.SSID = SSID;
	// nopass
	if (Type == WifiCipherType.WIFICIPHER_NOPASS) {
		// config.wepKeys[0] = "";
		config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);
		// config.wepTxKeyIndex = 0;
	}
	// wep
	if (Type == WifiCipherType.WIFICIPHER_WEP) {
		if (!TextUtils.isEmpty(Password)) {
			if (isHexWepKey(Password)) {
				config.wepKeys[0] = Password;
			} else {
				config.wepKeys[0] = "\"" + Password + "\"";
			}
		}
		config.allowedAuthAlgorithms.set(AuthAlgorithm.OPEN);
		config.allowedAuthAlgorithms.set(AuthAlgorithm.SHARED);
		config.allowedKeyManagement.set(KeyMgmt.NONE);
		config.wepTxKeyIndex = 0;
	}
	// wpa
	if (Type == WifiCipherType.WIFICIPHER_WPA) {
		config.preSharedKey = "\"" + Password + "\"";
		config.hiddenSSID = true;
		config.allowedAuthAlgorithms
				.set(WifiConfiguration.AuthAlgorithm.OPEN);
		config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);
		config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);
		config.allowedPairwiseCiphers
				.set(WifiConfiguration.PairwiseCipher.TKIP);
		// 此处需要修改否则不能自动重联
		// config.allowedProtocols.set(WifiConfiguration.Protocol.WPA);
		config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);
		config.allowedPairwiseCiphers
				.set(WifiConfiguration.PairwiseCipher.CCMP);
		config.status = WifiConfiguration.Status.ENABLED;

	}
	return config;
}
 
源代码4 项目: WifiConnecter   文件: WiFi.java
/**
    * Fill in the security fields of WifiConfiguration config.
    * @param config The object to fill.
    * @param security If is OPEN, password is ignored.
    * @param password Password of the network if security is not OPEN.
    */
static private void setupSecurity(WifiConfiguration config, String security, final String password) {
       config.allowedAuthAlgorithms.clear();
       config.allowedGroupCiphers.clear();
       config.allowedKeyManagement.clear();
       config.allowedPairwiseCiphers.clear();
       config.allowedProtocols.clear();
       
       if (TextUtils.isEmpty(security)) {
           security = OPEN;
           Log.w(TAG, "Empty security, assuming open");
       }
       
       if (security.equals(WEP)) {
       	 int wepPasswordType = WEP_PASSWORD_AUTO;
           // If password is empty, it should be left untouched
           if (!TextUtils.isEmpty(password)) {
			if (wepPasswordType == WEP_PASSWORD_AUTO) {
                   if (isHexWepKey(password)) {
                       config.wepKeys[0] = password;
                   } else {
                       config.wepKeys[0] = StringUtils.convertToQuotedString(password);
                   }
               } else {
                   config.wepKeys[0] = wepPasswordType == WEP_PASSWORD_ASCII
                           ? StringUtils.convertToQuotedString(password)
                           : password;
               }
           }
           
           config.wepTxKeyIndex = 0;
           
           config.allowedAuthAlgorithms.set(AuthAlgorithm.OPEN);
           config.allowedAuthAlgorithms.set(AuthAlgorithm.SHARED);

           config.allowedKeyManagement.set(KeyMgmt.NONE);
           
           config.allowedGroupCiphers.set(GroupCipher.WEP40);
           config.allowedGroupCiphers.set(GroupCipher.WEP104);
           
       } else if (security.equals(WPA) || security.equals(WPA2)){
           config.allowedGroupCiphers.set(GroupCipher.TKIP);
           config.allowedGroupCiphers.set(GroupCipher.CCMP);
           
           config.allowedKeyManagement.set(KeyMgmt.WPA_PSK);
           
           config.allowedPairwiseCiphers.set(PairwiseCipher.CCMP);
           config.allowedPairwiseCiphers.set(PairwiseCipher.TKIP);

           config.allowedProtocols.set(security.equals(WPA2) ? Protocol.RSN : Protocol.WPA);
           
           // If password is empty, it should be left untouched
           if (!TextUtils.isEmpty(password)) {
               if (password.length() == 64 && isHex(password)) {
                   // Goes unquoted as hex
                   config.preSharedKey = password;
               } else {
                   // Goes quoted as ASCII
                   config.preSharedKey = StringUtils.convertToQuotedString(password);
               }
           }
           
       } else if (security.equals(OPEN)) {
           config.allowedKeyManagement.set(KeyMgmt.NONE);
       } else if (security.equals(WPA_EAP) || security.equals(IEEE8021X)) {
           config.allowedGroupCiphers.set(GroupCipher.TKIP);
           config.allowedGroupCiphers.set(GroupCipher.CCMP);
           if (security.equals(WPA_EAP)) {
               config.allowedKeyManagement.set(KeyMgmt.WPA_EAP);
           } else {
               config.allowedKeyManagement.set(KeyMgmt.IEEE8021X);
           }
           if (!TextUtils.isEmpty(password)) {
               config.preSharedKey = StringUtils.convertToQuotedString(password);
           }
       }
   }