android 打开wifi 连接,android – 连接到打开WiFi

我使用以下代码连接到加密网络.但是,如果一个网络是不安全的,并且我留下空白(“”),那么它将失败.有人有个想法如何解决这个问题?此外,可以使用ssid / bssid检测网络是否打开?还是我必须用过滤器进行扫描?

public void connectToSSID(final String ssid, final String key) {

Log.i("wifimaster", "connection to "+ssid);

WifiConfiguration wc = new WifiConfiguration();

wc.SSID = "\""+ssid+"\""; //IMPORTANT! This should be in Quotes!!

wc.priority = 40;

wc.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE);

wc.allowedProtocols.set(WifiConfiguration.Protocol.RSN);

wc.allowedProtocols.set(WifiConfiguration.Protocol.WPA);

wc.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);

wc.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.SHARED);

wc.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP);

wc.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP);

wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP40);

wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.WEP104);

wc.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN);

wc.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK);

wc.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_EAP);

wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP);

wc.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP);

wc.preSharedKey = "\""+key+"\"";

wc.wepKeys[0] = "\""+key+"\""; //This is the WEP Password

wc.wepTxKeyIndex = 0;

wc.preSharedKey = "\""+key+"\"";

int res = wifiManager.addNetwork(wc);

Log.d("WifiPreference", "add Network returned " + res );

boolean es = wifiManager.saveConfiguration();

Log.d("WifiPreference", "saveConfiguration returned " + es );

boolean b = wifiManager.enableNetwork(res, true);

Log.d("WifiPreference", "enableNetwork returned " + b );

if(b)

Toast.makeText(c, c.getString(R.string.connected), Toast.LENGTH_SHORT).show();

else

Toast.makeText(c, c.getString(R.string.unconnected), Toast.LENGTH_SHORT).show();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值