在验证我的应用时,我收到错误消息
"广告标识符使用不当。您的应用包含广告标识符[IDFA] API但您尚未遵守iOS中的限制广告跟踪设置。"
我检查了"是"在准备上传广告标识符页面。我在我的应用程序中使用revmob广告和乱码分析(COCOS2D-X项目)。如何解决这个问题,我已经尝试了很多但没有成功。我使用下面的代码进入appdelegate但没有运气。
- (NSString *)identifierForAdvertising
{
if([[ASIdentifierManager sharedManager] isAdvertisingTrackingEnabled])
{
NSUUID *IDFA = [[ASIdentifierManager sharedManager] advertisingIdentifier];
return [IDFA UUIDString];
}
return nil;
}
答案 0 :(得分:8)
pod 'GoogleAnalytics-iOS-SDK', '~> 3.0.7'
。该版本之前未指定,但使用的是3.0.3。
答案 1 :(得分:3)
4月26日左右,Apple改变了他们的IDFA扫描程序。在您单击"准备上传"后,您不仅需要选中相应的复选框,而且您的代码(或您拥有的任何其他第三方库必须直接使用该类使用IDFA。
有人建议这样做:
"你可以通过用NSClassFromString(@" ASIdentifierManager")替换ASIdentifierManager的直接引用来做到这一点#34;
请勿使用此方法加载此类!新的扫描程序将专门针对此进行查找,如果找到它而不是直接引用 - Apple似乎认为跟踪标识符有一些奇怪的用法。我不能说我不同意这个决定。
要确切找到哪个库有问题可能并不容易。例如,最新的AdMob SDK直接使用该类,而不是问题的根源。
您可以找到哪个库是问题根源的一种方法是从项目中删除AdSupport.Framework并查看哪些库无法链接。这些库不是问题。看看您是否有其他广告库不要求您包含AdSupport.Framework - 这些很可能是罪魁祸首。
这听起来有点反直觉,但直接引用不是问题,该类的动态(弱)加载是。
希望这对某人有所帮助 - 我们正在把头发拉出来,直到找到问题的根源为止。
答案 2 :(得分:0)
看起来Apple现在已经恢复了这些变化。所有应用程序都会像往常一样经历:)