2012-02-11 44 views
2

我正在嘗試開發一個非常簡單的無線管理器,您可以在其中看到可用的網絡列表,然後選擇一個,輸入密碼並連接到它。Wifimanager如何連接到WEP/WAP網絡

到目前爲止,我可以得到有關從ScanResult對象 每個網絡在這一點上,我應該實現連接的網絡列表和信息,用戶界面是在地方,但我不能連接到選定的網絡

我知道一個wificonfiguration必須設置,並通過ScanResult.capabilities我可以得到網絡的類型([WEP],[WPA-PSK-TKIP],[WPA2-PSK-CCMP-preauth])和設置AuthAlgorithmKeyMgmtGroupCipher;那麼我需要...

WifiManager.disconnect(); 
WifiManager.enableNetwork(id,true); 
WifiManager.reconnect(); 

我做錯了什麼,因爲沒有任何反應。那麼,wifi會重新啓動,但它不會連接。

什麼是執行連接的正確方法?有什麼方法可以跟蹤是否出現問題或連接是否成功?

編輯: 我不斷收到關於WifiManager.addNetwork()一個-1值顯然...我設立WifiManagerConfiguration幾乎一切,我不知道可能是什麼問題,什麼想法?

回答

1

什麼是執行連接的正確方法?

您的方法現在看起來很接近。你需要調用

addNetwork (WifiConfiguration config) 

這將增加一個配置的網絡,其默認爲禁用。然後調用

enableNetwork (int netId, boolean disableOthers) 

有什麼辦法來跟蹤的東西是否出了問題,或者如果連接成功了嗎?

您可以很容易地找出連接是否成功,reconnect()將返回true。

這都是未經測試的,通過查看官方的Android參考文檔獲得。您應該開始here

+0

是啊這幾乎是我一直在挖掘最後的日子,我沒有注意到我可以使用'reconnect()'來檢查它是否成功,thx! 我總是在'addNetwork()'上得到-1值... 我在WifiManagerConfiguration中設置了幾乎所有東西,我不知道可能是什麼問題,任何想法? – Dix 2012-02-11 19:28:29