V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
floyda
V2EX  ›  程序员

Android 10 如何获取唯一值?

  •  
  •   floyda · 2020-09-21 17:44:47 +08:00 · 2498 次点击
    这是一个创建于 1303 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Android 10 如何获取唯一值?

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

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

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

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

    codehz
        1
    codehz  
       2020-09-21 18:25:48 +08:00 via Android
    我记得设备管理 api 里有能获取唯一 id 的。。。不确定能存活过出厂设置
    yyid
        2
    yyid  
       2020-09-21 19:02:05 +08:00
    AndroidID
    tanranran
        3
    tanranran  
       2020-09-21 19:12:13 +08:00
    OAID
    Jirajine
        4
    Jirajine  
       2020-09-21 19:14:36 +08:00 via Android   ❤️ 3
    如果有的话应该立即提交 bug 到 AOSP 。
    cjh1095358798
        5
    cjh1095358798  
       2020-09-21 19:15:43 +08:00
    设备唯一 id 吗? AndroidId 不行的话,就是对抗系统额
    secretman
        6
    secretman  
       2020-09-21 19:19:43 +08:00
    出厂设置真的不需要在意吧,有多少人没事会还原设置。
    搞套账号系统不好吗
    palxie
        7
    palxie  
       2020-09-21 19:21:59 +08:00
    android 10 唯一且不变的值不会有了
    xuxu5112
        8
    xuxu5112  
       2020-09-21 19:24:17 +08:00
    随机生成一个值存在 sd 卡中,下次安装读这个值,需要 sd 卡权限。
    kangsheng9527
        9
    kangsheng9527  
       2020-09-21 19:26:15 +08:00
    华为手机安卓 10 手机名就带一串唯一 id 结尾。。。连接路由器的时候可见
    qiayue
        10
    qiayue  
       2020-09-21 19:33:41 +08:00
    OAID
    thetbw
        11
    thetbw  
       2020-09-21 19:35:08 +08:00 via Android
    我在想怎么能不让应用获取唯一值,所以现在再用那个 vmos,有些应用直接丢进去。需要时直接删除虚拟机重新添加。
    itgoyo
        12
    itgoyo  
       2020-09-21 19:43:21 +08:00
    String device = Build.BOARD + Build.DEVICE + Build.SERIAL;//SERIAL 串口序列号 保证唯一值
    floyda
        13
    floyda  
    OP
       2020-09-21 20:17:04 +08:00
    @itgoyo 你这个在 Android10 上的结果是 unknown × 3
    floyda
        14
    floyda  
    OP
       2020-09-21 20:19:39 +08:00
    @xuxu5112 不一定存在 sd 卡...
    adamin90
        15
    adamin90  
       2020-09-21 21:09:38 +08:00
    网卡 mac 地址
    itgoyo
        16
    itgoyo  
       2020-09-22 08:55:16 +08:00
    @floyda 我一加手机也是 Android10,也拿到了,是不是没有拿权限的原因
    floyda
        17
    floyda  
    OP
       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
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   993 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 20:13 · PVG 04:13 · LAX 13:13 · JFK 16:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.