我正在尝试显示一个 PKPaymentAuthorizationViewController,它不是零但没有显示。 我以前工作过,但现在不工作了。 权利和商家 ID 似乎不错。 这是我的初始化代码(没有无用的代码)
PKPaymentRequest *request = [PKPaymentRequest new];
request.merchantIdentifier = kApplePayMerchantId;
request.merchantCapabilities = PKMerchantCapability3DS;
request.supportedNetworks = self.class.supportedNetworks;
request.countryCode = _countryCode;
request.currencyCode = _currencyCode;
request.requiredShippingAddressFields = PKAddressFieldAll;
request.requiredBillingAddressFields = PKAddressFieldName | PKAddressFieldPostalAddress;
request.paymentSummaryItems = summaryItems;
PKPaymentAuthorizationViewController *paymentVC = [[PKPaymentAuthorizationViewController alloc] initWithPaymentRequest:request];
paymentVC.delegate = self;
return paymentVC;
然后我用
显示它- (void)presentViewController:(UIViewController *)viewControllerToPresent animated: (BOOL)flag completion:(void (^ __nullable)(void))completion;
但是没有任何反应。没有日志...
我试图在 return paymentVC;
之前设置一个断点,打印这个对象(看起来没问题)然后按下播放,我得到了以下日志
Payment request is invalid: check your entitlements
apple pay View Controller 出现并在 BAD ACCESS 错误中崩溃。
我真的不明白发生了什么。 你能帮我解决这个错误吗?
最佳答案
哇,经过一天的研究,我找到了。 如果您有一个默认的 Apple Pay 送货地址(在钱包条目中,设置中)带有无效字段(我不知道它的规则),Apple Pay 表将不会弹出...... 所以请注意这一点!
关于ios - PKPaymentAuthorizationViewController 不是零但没有显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35228985/