0%

详解设备ID

OAID

OAID全称是Open Anonymous Device Identifier,中文名是匿名设备标识符。

OAID是一种非永久性设备标识符,最长64位,在系统首次启动的时候生成。

因此OAID可在保护用户个人数据隐私安全的前提下,用于向用户提供个性化广告,用户统计,同时三方监测平台也可以向广告主提供转化归因分析。

OAID获取不需要权限。

为什么要用OAID

OAID是由中国信息通讯研究院号召,移动安全联盟(MSA)联合终端厂商(手机厂家)推出的团体标准,最具权威性。

因为Android Q(Android 10)操作系统禁止了非系统级应用对于设备识别码(IMEI、Device ID)的访问与获取,同时还默认配置WiFi Mac地址随机化,将导致开发者不能继续使用Device ID和WiFi Mac 地址作为设备唯一的标识符,强依赖于上述信息的数据业务,如广告追踪、归因、用户画像、数据统计等也将因此受到影响。

简单说就是Android 10获取不到IMEI(International Mobile Equipment Identity,国际移动设备识别码)、MAC等设备信息,但是很多的业务情况是需要一个用户唯一标识的,所以我们自己就弄一个呗。

OAID的3种重置情况

发生几种情况发生时,OAID重置:

  • 用户在系统设置中手动重置,匿名设备标识符将重置;
  • 移动智能终端恢复出厂设置时,匿名设备标识符将重置;
  • 匿名设备标识符自身可定期重置;

用户还可以自主关闭匿名设备标识符,关闭后返回值的值是NO。

厂商 版本
小米 MIUI10.2 及以上
vivo FuntouchOS 9 及以上
华为 全版本
OPPO Color OS 7.0 及以上
Lenovo ZUI 11.4 及以上
华硕 Android 10 版本
魅族 Android 10 版本
三星 Android 10 版本
努比亚 Android 10 版本
中兴 Android 10 版本
Freeme OS Android 10 版本

一些老的设备且没有经过系统更新的不支持。

通用ID方案

通用ID就是给每个设备生成一个唯一的ID,而且这个ID要系统级别的,系统级别的意思是ID不随应用不同而改变(移动设备标识分为两类,应用级别和系统级别,要作为唯一标识需要的是系统级别的

通用ID的要求是唯一性,稳定性。