在開發wifi功能時,在網上找到的大多連線方式都是下面這樣,需要密碼時這樣沒問題,但是遇到無密碼保護的wifi就連線不上了:
private wificonfiguration createconfiguration(accesspoint ap) else
config.hiddenssid = true;
config.allowedauthalgorithms.set(wificonfiguration.authalgorithm.shared);
config.allowedgroupciphers.set(wificonfiguration.groupcipher.ccmp);
config.allowedgroupciphers.set(wificonfiguration.groupcipher.tkip);
config.allowedgroupciphers.set(wificonfiguration.groupcipher.wep40);
config.allowedgroupciphers.set(wificonfiguration.groupcipher.wep104);
config.allowedkeymanagement.set(wificonfiguration.keymgmt.none);
config.weptxkeyindex = 0;
} else if (encryptiontype.contains("wpa")) else
return config;
}
其實只要把下面兩句不要,注釋掉就可以了
config.wepkeys[0] = "";
config.weptxkeyindex = 0;
網上的demo加上這兩個都是誤導,找了半天才找到,記錄下。
另外要新增bssid時不需要加雙引號,而ssid要加雙引號,否則會導致連線失敗
config.ssid = "\"" + ssid + "\"";
config.bssid = bssid;
android之wifi開發(一)
wifi就是一種無線聯網技術,常見的是使用無線路由器。那麼在這個無線路由器的訊號覆蓋的範圍內都可以採用wifi連線的方式進行聯網。如果無線路由器連線了乙個adsl線路或其他的聯網線路,則又被稱為 熱點 在android中對wifi操作,android本身提供了一些有用的包,在android.net....
android之wifi開發(一)
wifi就是一種無線聯網技術,常見的是使用無線路由器。那麼在這個無線路由器的訊號覆蓋的範圍內都可以採用wifi連線的方式進行聯網。如果無線路由器連線了乙個adsl線路或其他的聯網線路,則又被稱為 熱點 在android中對wifi操作,android本身提供了一些有用的包,在android.net....
android之wifi開發(一)
wifi就是一種無線聯網技術,常見的是使用無線路由器。那麼在這個無線路由器的訊號覆蓋的範圍內都可以採用wifi連線的方式進行聯網。如果無線路由器連線了乙個adsl線路或其他的聯網線路,則又被稱為 熱點 在android中對wifi操作,android本身提供了一些有用的包,在android.net....