iOS应用上传AppStore验证UUID不过的解决方法

iOS应用在上传的时候验证不通过,提示 Apps are not permitted to access the UDID and must not use the uniqueIdentifier method of UIDevice. Please update your apps and servers to associate users with the Vendor or Advertising identifiers introduced in iOS 6.......


可郁闷的是没改多少代码啊。不过肯定跟苹果最近出的政策有关系。苹果于2013年5月1日起禁止开发商在应用中使用UDID,鼓励他们采用Vendor或Adverstising Identifier作为替代。同一天,苹果将禁止不能同时支持Retina和4寸Retina的应用上架。

提示信息很明显是因为使用了UDID的原因并且明确说明了是因为使用了UIDevice的uniqueIdentifier方法,要做的就是找到使用这个方法的地方并且去掉它或者用别解决方案代替。

1、查找工程源码中是否使用了uniqueIdentifier:

    在XCode工程中直接搜索uniqueIdentifier,去掉或者用别的解决方案代替。

2、查找工程中使用的库文件中是否使用uniqueIdentifier。

    1)打开终端工具,cd到工程根目录;
    2)输入命令 find . -name "*.a",找出工程中用到的.a文件;     
    3)然后输入命令 strings ./XXX.a | grep uniqueIdentifier,有不符合UDID使用的.a文件会打印如下结果:uniqueIdentifier,将该库文件去掉(如果不能去掉则换上最新的版本或用找别的可替代该功能的库文件),同样的方法确认所有的.a库文件都没有用到UDID。



你可能感兴趣的:(iOS)