Android 10 如何获取唯一值?

2020-09-21 17:44:47 +08:00
 floyda

Android 10 如何获取唯一值?

1.自己拼一个 uuid, 这个方法不是谷歌官方给予了设备唯一 ID 最佳做法(至少我在官方文档中找不到), 如果还原出厂设置, uuid 会改变, 获取到的就不是唯一值了.

参考链接: Android Q ( 10.0 )版本新特性和兼容性适配

2.随机一个唯一值, 持久化在 Shared Preferences 里(貌似也不持久-_-!)

请教各位有没有成功的经验, 或者提供一些思路?!

2512 次点击
所在节点    程序员
17 条回复
codehz
2020-09-21 18:25:48 +08:00
我记得设备管理 api 里有能获取唯一 id 的。。。不确定能存活过出厂设置
yyid
2020-09-21 19:02:05 +08:00
AndroidID
tanranran
2020-09-21 19:12:13 +08:00
OAID
Jirajine
2020-09-21 19:14:36 +08:00
如果有的话应该立即提交 bug 到 AOSP 。
cjh1095358798
2020-09-21 19:15:43 +08:00
设备唯一 id 吗? AndroidId 不行的话,就是对抗系统额
secretman
2020-09-21 19:19:43 +08:00
出厂设置真的不需要在意吧,有多少人没事会还原设置。
搞套账号系统不好吗
palxie
2020-09-21 19:21:59 +08:00
android 10 唯一且不变的值不会有了
xuxu5112
2020-09-21 19:24:17 +08:00
随机生成一个值存在 sd 卡中,下次安装读这个值,需要 sd 卡权限。
kangsheng9527
2020-09-21 19:26:15 +08:00
华为手机安卓 10 手机名就带一串唯一 id 结尾。。。连接路由器的时候可见
qiayue
2020-09-21 19:33:41 +08:00
OAID
thetbw
2020-09-21 19:35:08 +08:00
我在想怎么能不让应用获取唯一值,所以现在再用那个 vmos,有些应用直接丢进去。需要时直接删除虚拟机重新添加。
itgoyo
2020-09-21 19:43:21 +08:00
String device = Build.BOARD + Build.DEVICE + Build.SERIAL;//SERIAL 串口序列号 保证唯一值
floyda
2020-09-21 20:17:04 +08:00
@itgoyo 你这个在 Android10 上的结果是 unknown × 3
floyda
2020-09-21 20:19:39 +08:00
@xuxu5112 不一定存在 sd 卡...
adamin90
2020-09-21 21:09:38 +08:00
网卡 mac 地址
itgoyo
2020-09-22 08:55:16 +08:00
@floyda 我一加手机也是 Android10,也拿到了,是不是没有拿权限的原因
floyda
2020-09-22 10:37:50 +08:00
[Android 10 中的隐私权变更]( https://developer.android.com/about/versions/10/privacy/changes?hl=zh-cn)

`从 Android 10 开始,应用必须具有 READ_PRIVILEGED_PHONE_STATE 特许权限才能访问设备的不可重置标识符(包含 IMEI 和序列号)。`

`注意:从 Google Play 商店安装的第三方应用无法声明特许权限。`
@itgoyo

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/709123

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX