OpenUDID 和 IDFA 比较

418 查看

iOS标识符

现今来比较下,不同情况下两种标识符的变化情况。以下试验,每种标识符均分为存于Keychain和未存于Keychain的两种情况做比较。

广告标识符(IDFA-identifierForIdentifier),是AdSupport.framework里面的。可以通过ASIdentifierManager进行获得。

// 广告标识符
NSString *idFA = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];

OpenUDID是开源的。Github地址。通过其中的方法可以获取OpenUDID

// OpenUDID
NSString *openUDID = [OpenUDID value];

比较结果如下表。

情况 IDFA(广告标识符) 存于KeychainIDFA OpenUDID 存于KeychainOpenUDID
删除应用 不会改变 不会改变,也不会被删除 不会改变 不会改变,也不会被删除
手机还原所有设置 不会改变 不会改变,也不会被删除 不会改变 不会改变,也不会被删除
手机抹掉所有数据 改变 被删除 改变 被删除
还原广告标识符 改变 原存于Keychain的数据没变化,除非重新写入 不会改变 不会改变,也不会被删除
同一设备,不同开发者的应用 不会改变 不会改变,也不会被删除 改变 如果没有重新写入keychain,则为NULL

有空再更新后续内容,先抛个结论