HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – Apple Pay检测钱包没有信用卡大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试为我的应用实施Apple Pay.我有PKPaymentAuthorizationViewController试图加载Apple Pay View.如果我的钱包里已经没有任何卡,那么这个视图控制器被构造函数返回为Nil.所以,我决定引导用户通过他们输入卡信息的过程.我能够实现这一目标

PKPassLibrary* lib = [[PKPassLibrary alloc] init];
[lib openPaymentSetup];

这是我有PKPaymentAuthorizationViewController初始化的部分.这将返回模拟器上显示视图的有效对象.但是在没有配置信用卡的真实设备上返回nil并运行到运行时异常.这是初始化@L_197_5@:

if ([PKPaymentAuthorizationViewController canMakePayments]) {
// init arr
[arr addObject:@R_70_10586@l];
request.paymentSumMaryItems = arr;
PKPaymentAuthorizationViewController *paymentPane = [[PKPaymentAuthorizationViewController alloc] initWithPaymentrequest:request];
paymentPane.delegate = self;
[self presentViewController:paymentPane animated:TRUE completion:nil];
}

这里的数组是PKPaymentSumMaryItem的有效NSArray,这就是为什么在模拟器上成功运行的原因.

我需要调用openPaymentSetup的上述方法,每当我看到钱包里没有信用卡的用户时.有没有办法检测到它?

目前我正在使用

if ( [PKPassLibrary isPassLibraryAvailable] ) {
    PKPassLibrary* lib = [[PKPassLibrary alloc] init];
    if  ([lib passesOfType:PKPassTypePayment].count == 0 ) {
        [lib openPaymentSetup];
   }
}

但是这不起作用,因为我正在查看钱包中的通行证数量.这可能是航空公司的登机牌,或者eventbrite通行证等.

看着 :
PKPaymentAuthorizationViewController present as nil view controller

Apple pay PKPaymentauthorizationViewController always returning nil when loaded with Payment request

https://developer.apple.com/library/ios/documentation/PassKit/Reference/PKPaymentAuthorizationViewController_Ref/

解决方法

我按照@maddy的建议做了,它确实有效.不幸的是苹果公司的文件非常有限.谢谢Maddy.

这是我的@L_197_5@

-(BOOL) openAddCardForPaymentUIIfNeeded
{
    if ( [PKPassLibrary isPassLibraryAvailable] )
    {
        if ( ![PKPaymentAuthorizationViewController canMakePaymentsUsingNetworks:[NSArray arrayWithObjects: PKPaymentNetworkAmex,PKPaymentNetworkMasterCard,PKPaymentNetworkVisa,nil]] )
        {
            UIAlertView* alert = [[UIAlertView alloc] initWithtitle:@"Add a Credit Card to Wallet" message:@"Would you like to add a credit card to your wallet Now?" delegate:self cancelButtontitle:@"No" otherButtontitles:@"Yes",nil];
            [alert show];
            return true;

        }
    }
    return false;
}

现在,我指示用户在钱包应用程序中添加卡向导.在他/她完成在钱包中添加卡后,有什么方法可以让用户回到应用程序?

谢谢!

大佬总结

以上是大佬教程为你收集整理的ios – Apple Pay检测钱包没有信用卡全部内容,希望文章能够帮你解决ios – Apple Pay检测钱包没有信用卡所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。