文档开发者中心
我的

安卓Q | 用户画像等功能受影响,Device ID禁用适配指南

禁止非系统应用访问Device ID以及WiFi Mac地址随机化是Android Q中两个非常重要的变更。该变更将对应用数据统计、广告推荐、用户画像等业务场景造成影响,本文将为你解读该变更的原理以及适配方案。

变更介绍

为了更好保护用户隐私,谷歌对安卓Q系统中所有获取设备识别码的接口都增加了新的权限控制:READ_PRIVILEGED_PHONE_STATE,该权限需要系统签名的应用才能申请。同时,系统默认WiFi Mac地址随机化,当设备连上不同的WiFi网络时随机生成Mac地址。以上变更意味着开发者将Device ID和WiFi Mac 地址作为用户唯一的标志符。


安卓Q | 用户画像等功能受影响,Device ID禁用适配指南



变更影响

1、影响范围

所有通过READ_PHONE_STATE权限获取Device ID的应用以及将设备WiFi Mac地址作为设备唯一标志符的应用都将受影响,预计受影响的应用比例超过90%。

2、兼容性表现

对于TargetSdkVersion<Q且没有申请READ_PHONE_STATE权限的应用和TargetSdkVersion>=Q的全部应用,获取device id会抛异常SecurityException。

对于 TargetSdkVersion<Q且申请了READ_PHONE_STATE权限的应用,通过getDeviceId接口读取的值为Null。

当设备连接到不同的 Wi-Fi 网络时,系统会随机生成不同的 MAC 地址,将无法作为用户唯一标志。

3、受影响的业务场景

所有依赖Device ID以及固定Mac地址数据的业务都会受到影响,如数据统计、推荐、用户历史数据记录、广告、用户画像等。

适配指导

1、参照官方文档进行适配

唯一标识符最佳方案:

https://developer.android.google.cn/training/articles/user-data-ids

Device ID变更介绍文档:

https://developer.android.google.cn/preview/privacy/data-identifiers

2、使用Android ID 代替Device ID

Android ID获取代码:

Settings.System.getString(context.getContentResolver(), Settings.Secure.ANDROID_ID);

Android ID和Device ID主要区别在于手机恢复出厂设置后,Android ID将被重置,而Device ID无法重置。

更多参考资料:

Android Q Beta开发者文档链接:

https://developer.android.com/preview

Android Q Beta镜像下载链接:

https://developer.android.com/preview/download

Android Q Beta 发布 blog:

https://android-developers.googleblog.com/2019/03/introducing-android-q-beta.html


点赞
收藏
回复
4
分享
举报
浏览14941 发布于2019-07-10 02:49未知归属地
全部评论
最多点赞
最新发布
最早发布

在同一台设备上,不同应用的 Android ID 是否相同?

2楼回复于2019-07-23 02:46 未知归属地

Android Q 上禁止了对于设备 IMEI 的获取,那么如何更好地唯一识别设备呢?

1楼回复于2019-07-23 02:46 未知归属地
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

目录 收起
变更介绍
变更影响
适配指导
了解社区公约,与您携手共创和谐专业的开发者社区。