应用因访问设备UDID而被拒绝?

4

我已经在iStore中有了我的应用程序的第一个版本。现在,我想上传下一个版本的应用程序,其中包含一些错误修复和新的用户界面。当这次提交时,在应用程序加载器中上传zip文件的过程中,它开始通过一些步骤。但是过了一会儿,我收到了一些错误信息,如下:

  1. 应用程序不应使用UIDevice的uniqueIdentifier方法

  2. 应用程序使用非公共API。因此要求我删除这些并重新上传。

所以针对第一个问题,我开始分析我的代码并不使用UDID方法。一些S.O问题建议,甚至第三方代码也可能使用此方法。然后我使用了以下命令

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

查找并显示了两个API-Google Analytics和Paypal(MECL)。GA现在没有在我的应用程序中使用,所以我将其删除了,但我需要Paypal功能。那么我该如何从这个API中解决这个问题呢?

然后针对第二个问题,我在我的应用程序中使用以下API:FBConnect、XML解析器、PegexKitLite、ASIHTTPRequest、iCarousel、JSON、MECL(Paypal)、Reachability、ZBarSDK和Google Analytics。在这些API中,我找不到哪个是非公共API。

请分享您的想法。任何帮助都将不胜感激。

注意:即使在我的应用程序的第一个版本中,我也使用了上述所有API,并且成功通过了苹果审核。

谢谢。


你是在谈论版本号的更改吗? - NSUserDefault
是的,我修改了那个部分。如果你看到我的问题,它被拒绝了,因为在某些API中使用了UIDevice类的uniqueIdentifier方法。有什么解决办法吗? - NSUserDefault
+1,@NSUserDefault 你有找到任何成功的方法吗?我也在寻找同样的答案。 - Mangesh
@Mangesh 实际上,Google Analytics API(旧版本)和Paypal API都包含uniqueIdentifier方法。由于GA对我的项目没有用处,我只是将其删除了。但是Paypal还没有发布最新版本,所以我只是实现了虚拟的uniqueIdentifier方法,并将其上传到商店(因为我的应用程序只是演示版本),然后苹果接受了我的应用程序。 - NSUserDefault
2个回答

5

由于Paypal (MECL)库使用了uniqueIdentifier,您的应用被拒绝了。我已经向PayPal人员提出了问题,并得到了回复,但问题仍未解决。您可以通过此链接检查跟踪情况。请参阅PayPal的mettler的答案。


你好,感谢您宝贵的回复。您解决了问题吗?我从S.O中提供的链接下载了新的API,但是在PayPal.h中没有libPayPalEC.a库和方法也有所不同。 - NSUserDefault
在新的libpaypalmpl.a中,我发现了uniqueIdentifier。所以问题还没有解决。我正在等待新的更新... - Yashesh
由于我们急需上传新版本,除了集成PayPal之外,是否还有其他选项可供选择? - NSUserDefault
如何创建...目前我正在使用快速结帐流程。因此,我将调用服务器,我的服务器将调用Paypal网关。我的服务器将包含卖家数据。所以现在我应该在我的应用程序中拥有卖家详细信息,对吗? - NSUserDefault

0
如果你使用的是Google Analytics v2b4,请确保不要包含和编译这段代码。

libGoogleAnalytics_debug.a

在你的项目中。


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