无需连接WiFi即可获取MAC地址

时间:2013-08-31 14:47:35

标签: android wifi mac-address

是否可以在未实际连接的情况下获取WiFi MAC地址?

假设我有Android设备“A”。 我已经开启了WiFi,因此我的Android设备现在能够检测到附近播放的WiFi SSID。

附近我有几个WiFi SSID广播如下:

  

SSID =炒作,MAC_ADDRESS = 00:39:E0:33:00   SSID = dummy,MAC_ADDRESS = 02:33:DF:39:89   SSID = bilbo,MAC_ADDRESS = D0:32:E8:97:29

如果没有实际连接到WiFi SSID bilbo,我可以拥有其MAC_ADDRESS吗?

请帮助,谢谢。

2 个答案:

答案 0 :(得分:4)

WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
registerReceiver(new BroadcastReceiver() {
        @Override
        public void onReceive(Context c, Intent intent) 
        {
           List<ScanResult> results = wifiManager.getScanResults();
           for (ScanResult ap : results) {
               Log.d(TAG, "SSID=" + ap.SSID + " MAC=" + ap.BSSID); 
           }
        }
}, new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)); 
wifiManager.startScan();

For a BSS operating in infrastructure mode, the BSSID is the MAC address of the wireless access point (WAP)

答案 1 :(得分:1)

尝试使用此bash shell获取MAC地址

cat /sys/class/net/wlan0/address

它返回adb shell下的MAC地址。