如何获得Wifi Mac地址或其他在Android 6.0中独一无二的地址

时间:2017-02-02 10:31:38

标签: android android-6.0-marshmallow android-wifi

Hello Supporters我正在处理我的应用程序,它从用户获取WiFi Mac地址。这个工作文件直到Android 6.0进入市场。现在我像02:00:00那样得到Mac等等。我也使用下面的方法来获取Wifi mac但是它返回所有设备的相同。我想在我的应用程序基于mac注册。现在我应该从Android设备中获取哪些是彼此独特的,是IP地址或其他请建议。谢谢。

on change every hour

2 个答案:

答案 0 :(得分:0)

在Android中查看以下链接,了解唯一ID。希望这会有所帮助

Click Here

答案 1 :(得分:0)

我解决了上面的问题,感谢Daniel是正确的:

public static String getMacAddr() {
try {
List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces());
for (NetworkInterface nif : all) {
    if (!nif.getName().equalsIgnoreCase("wlan0")) continue;  //instead of wlan0 i used eth0
    byte[] macBytes = nif.getHardwareAddress();
    if (macBytes == null) {
        return "";
    }
    StringBuilder res1 = new StringBuilder();
    for (byte b : macBytes) {
        res1.append(String.format("%02X:",b));
    }

    if (res1.length() > 0) {
        res1.deleteCharAt(res1.length() - 1);
    }

    return res1.toString();
}} catch (Exception ex) {
}`return "02:00:00:00:00:00";}

问题出在Android Media Box(TV's)中我们应该使用“eth0”而不是“wlan0”,而在6以上的移动设备中我们应该使用“wlan0”。谢谢。