Android10获取唯一ID最佳做法
短信预约 -IT技能 免费直播动态提醒
官方文档
作者:慢慢的燃烧
安卓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();
}
欢迎关注,干货多多!
作者:慢慢的燃烧
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341