应用程序被拒绝:Google Analytics iOS SDK 2.0

13

我的项目中使用了最新的Google Analytic iOS SDK 2.0,但应用程序在几分钟内被拒绝,并显示无效的二进制文件。我收到了苹果审核团队的电子邮件,指出“不允许应用程序访问UDID,也不能使用UIDevice的uniqueIdentifier方法:”。我通过终端命令和手动方式搜索了所有包含UDID的应用程序。我上传了没有Google Analytic的应用程序,它在6天后获得了批准,但是有Google Analytic的应用程序被拒绝了。请提供更多相关细节。

我已经进行了搜索。

应用程序被拒绝,但我没有使用UDID

经过研究和以下答案,我发现苹果建议使用otool和nm工具来检查私有API,但是我无法检查UDID。

苹果如何知道您正在使用私有API?

4个回答

6

很遗憾,目前(2013年5月16日)唯一可用的SDK是2.0beta4。

自2013年5月9日以来,苹果已经自动拒绝了所有引用uniqueIdentifier的应用程序,包括Google Analytics SDK。

2.0beta4(以及之前的版本)的问题在于libGoogleAnalytics.a中,并且在其他可修改代码的地方没有出现过。


编辑

看起来UDID引用不在libGoogleAnalytics.a中,而是在libGoogleAnalytics_debug.a中。

从XCode项目中完全删除它(并从文件系统中删除该文件,以确保)不会自动拒绝该应用程序。(问题在于没有它,您将无法进行调试。)

(在2013年5月20日测试过这一点)


我还没有实现_debug库,但仍然被自动拒绝。 - Jacek Kwiecień
只要您在项目中实现了它,它就会被编译,包含在二进制文件中,这会导致拒绝。请从项目导航器完全删除它,清理并重新编译。 - Pericles
1
@Pericles 我来晚了,但如果对任何人有帮助的话,我今天(7/10/13)得到了一个更新批准。我的上一个版本是在新的UDID规则之前的4/1/13。我正在使用Google Analytics 2.0 Beta 4。我采纳了你的建议,从我的项目中删除了“libGoogleAnalytics_debug.a”,并且在提交和批准过程中没有遇到任何问题。 - kev
我找到了问题所在,是由于其他库引起的。经过研究和开发,我发现libGoogleAnalytics_debug.a包含私有API调用。 - Mangesh

3
请确认您正在使用最新版本的Google Analytics SDK。我相信它是v2.0 beta 4版本:

https://developers.google.com/analytics/devguides/collection/ios/resources

据谷歌工程师Neil Rhodes称,SDK不使用UDID进行跟踪:

https://productforums.google.com/forum/#!searchin/analytics/UDID/analytics/6_Mh2wL593s/pVkcr0lUQY4J

如果您确定已经拥有最新的Google Analytics SDK,但仍然被苹果公司拒绝,请通过iTunes Connect网站联系他们并请求帮助。

祝好运!


0

请交叉检查Google Analytics iOS SDK 2.0是否使用包含UDIDs的第三方库或类。


0

我没有使用过Google Analytics,但我使用过TestFlight。在开发时,他们使用UDID,以便在测试/开发时可以看到在谁的设备上发生了什么,并查看他们遇到的崩溃。当您部署生产版本时,您需要将UDID删除,以便苹果不会拒绝它。

您可能需要检查文档是否有类似的内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接