2013-05-08 107 views
4

我最近有一个应用因为原因被拒绝 - 非公开API的用法:应用不允许访问UDID,并且不能使用uniqueIdentifier方法的UIDevice。请更新您的应用和服务器,将用户与iOS 6中引入的供应商或广告标识符相关联。因非公开API使用而被拒绝(谷歌解析iOSv2)

我在此应用中使用了谷歌分析iOS v2,是否会导致此问题?

回答

4

由于新的UDID策略,我的应用也被拒绝了。就我而言,我使用AdMob和步骤来解决这个问题:

  • AdMob的更新到最新版本(谷歌警告我说,我的应用程序将被拒绝,如果我会尝试1日以后提交它可能)。

  • 转至Xcode>管理器>项目> YourProject>删除(派生数据)。

  • 产品>清洁。

完成这些步骤后,我提交了程序,现在正在等待审核(之前这些步骤苹果拒绝了我此刻的应用程序上传后收到的)。

希望它有帮助!

+0

希望它也适用于我.. :)让我试试.. – Richa 2013-05-09 11:27:13

2

而且,还有一点,如果你的代码中使用

[UIDevice currentDevice].uniqueIdentifier; 

必须chenge到

// Get UUID value 
NSUUID *uuid = [NSUUID UUID]; 

// Convert UUID to string and output result 
NSLog(@"UUID: %@", [uuid UUIDString]); 

输出看起来是这样的:

UUID: A84AFC3C-B3A7-31C7-B3E9-234AF423C6B1 
+0

不,我没有使用[UIDevice currentDevice] .uniqueIdentifier;方法在我的代码外部。可能是它写在我在项目中使用的静态库中的某处。 – Richa 2013-05-11 05:58:41

2

要找到找出正在使用的方法,使用terminal和cd到项目的根目录并运行以下命令;

find . | grep -v .svn | grep "\.a" | grep -v "\.app" | xargs grep uniqueIdentifier

这会再告诉你什么是使用它。更新和/或删除您的代码和/或使用它的任何库。

+0

这就像一个魅力!谢谢! – rocky 2013-06-19 21:24:20

0

对于Google AnalyticsSDK 2.0b4和UDID参考,只需从项目中完全删除libGoogleAnalytics_debug.a,清理,重新编译并再次提交。

1

我有同样的问题...我删除了问题库,在我的情况下adMob库。但要注意检查文件夹内部,你还没有旧图书馆,那是我的问题。祝你好运

0

你需要与其他方法来替代

[[UIDevice currentDevice] uniqueIdentifier] 

。 请参阅this url 它对我有用。

相关问题