iOS 系统中的各种设备识别码都是什么?IDFA 是什么?
iOS系统包含多种设备识别码:UDID(唯一且终身不变,但已被禁止读取)、UUID(基于应用生成,卸载重装会变)、MAC地址(物理地址,已被封杀)、OpenUDID(第三方方案,全删除后重置)、IDFA(广告标示符,用户可重置或限制跟踪)、IDFV(同一开发商应用共享,不同开发商不同)。
在iOS开发中,设备识别码是个老生常谈但又容易混淆的话题。苹果出于隐私保护的考虑,不断收紧对设备唯一标识的访问权限,而开发者们也在各种标识之间寻找平衡。今天就来掰扯掰扯iOS系统里常见的几种设备识别码,看看它们各自是什么角色。
第一个要说的就是UDID(Unique Device Identifier)。顾名思义,它曾经是苹果iOS设备的“身份证”,由40个字符的字母和数字组成,唯一且终身不变。不过,随着用户隐私意识的觉醒,苹果早已禁止开发者读取这个标识了——说白了,这条路已经堵死了。
第二个是UUID(Universally Unique IDentifier)。它跟设备本身没关系,而是基于单个应用程序生成的。只要用户没有彻底删除这个App,UUID就会一直保持不变。但一旦用户删了App再重装,UUID就变了。这意味着什么呢?如果你依赖UUID来识别用户,那用户卸载重装后,之前积累的数据基本就抓瞎了——这是它最让人头疼的地方。
第三个是MAC地址。它本质上是网卡的物理地址,用来在网络中定位设备。因为MAC地址是硬件决定的,理论上固定不变,所以苹果同样封杀了它的读取权限——隐私保护嘛,可以理解。
第四个是OpenUDID。这不是苹果官方出品,而是第三方搞出来的替代方案,用来弥补UDID被禁后的空缺。但它的短板也很明显:如果你把设备上所有集成了OpenUDID SDK的App都删干净(比如恢复出厂设置),那OpenUDID就会重新生成,数值跟之前完全不同——相当于变成了一台新设备。
第五个是IDFA(Identifier for Advertising),也就是广告标示符。它是苹果从iOS 6开始引入的,专为广告追踪而设计。简单理解,它就是iPhone的一个临时身份证——注意是“临时”,因为用户可以随时更换。比如在「设置」-「通用」-「还原」-「还原位置与隐私」里操作一下,IDFA就变了。此外,从iOS 10开始,用户还能开启“限制广告跟踪”,一旦勾选,开发者就读不到IDFA了。这个标识符主要用于跨应用的用户追踪,比如广告推广、换量这些场景,同一设备上所有应用获取到的IDFA都是一样的。

最后一个是IDFV(Identifier for Vendor)。Vendor指的是同一个开发者账号下的应用。举个例子,如果知乎有“知乎”和“知乎日报”两个App,它们都来自同一个开发商(com.zhihu.app1 和 com.zhihu.app2),那么在同一个设备上,这两个App获取到的IDFV是一样的。但如果是不同开发商的应用,哪怕运行在同一台设备上,IDFV的值也不同。这个标识主要用于同一开发商内部的应用间数据共享或追踪,相对而言更稳定一些。
Windows 10 是一款微软推出的经典操作系统,拥有硬件兼容性与多任务处理能力。它更偏向把系统状态查看和常用调节动作放在一起,适合需要持续观察和微调设备状态的场景。
极度公式是一款跨平台专业LaTeX公式识别编辑软件,支持OCR公式识别和多平台编辑。和使用说明,避免使用,享受完整功能与稳定支持。做扫描整理、文字提取和表格转换时,它能把识别后的处理步骤接得更顺,资料录入这类场景会省下不少时间。
















