26

除了用户手动重置之外,有没有人观察到其他会导致 ADID 重置的事情?OTA 操作系统升级?iTunes 恢复?

4

3 回答 3

85

(对advertisingIdentifier和的影响identifierForVendor,在装有 iOS 6.0.1 和 iOS 6.1.3 的 iPhone 3GS 和装有 iOS 6.1.3 和 iOS 7.0.0 的 iPhone 4S 上进行测试)

  • iOS设置应用程序中的“重置所有设置”
    无效

  • iOS 设置应用程序中的“抹掉所有内容和设置”
    同时重置advertisingIdentifieridentifierForVendor.

  • 通过 iTunes 恢复设备
    会同时重置advertisingIdentifieridentifierForVendor

  • 如果这是具有特定团队 ID 的最后一个应用程序,则从设备中删除应用程序会
    重置。identifierForVendor

  • 更新应用程序(自动或通过 App Store)
    无效

  • 根据文档,通过 TestFlight 或 Ad-Hoc 更新应用程序
    可能会重置.identifierForVendor

  • 启用/禁用“限制广告跟踪”
    iOS 6.0.1:无效
    iOS 6.1.3:重置advertisingIdentifier.

  • 系统更新 OTA (iOS 6.0.1 to iOS 6.1.3)
    无效

  • 系统更新 OTA(iOS 6.1.3 到 iOS 7.0.0)在某些情况下
    重置。identifierForVendor(1)

  • 通过 iTunes 进行系统更新(iOS 6.1.3 到 iOS 7.0.0)在某些情况下会
    重置。identifierForVendor(1)

  • iOS 设置应用程序中
    的“重置广告标识符”重置advertisingIdentifier. 如果某些正在运行(或暂停)的应用程序已经请求了一个advertisingIdentifier,它们将无法检索新的应用程序,直到它们被停止并重新启动。

  • 通过 iTunes 备份
    无效

  • 通过 iTunes 恢复备份(到同一设备)
    恢复备份的设置,包括advertisingIdentifieridentifierForVendor. 注意:如果您在恢复之前删除了多个具有某个 Team ID 的应用程序,则在identifierForVendor您重新安装具有您已安装的该 Team ID 的所有应用程序并再次删除它们之前,该应用程序将永远不会再次重置。这似乎是一个错误。

  • 通过 iTunes 恢复备份(到不同的设备)
    重置advertisingIdentifieridentifierForVendor


(1) 据我了解,App Store 中的应用程序不应该发生这种情况。它似乎与应用程序的 bundleID 中的组件数量和相应的配置文件有关:iOS 7 App Release Notes about App Deployment
在我的测试中,identifierForVendor具有 4 个组件的应用程序确实发生了变化(对于具有开发人员或企业分发配置的版本配置文件),但对于具有 3 个组件的组件没有更改。

于 2013-05-21T22:59:14.997 回答
4

两种情况:

  • 手动选择“重置广告标识符”。但如果应用程序在后台运行,则标识符将保持活动状态,直到应用程序重新启动。
  • 手动选择“重置所有内容和设置”。

备份、操作系统升级、应用重新安装或选择“限制广告跟踪”不会重置标识符。

AFAIK您可以将供应商ID和广告ID发送到服务器,当用户使用“重置广告标识符”重置广告ID时,您可以将新的与旧的匹配,因为供应商ID仍然存在。不知道苹果打算如何阻止这种情况。

于 2013-05-15T12:57:04.913 回答
1

Apple 没有官方的、明确的清单。该文档仅说明:

这个标识符可能会改变——例如,如果用户擦除了设备——所以你不应该缓存它。

苹果没有提供任何进一步的细节。众所周知,重置设备会更改 ADID,就像用户自己手动重置它一样(此功能可用,因此 iOS 6.1+)。我找不到任何暗示操作系统更新会重置标识符的东西。

当然,其他未记录的行为可能会重置标识符,但我找不到其他任何东西。

于 2013-05-15T12:57:08.603 回答