在Android 6.0中获取MAC地址

马辛格

我正在开发一个获取设备MAC地址的应用程序,但是由于Android 6.0的缘故,我的代码无法正常工作,给我一个不正确的值。

这是我的代码...

public String ObtenMAC()
{
    WifiManager manager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
    WifiInfo info = manager.getConnectionInfo();

    return(info.getMacAddress().toUpperCase());
}

而不是实际的MAC地址,它返回一个奇怪的代码:02:00:00:00:00:00

iu

请参考Android 6.0更改

为了从版本开始,Android为用户提供更好的数据保护,对于使用Wi-Fi和Bluetooth API的应用,Android删除对设备本地硬件标识符的编程访问。WifiInfo.getMacAddress()和BluetoothAdapter.getAddress()方法现在返回常量值02:00:00:00:00:00。

要通过蓝牙和Wi-Fi扫描访问附近的外部设备的硬件标识符,您的应用现在必须具有ACCESS_FINE_LOCATION或ACCESS_COARSE_LOCATION权限。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章