HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 如何在真实设备上测试Braintree Apple Pay?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为来自美国以外的美国客户开发使用Apple Pay的应用程序.我正在使用Braintree Apple Pay.我们支持真实的信用卡到Passbook,但我们无法验证它们.

我成功地生成一个客户端令牌,self.braintree,并尝试了BT的两种集成方式.

> BTPaymentProvider – 我们对付款方式创建的抽象.

if(self.braintree && ![self.braintree isKindOfClass:[NSNull class]])
{
    self.provider = [braintree paymentProviderWithDelegate:self];
    if ([self.provider canCreatePaymentMethodWithProviderType:BTPaymentProviderTypeApplePay])
    {
        self.provider.paymentSumMaryItems = @[[PKPaymentSumMaryItem sumMaryItemWithLabel:@"XXXX" amount:[NSdecimalnumber decimalnumberWithString:@"1"]]];
    }
    [self.provider createPaymentMethod:BTPaymentProviderTypeApplePay];
}

但它没有推“PKPaymentAuthorizationViewController”.跟踪它也不例外.
> PassKit – Apple的ApplePay API.

if([PKPaymentAuthorizationViewController canMakePayments]) // It returns TRUE
{
    PKPaymentrequest *paymentrequest = [[PKPaymentrequest alloc] init];
    paymentrequest.countryCode = @"US";
    paymentrequest.currencyCode = @"USD";
    paymentrequest.merchantCapabilities = PKMerchantCapabilityEMV | PKMerchantCapability3DS;
    paymentrequest.merchantIdentifier = MERCHANTID;
    paymentrequest.supportedNetworks = @[PKPaymentNetworkAmex,PKPaymentNetworkMasterCard,PKPaymentNetworkVisa];
    paymentrequest.paymentSumMaryItems = @[ [PKPaymentSumMaryItem sumMaryItemWithLabel:@"TEST" amount:[NSdecimalnumber decimalnumberWithString:@"1"]] ];

    if([PKPaymentAuthorizationViewController canMakePaymentsUsingNetworks:@[PKPaymentNetworkAmex,PKPaymentNetworkVisa]]) // Returns falSE
    {
        PKPaymentAuthorizationViewController *vc = [[PKPaymentAuthorizationViewController alloc] initWithPaymentrequest:paymentrequest];
        vc.delegate = self;
        [self presentViewController:vc animated:YES completion:nil];
    }
}

这使得“vc”为零.

纠正我,如果这是错的.如何在真实设备上测试?

解决方法

您的应用的Apple Pay权利可能未正确设置.

我注意到canMakePayments返回YES并且canMakePaymentsUsingNetworks:在未设置权利时返回NO.

(我还注意到,当你在PKPaymentrequest上设置的商家ID与你的Apple Pay权利的商家ID不匹配时,他们都可以返回YEs.在这种情况下,你的PKPaymentAuthorizationViewController将是非零的,但是它会记录一个控制台中的神秘错误).

因此,要确认为您的应用配置了Apple Pay,请确保目标设置的“功能”部分中的“Apple Pay”处于“开启”状态,并且它具有商家标识符(如果您还没有,则需要set up)已经).

然后:

>如果使用BTPaymentProvider集成方法,请确保在Braintree控制面板中正确设置证书和商家标识符.>如果使用直接PassKit集成方法,请确保将merchantIdentifier属性设置为权利中的匹配商家标识符.

大佬总结

以上是大佬教程为你收集整理的ios – 如何在真实设备上测试Braintree Apple Pay?全部内容,希望文章能够帮你解决ios – 如何在真实设备上测试Braintree Apple Pay?所遇到的程序开发问题。

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

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