美文网首页
Android10获取不了deviceId解决方案

Android10获取不了deviceId解决方案

作者: zzh0123 | 来源:发表于2020-08-07 15:45 被阅读0次

使用wlan mac地址作为设备唯一标识,wlan mac可以理解为无线网卡的id,硬件烧录好的,不可更改,唯一

  1. Android版本 >= Android10
    // 添加权限
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission Android:name="android.permission.ACCESS_NETWORK_STATE" />

    // 无线网开关必须打开,不一定连接wifi
    // 先判wifi是否打开
     if (isWifiOpened() == true) { //如果已经打开
      String macAddress =  PackageUtil.getMacAddress();        
     } else {
       // 提示wifi没打开                    
     }

    private boolean isWifiOpened() {
        WifiManager wifiManager = (WifiManager)       
        getApplicationContext().getSystemService(Context.WIFI_SERVICE);
        return wifiManager.isWifiEnabled();
    }
  1. Android版本 < Android10, (Android 7,8,9用虚拟机验证的)
// 添加权限
 <uses-permission android:name="android.permission.INTERNET" />
 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
 <uses-permission Android:name="android.permission.ACCESS_NETWORK_STATE" />
  // 无线网开关不用打开 
   String macAddress =  PackageUtil.getMacAddress();    

官方给出的解决方案

UUID解决方案

相关文章

网友评论

      本文标题:Android10获取不了deviceId解决方案

      本文链接:https://www.haomeiwen.com/subject/zovfdktx.html