2015-04-18 36 views
0

的WIFI ID我都檢查過類似的問題,我能走到今天:獲取的Android

WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); 
WifiInfo wifiInfo = wifiManager.getConnectionInfo(); 
String wifiInfo2 = wifiInfo.toString(); 

這將返回一個長線: SSID:WiredSSID,BSSID:等....

什麼我想打印的是手機連接的WIFI。在這種情況下,「SKYsomething」。 有沒有辦法讓手機連接到的wifi?例如:如果我將手機連接到「SKYtest」,有沒有辦法通過代碼獲取該名稱? 我試圖保持簡單直接,但我可能會錯過一些東西。 感謝您的幫助。

回答

1

嘗試:

 WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); 
    WifiInfo wifiInfo = wifiManager.getConnectionInfo(); 
    String wifiInfo2 = wifiInfo.getSSID(); 

如果你preffer這是更好的解決方案:

WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); 
    String ssid = wifiManager.getConnectionInfo().getSSID(); 

不要忘了在你的清單中添加下列權限

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"> 
+0

嗨!謝謝您的幫助!我已經在清單中添加了權限。我確實有一個問題,但我是否將此行添加到xml?我嘗試它作爲自己的代碼,我得到了這個錯誤: 無法從類型WifiInfo對非靜態方法getSSID()的靜態引用 – George

+0

嗨,我eddited我的問題,讓你更好地理解它。 – JpCrow

+0

謝謝。我設法讓它工作。問題是模擬器沒有連接到無線網絡。它使用計算機互聯網,這就是爲什麼我收到「wiredwifi」消息。在我使用了你告訴我的內容之後,我將它導出到了我的手機中,並且完美運行。非常感謝您的幫助! – George