2013-05-09 61 views
13

我使用最新谷歌分析的iOS SDK在我的項目和應用程序在幾分鐘得到抑制2.0無效的二進制。我收到了蘋果審查小組發來的一封電子郵件,其中「應用程序不允許訪問UDID並且不能使用UIDevice的uniqueIdentifier方法:」。我用終端命令搜索了所有的應用程序,並且手動地搜索了UDID。我在沒有Google Analytic的情況下上傳應用,並在6天內獲得批准,但通過Google分析,它會遭到拒絕。請分享更多相同的細節。應用拒絕:谷歌Analytics(分析)IOS SDK 2.0

我已搜查

App rejected, but I don't use UDID

之後的R & d及以下回答的我發現,蘋果建議。 otool & nm工具檢查私人API,但我無法檢查UDID。

How does Apple know you are using private API?

回答

6

不幸的是,目前唯一可用的SDK(16/05/2013)是2.0beta4。 從9/05/2013起,Apple似乎會自動拒絕所有參考uniqueIdentifier的應用程序,其中包括Google AnalyticsSDK。

2.0beta4(以及絕對早期版本)的問題在libGoogleAnalytics.a以及其他地方,代碼是開放的和可修改的。


編輯

看來,UDID引用libGoogleAnalytics.alibGoogleAnalytics_debug.a

完全從XCode項目中刪除它(從文件系統刪除文件只是爲了確保)不會自動拒絕該應用程序。 (如果沒有它,你將無法進行調試)。

(測試此上20/05/2013)

+0

我沒有_debug庫中實現,但仍然得到自動拒絕 – 2013-05-23 14:09:52

+0

如果您有它實現與否並不重要。如果你在項目中使用它,它會被編譯,它被包含在二進制文件中並導致拒絕。從Project Navigator中完全刪除它,清理並重新編譯。 – Pericles 2013-05-24 14:37:17

+0

我更新AdmobSDK後我的問題消失了 – 2013-05-24 14:58:14

0

請交叉檢查谷歌分析的iOS SDK 2.0是否使用第三方庫或包含UDID的類。

0

我沒有使用谷歌分析,但我用過testflight。在開發時,他們使用UDID,以便在測試/開發時可以看到設備上發生了什麼,並查看它們的崩潰情況。當您部署生產版本時,您被告知要將UDID取出,以便蘋果不會拒絕它。

您可能需要檢查相關文檔。

3

請確認您使用的是最新版本的Google AnalyticsSDK。我相信這是V2.0 beta 4版本:

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

據尼爾·羅德,谷歌的工程師,該SDK不使用UDID追蹤:

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

如果你確信你擁有最新的Google AnalyticsSDK,並且仍然被Apple拒絕,請通過iTunes Connect網站與他們聯繫並尋求幫助。

祝你好運!