24

我的 Android 应用可以找到它所连接的 Wifi 接入点的 MAC 地址吗?

android.net.wifi.WifiInfo getMacAddress() 的文档没有提供任何细节。

请参阅http://developer.android.com/reference/android/net/wifi/WifiInfo.html#getMacAddress()

我假设这是我手机的 Mac 地址。我可以找到接入点的 Mac 地址吗?

4

4 回答 4

21

getBSSID()WifiInfo将返回远程接入点的 MAC 地址。

BSSID在这里解释。

于 2011-05-19T20:14:33.817 回答
13

以下方法将返回接入点的 MAC 地址,如果当前没有连接网络,则返回 null。

public String getMacId() {

    WifiManager wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    WifiInfo wifiInfo = wifiManager.getConnectionInfo();
    return wifiInfo.getBSSID();
}
于 2013-01-03T12:01:39.190 回答
4

从 Android Market 查看应用程序“Network Info II”。它确实显示了 MAC 地址,但我不确定这是否仍然是手机的 MAC。它还显示了 BSSID,其格式与 MAC 地址相同,因此可能就是您要查找的内容。

于 2011-05-20T23:25:58.660 回答
2

我很确定 getMacAddress() 是,正如您对本地设备所怀疑的那样。

如果您可以获取路由器/网关/接入点的 IP,那么您也许可以使用这篇文章中的代码:https ://web.archive.org/web/20160308014312/http://www.flattermann.net /2011/02/android-howto-find-the-hardware-mac-address-of-a-remote-host/进行竞标。祝你好运!

于 2011-05-19T19:47:45.180 回答