每次运行上传到iTunesConnect中的TestFlight的测试版应用时,我都会收到新的广告标识符。 这是正常的行为吗? 它也会发生在AppStore应用程序中吗? 我正在使用广告标识符在某些上下文中标识用户及其凭据。但如果它在每次运行中都发生变化,则用户必须在每次运行中激活。
[[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
在testflight构建中,在3次运行中,我得到了,例如
ID: 3E841B61-B007-44D3-B654-6C857122301E
ID: 2EC3682A-D162-4CE6-B07A-8B73282456A4
ID: 1D8513EA-0757-4E5F-8CEE-B6C4F782E966
在调试或临时版本中不会发生这种情况。 任何人都能对此有所了解吗?
提前致谢。
答案 0 :(得分:27)
这是设计的。它始于2014年。它只会发生在TestFlight应用程序中,而不会发生在应用程序商店的生产应用程序中。不幸的是,它很难用实际的beta测试人员真实地测试一些应用程序。
在WWDC 2014演讲"User Privacy in iOS and OS X," by David Stites and Katie Skinner中,他们提到了这一点。 (此链接仅适用于Safari。)您可以在slide #8 of their slide deck中看到它。
在this transcript of the talk中,您会发现:“今年,对于TestFlight应用,每次调用API时,广告标识符都会有所不同。”