本文介绍 Android 系统中 utdid 相关的常见问题。
utdid 不变和变化的具体条件是什么?
手机系统或 App 重启
无 SD Card 权限,utdid 状态 不变。
有 SD Card 权限,utdid 状态 不变。
删除 App 重新安装
无 SD Card 权限,utdid 状态 变化。
有 SD Card 权限,utdid 状态 不变。
设备双清,SD Card 数据被清除,重新安装
无 SD Card 权限,utdid 状态 变化。
有 SD Card 权限,utdid 状态 变化。
杀死进程后 utdid 发生了什么变化?
原因分析:
utdid 是应用软件 ID,每次启动时都会取应用外的 utdid 和应用内的 utdid 进行比对, 并使用生成时间比较早的 ID。
首次安装时,没有外存储权限,所以无法获得应用外的 utdid,而且应用内又不存在 utdid,于是会生成一个 utdid。
当应用授权后,再次启动时,由于第 1 点中的机制,会用应用外的 utdid 覆盖应用内的 utdid,导致 utdid 发生变化。
解决方法:
确保 utdid4all 的版本号不小于 1.1.5.3,因为旧版本与高版本的 Android 存在兼容问题。
该问题只出现在首次安装应用时,当外存储权限变化时,再次启动 utdid 就不会变化了。
说明
Android 6.0 版本以后,部分手机需要在弹出外存储授权页,单击确定以后才能获得外存储权限,仅声明是无法获得的。
遇到 Android 10 以后的设备 ID 不变时如何处理?
随着设备权限越来越严格,utdid 已经很难保证设备统一、固定不变。如果遇到需要强调设备 ID 不变的场景,则需要使用其它获取 ID 的方案。
文档内容是否对您有帮助?