【发布时间】:2015-08-01 10:15:22
【问题描述】:
背景:我在 iOS 8.2、8.3 上使用了相同的代码,它运行良好。
PKPaymentAuthorizationViewController *paymentPane = [[PKPaymentAuthorizationViewController alloc] initWithPaymentRequest:request];
paymentPane.delegate = self;
[self presentViewController:paymentPane animated:TRUE completion:nil];
付款请求代码:
PKPaymentRequest *request = [[PKPaymentRequest alloc] init];
NSString *chargeApplePay=[NSString stringWithFormat:@"%.02f",pay];
PKPaymentSummaryItem *total = [PKPaymentSummaryItem summaryItemWithLabel:@"Grand Total"
amount:[NSDecimalNumber decimalNumberWithString:chargeApplePay]];
request.paymentSummaryItems = @[total];
request.countryCode = @"US";
request.currencyCode = @"USD";
request.supportedNetworks = @[PKPaymentNetworkAmex, PKPaymentNetworkMasterCard, PKPaymentNetworkVisa];
request.merchantIdentifier = @"valid.com.myIdentifier";
request.merchantCapabilities = PKMerchantCapability3DS;
问题:现在在 iOS 8.4 上,当我尝试展示我的 paymentPane 时,它的值不知何故为零。
致命异常:NSInvalidArgumentException 应用程序试图 在目标上显示一个 nil 模态视图控制器。
我已经通过谷歌搜索和使用 stackoverflow 的答案进行了尝试。
-
使用过的检查类似
[PKPaymentAuthorizationViewController canMakePaymentsUsingNetworks:@[PKPaymentNetworkAmex, PKPaymentNetworkMasterCard, PKPaymentNetworkVisa]]和
[PKPaymentAuthorizationViewController canMakePayments] 检查我的商家 ID 是否有效。
- 检查我用于请求的所有代码是否有效。
【问题讨论】:
标签: ios objective-c ios8 applepay