本文主要是介绍关于IDFA的使用和报错,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
更多iOS 学习知识,总结尽在 的墨科技:传送门
iOS提交审核:您的 App 正在使用广告标识符 (IDFA)
IDFA(identifierForIdentifier)
广告标示符,适用于对外:例如广告推广,换量等跨应用的用户追踪等。
是iOS 6中另外一个新的方法,提供了一个方法advertisingIdentifier,通过调用该方法会返回一个NSUUID实例,最后可以获得一个UUID,由系统存储着的。不过即使这是由系统存储的,但是有几种情况下,会重新生成广告标示符。如果用户完全重置系统((设置程序 -> 通用 -> 还原 -> 还原位置与隐私) ,这个广告标示符会重新生成。另外如果用户明确的还原广告(设置程序-> 通用 -> 关于本机 -> 广告 -> 还原广告标示符) ,那么广告标示符也会重新生成。关于广告标示符的还原,有一点需要注意:如果程序在后台运行,此时用户“还原广告标示符”,然后再回到程序中,此时获取广 告标示符并不会立即获得还原后的标示符。必须要终止程序,然后再重新启动程序,才能获得还原后的广告标示符。
在同一个设备上的所有App都会取到相同的值,是苹果专门给各广告提供商用来追踪用户而设的,用户可以在 设置|隐私|广告追踪 里重置此id的值,或限制此id的使用,故此id有可能会取不到值,但好在Apple默认是允许追踪的,而且一般用户都不知道有这么个设置,所以基本上用来监测推广效果,是戳戳有余了。
注意:由于idfa会出现取不到的情况,故绝不可以作为业务分析的主id,来识别用户。
代码:
#import <AdSupport/AdSupport.h>NSString *adId = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
这篇文章我们来解决一个问题,关于IDFA的:
您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从 App 中移除,然后再上传您的二进制文件。
如果有,那就惨了,上两张图看看:
如果你选择了“否”:
方案一:重新下载xcode
如果你的xcode不是最新版本的,建议下载最新版本的。重新打包后,再次提交审核。
如果你的xcode不是正规渠道下载的,建议从苹果官方下载。
有朋友尝试过方案一,问题得到解决。如果解决不了,还有方案二。
方案二:检测哪里用到IDFA
首先cd到你的工程目录下,然后执行命令:
grep -r advertisingIdentifier .
果然找到了罪魁祸首,原来是SinaWeiboSDK/libWeiboSDK.a (我使用了shareSDK的分享功能)
ios9之后新浪微博分享可使用的前提是加入ADSupport.framework,打包提交后一直报您的 App 正在使用广告标识符 (IDFA)。您必须先提供关于 IDFA 的使用信息或将其从app中移除,再上传二进制文件。
找到了源头,那么接下来怎么做就简单了。
承认使用了IDFA,然后选择相应的选项。
移除SinaWeiboSDK/libWeiboSDK.a,分享还是可以成功的。
这篇关于关于IDFA的使用和报错的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!