我想为我的应用程序生成 Uuid,因此我尝试了很多方法。
1) 使用 android.os.Build.SERIAL
获取设备的序列号(这将返回“未知”结果)
2)处理设备ID(我不知道如果是平板设备它会返回什么)
3)使用android.provider.Settings.Secure.ANDROID_ID
获取Android id(android 2.2版本似乎有些问题)
4) 使用java.util.UUID
生成Uuid
5)使用android.os.Build
属性生成伪Uuid
所有这些方法都显示出一些问题。所以我很困惑该选择哪个?有人可以建议我最好的方法吗?
Android Developer Blog说 android id 将是唯一的
此外,我听说设备的 Android ID 可以在恢复出厂设置或操作系统更新时更改。
那么在恢复出厂设置或操作系统更新期间是否有可能重复生成新的 Android ID?
注意:假设一个条件
我的问题是,同一制造商的同一 2 个设备型号将进行恢复或操作系统更新,会发生什么情况。Android ID 将发生变化。我想问一下这个新的ID。两个设备中的 android id 是否有可能相同?
最佳答案
每次初始化设备(重置后等)时都会生成ANDROID_ID
。它不依赖于型号、序列号等。即使您有两个相同的设备,重置后它们的 ANDROID_ID
也应该不同。该 ID 并不是特别特殊,只是它对于设备来说是全局的。您可以使用应用程序的 UUID 实现同样的效果。
关于java - Android Id 及其可靠性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13948009/