libpaypalmpl.a使用uniqueidentifier和苹果拒绝拒绝该应用程序

时间:2013-05-08 04:48:29

标签: ios xcode paypal uniqueidentifier

从2013年5月1日起,Apple将拒绝使用uniqueIdentifier的应用。在我的应用程序中我使用Paypal库,我发现libpaypalmpl.a正在使用uniqueIdentifier而我的应用程序因uniqueIdentifier而被拒绝。如何解决这个问题呢?

3 个答案:

答案 0 :(得分:6)

来自PayPal的Mike来自这里。我们正在弃用旧的MPL库。正如你所指出的,它确实调用了[UIDevice uniqueIdentifier]。

PayPal iOS SDK应该是安全的 - 其他应用程序正在使用它,并且它不会调用[UIDevice uniqueIdentifier]。我们将继续维护此版本并添加新功能,因此它应该为您的客户提供更好的体验。

正如您正确指出的那样,PayPal iOS SDK仅适用于美国企业。我们正在努力扩大对非美国国家的支持,并希望尽快更新!


更新:没有引用uniqueIdentifier的新iOS SDK(版本2.0.0)位于:https://github.com/paypal/sdk-packages/blob/gh-pages/MPL/PayPalMPL_2-0-0-iPhone_DevelopersPackage.zip

答案 1 :(得分:3)

问题不在于如何引用库中的对象, 它是静态库本身造成的麻烦。它包含对UIDevice上的uniqueIdentifier的调用或至少一个具有相同名称的方法。 截至5月1日,链接此库将使苹果拒绝该应用程序。 需要新版本的库。

答案 2 :(得分:0)

因此第三方库正在使用uniqueIdentifier,您无法做任何事情。

这是一个受欢迎的图书馆,所以他们很快会发布更新,希望如此。等到那时,或者删除库并实现自己的方式。

编辑:

我阅读了Paypal的文件。可能有一种方法可以使用uniqueIdentifier:

PayPalPaymentViewController *paymentViewController = [[PayPalPaymentViewController alloc] initWithClientId:@"YOUR_CLIENT_ID" receiverEmail:@"YOUR_PAYPAL_EMAIL_ADDRESS" payerId:aPayerId payment:payment delegate:self];

其中payerId可以包含设备唯一ID的值。如果您这样添加:将其更改为emailId或nil。

请检查Paypal SDK Documentation