无法在iPhone 6上打开Apple Pay表

时间:2014-10-09 02:21:18

标签: ios objective-c iphone

我想创建一个示例项目,当用户点击我的应用上的“使用Apple Pay付款”按钮时打开Apple Pay表。

我在带有iOs版本8.1(包含Apple Pay)和Xcode 6.1 GM的iPhone 6上测试我的应用程序。他们两个尚未正式发布。

我按照this page上的教程进行了操作。这是我处理“使用Apple Pay付款”按钮的点击事件的代码:

PKPaymentRequest *request = [PKPaymentRequest new];

// Must be configured in Apple Developer Member Center
// Doesn't seem like the functionality is there yet
request.merchantIdentifier = @"my.valid.merchant.identifier";

request.countryCode = @"US";
request.currencyCode = @"USD";

// Let's go!
// if (![PKPaymentAuthorizationViewController canMakePayments]) return;
PKPaymentAuthorizationViewController *authVC = [[PKPaymentAuthorizationViewController alloc] initWithPaymentRequest:request];
authVC.delegate = self;
[self presentViewController:authVC animated:YES completion:nil];

点击“使用Apple Pay付款”按钮,我收到此错误:

  

由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'应用程序试图在目标上显示nil模态视图控制器

检查PKPaymentAuthorizationViewController canMakePayments]时,会返回false。

我不确定我的错误原因是iPhone的设置还是我的代码。

有人有使用Apple Pay的经验吗?请帮我。非常感谢你。

1 个答案:

答案 0 :(得分:3)

  

我在带有iOs版本8.1(包含Apple Pay)的iPhone 6上测试我的应用程序

不,最新的测试版(iOS 8.1 Beta 2)不包含Apple Pay。显然有一些东西在他们的工作之下,但它并不打算为开发人员工作。

这就是[PKPaymentAuthorizationViewController canMakePayments]返回NOauthVCnil的原因。 Apple Pay也不在“设置”中提供,也未在release notes中提及。