如何在android中获取WIFI接口的MAC地址?

Him*_*ack 6 android android-wifi

我使用以下代码:

WifiManager wifiMgr = (WifiManager) app.getSystemService(Context.WIFI_SERVICE);
return wifiMgr.getConnectionInfo().getMacAddress();
Run Code Online (Sandbox Code Playgroud)

问题是,必须在设备中启用WIFI才能让我读取其地址.即使WIFI关闭,我怎么还能读取WIFI的MAC?

Gra*_*and 15

你不能.根据设备的不同,如果禁用wifi适配器,它实际上可能会被电子关闭,因此您无法从中读取任何信息.

来自Android开发者博客:

MAC地址

可以从设备的WiFi或蓝牙硬件中检索Mac地址.我们不建议将其用作唯一标识符.首先,并非所有设备都具有WiFi.此外,如果未打开WiFi,则硬件可能不会报告Mac地址.

  • 然后@AndroidDev继续提供更好的答案.请提供参考资料以及如何在禁用适配器的情况下读取MAC地址的示例代码.你怎么知道设置屏幕不只是显示缓存的字符串? (7认同)