2016-01-13 25 views
1

在我的應用程序中,我獲得了所有可用的WiFi網絡並使用WifiManager.startScan()WifiManager.getScanResults()在列表中顯示它們。此外,我能夠顯示信號強度。但是, t知道如何顯示wifi是否被鎖定或沒有。在設置屏幕上,它顯示鎖定圖標的wifi被鎖定。我怎麼知道wifi是否有密碼保護?獲取WiFi連接是否被鎖定(密碼保護)

回答

1

ScanResult.capabilities

一個例子是:[WPA-PSK-TKIP+CCMP][WPA2-PSK-TKIP-CCMP][WPS][ESS]

this answer,如果你想找到解析它的方式。

基本上,如果你想獲得它是否是受保護的:

boolean isProtected = AccessPointState.getScanResultSecurity(scanResult) != AccessPointState.OPEN; 

(雖然它是不是很好用==操作符來比較字符串,這將始終返回正確的答案,因爲參考在AccessPointState是static final之一)

+0

所以我必須從ggogle項目中複製AccessPointState並添加到我的項目中? –

+0

你不需要。可能複製那一種方法和常量就足夠了。 –

+0

因此,如果掃描結果功能包含「PSK」,「WEP」或「EAP」,這意味着wifi是密碼保護的? –