gpt4 book ai didi

ios - 无法关闭 PKPaymentAuthorizationViewController

转载 作者:可可西里 更新时间:2023-11-01 06:04:37 26 4
gpt4 key购买 nike

我正在为我的应用程序实现 Apple Pay。虽然我已经弄清楚了大部分内容,但我无法关闭进行身份验证的 PKPaymentAuthorizationViewController。这是我的代码..

-(void) viewDidAppear:(BOOL)animated {
// request is initialized here.
paymentPane = [[PKPaymentAuthorizationViewController alloc] initWithPaymentRequest:request];

//paymentPane is not nil.
paymentPane.delegate = self;

[self presentViewController:paymentPane animated:TRUE completion:nil];
}

调用上述函数并成功呈现 Apple Pay View Controller 以验证支付。我已经从委托(delegate)中实现了以下方法,如下所示:

-(void)paymentAuthorizationViewControllerDidFinish:(PKPaymentAuthorizationViewController *)controller {
[self dismissViewControllerAnimated:YES completion:nil];
}

- (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)controller didAuthorizePayment:(PKPayment *)payment completion:(void (^)(PKPaymentAuthorizationStatus))completion {
NSLog(@"%@", [payment.token description]);
completion(PKPaymentAuthorizationStatusSuccess);
}

理想情况下,它首先点击 didAuthorizePayment,在那里我们验证支付,如果成功则传递成功,然后调用 paymentAuthorizationViewControllerDidFinish 并用于完成交易并隐藏 Apple View Controller。我在那里设置了断点,它同时触发了两个函数,但 ViewController 并没有消失。即使您点击 Apple Pay View 中的“取消”按钮,它也不会运行。

我的类声明如下,并实现了所需的委托(delegate)。

@interface ApplePayManager : UIViewController<PKPaymentAuthorizationViewControllerDelegate, UIAlertViewDelegate>

对我做错了什么有什么想法吗?为什么 View Controller 不解散?

最后,我对 iOS 有点陌生。所以我很感激指南和/或链接来澄清我的疑虑!

已经看过: http://www.raywenderlich.com/87300/apple-pay-tutorial https://dzone.com/articles/integrating-your-ios-app-apple

最佳答案

这成功了。我的队友发现了这个解决方案。事实证明,我们在其上显示 ApplePay View 的 ViewController 不是 rootVC。因此,将它切换到 rootVC 是可行的。

  UIViewController *rootViewController = [[[UIApplication sharedApplication] keyWindow] rootViewController];

[rootViewController presentViewController:paymentPane animated:TRUE completion:nil];

关于ios - 无法关闭 PKPaymentAuthorizationViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33905287/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com