我们正在使用NetworkInterface.getHardwareAddress()
来获取MAC地址,但正如我们从 * Android 11中的MAC地址可用性更改 * 中所看到的,现在它将不会用于Android 11。
是否有解决方案或任何指导方针?
我们正在使用NetworkInterface.getHardwareAddress()
来获取MAC地址,但正如我们从 * Android 11中的MAC地址可用性更改 * 中所看到的,现在它将不会用于Android 11。
是否有解决方案或任何指导方针?
3条答案
按热度按时间bf1o4zei1#
Android指南强制停止使用MAC地址作为标识。正如你发布的链接,还有其他替代品。如果你想在Android 11中使用MAC地址,几乎不可能获得相同的MAC地址,即使使用hafiza的代码(你忘了告诉有一些额外的清单权限)。
在我的应用程序中,我使用MAC地址验证直到Android 9.0(Pie),但现在我使用库 FingerprintJS Android,这是一个非常有用的解决方案来获取某种ID。我已经在Android 9.0,Android 10和Android 11上进行了测试,没有任何真实的问题或随机值。
rbpvctlc2#
在我的Android项目中,我使用以下代码来获取适用于所有Android版本的MAC地址。
但现在已经没有了...所以现在我们无法获得MAC地址。请参阅 * 不使用MAC地址 *。
我们使用的获取MAC地址的旧方法:
yzuktlbb3#
通过此代码,我可以在Android 11中获取MAC地址。
需要注意的是,此文件位置可能因不同设备和不同Android版本而异。因此,在不同设备和不同Android版本上测试此功能非常重要,以确保文件可访问,并且MAC地址可以正确读取。