標籤:android style blog color strong 檔案
1、增加許可權:
由於此應用需要擷取手機的網路資訊,wifi資訊,因此需要在AndroidManifest.xml檔案中添加相關許可權,否則會報permission deny錯誤:
1 <uses-permission android:name="android.permission.INTERNET"/>2 <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission> 3 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>4 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
2、擷取WifiManager對象:
1 WifiManager wm = (WifiManager)getSystemService(WIFI_SERVICE); //擷取wifi服務
注意:android的後台運行在很多service,它們在系統啟動時被SystemServer開啟,支援系統的正常工作,getSystemService是Android很重要的一個API,根據傳入的NAME來取得對應的Object,然後轉換成相應的服務物件,getSystemService是抽象類別的Context一個方法。
3、啟動掃描:
1 wm.startScan(); //啟動掃描。
注意:這個方法是立即返回的,應該是新啟動一個線程進行AP的掃描,所以最好等一段時間(很短時間就可以了)再擷取結果。
4、擷取掃描結果:
1 List<ScanResult> scanList = wManager.getScanResults();2 for(ScanResult scanResult : scanList){3 //對掃描結果的操作 4 String mac = scanResult.BSSID; //擷取AP的mac地址5 String ssid = scanResult.SSID; //擷取服務集標識(路由器名字)6 int rssi = scanResult.level; //wifi訊號強度,單位是dbm7 }