返回顶部
首页 > 资讯 > 移动开发 >Android10获取唯一ID最佳做法
  • 708
分享到

Android10获取唯一ID最佳做法

Android 2022-06-06 13:06:36 708人浏览 泡泡鱼
摘要

官方文档 安卓Q中Google彻底禁止第三发app获取IMEI,获取MAC地址为:02:00:00:00:00:00。 1.使用实例 ID 和 GUID 对于实例 ID 不实用

官方文档

安卓Q中Google彻底禁止第三发app获取IMEI,获取MAC地址为:02:00:00:00:00:00。

1.使用实例 ID 和 GUID

对于实例 ID 不实用的情况,您还可以使用自定义全局唯一 ID (GUID) 对应用实例进行唯一标识。最简单的方式是使用以下代码生成您自己的 GUID。  


1.Kotlin写法
var uniqueID = UUID.randomUUID().toString()
2.Java写法
String uniqueID = UUID.randomUUID().toString();
2. 使用硬件信息拼接生成一个ID

public static String getUUID()
{ 
  String serial = null;
  String m_szDevIDShort = "55" +
        Build.BOARD.length() % 10 + Build.BRAND.length() % 10 +
        Build.CPU_ABI.length() % 10 + Build.DEVICE.length() % 10 +
        Build.DISPLAY.length() % 10 + Build.HOST.length() % 10 +
        Build.ID.length() % 10 + Build.MANUFACTURER.length() % 10 +
        Build.MODEL.length() % 10 + Build.PRODUCT.length() % 10 +
        Build.TAGS.length() % 10 + Build.TYPE.length() % 10 +
        Build.USER.length() % 10;
  try {
      if (Build.VERSioN.SDK_INT >= Build.VERSION_CODES.O) {
        serial = Android.os.Build.getSerial();
      } else {
        serial = Build.SERIAL;
      }
      //api>=9时,则用Serial号
      return new UUID(m_szDevIDShort.hashCode(), serial.hashCode()).toString();
    } catch (Exception exception) {
    //初始化
    serial = "serial-test"; 
  }
    //硬件信息拼接生成15位ID
    return new UUID(m_szDevIDShort.hashCode(), serial.hashCode()).toString();
}

欢迎关注,干货多多!
作者:慢慢的燃烧


--结束END--

本文标题: Android10获取唯一ID最佳做法

本文链接: https://lsjlt.com/news/28874.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作