Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
条纹和苹果支付在iOS应用程序中不起作用_Ios_Iphone_Xcode_Stripe Payments_Applepay - Fatal编程技术网

条纹和苹果支付在iOS应用程序中不起作用

条纹和苹果支付在iOS应用程序中不起作用,ios,iphone,xcode,stripe-payments,applepay,Ios,Iphone,Xcode,Stripe Payments,Applepay,我很沮丧,因为我花了很长时间来解决这个问题。我正在使用以下代码创建请求: PKPaymentRequest *request = [Stripe paymentRequestWithMerchantIdentifier:merchantId]; // Configure your request here. NSString *label = @"Product Description"; NSDecimalNumber *amoun

我很沮丧,因为我花了很长时间来解决这个问题。我正在使用以下代码创建请求:

 PKPaymentRequest *request = [Stripe
                             paymentRequestWithMerchantIdentifier:merchantId];
// Configure your request here.
NSString *label = @"Product Description";

NSDecimalNumber *amount = [NSDecimalNumber decimalNumberWithString:[productpriceDouble stringByReplacingOccurrencesOfString:@"$" withString:@""]];
request.paymentSummaryItems = @[
                                [PKPaymentSummaryItem summaryItemWithLabel:label
                                                                    amount:amount]
                                ];
request.merchantIdentifier = @"merchantId";
request.countryCode = @"US";
request.currencyCode = @"USD";
request.merchantCapabilities = PKMerchantCapability3DS;

    PKPaymentAuthorizationViewController *paymentController;


    paymentController = [[PKPaymentAuthorizationViewController alloc]
                         initWithPaymentRequest:request];
    paymentController.delegate = self;

    [self presentViewController:paymentController animated:YES completion:nil];
当代码运行时,苹果Pay view弹出指纹时,它开始运行良好,然而,当指纹被确认时,它会旋转一段时间,然后弹出一个警报并说:

'苹果支付在“AppName”中不可用'

检查此应用程序的设置,确保其设计为使用Apple Pay


任何想法都将不胜感激

您可能已经创建了一个商户ID和匹配的证书,但是您是否检查了商户ID是否在您的权利文件中,并确保您的权利文件被放入您的二进制文件中?在Xcode中仔细检查您的项目功能,确保您的商户ID列在其中,并通过查看授权文件是否在目标的构建设置中进行三重检查


我也不清楚为什么要显式设置merchantID,而Stripe的工厂方法应该为您创建预设值?

2015年5月-也遇到了这个问题

我必须重做我的应用程序到期的所有证书,因为我的配置文件和其他设置不正确的东西有问题

Apple pay在所有更改之前工作…在我更改所有证书之后仍然工作,但是…第二天之后它停止工作

这就是我所做的

我检查了手机中的Apple Pay设置,重新添加了我的账单地址(有时这可能是问题所在,但事实并非如此)

我检查应用程序中的权利证书,以确保其设置正确。在这里,请确保您包含您的商户id…应以merchant.com.nameOfApp开头(您可以从apple center的商户id下获取此信息。(这很好-不是问题)

检查了我所有的证书-一切似乎都是正确的

我做的最后一件事是为apple pay重新生成证书。轰!这就是问题所在。不知道为什么,它才起作用。从计算机中删除stripe和apple pay的旧证书,并按照stripe/apple pay文档中的说明操作

看这里


希望有帮助!

我找到了解决方案。将字符串STRIPE\u ENABLE\u APPLEPAY添加到预处理器宏下的Debug和Release中

我也面临同样的问题


更新:现已修复。请参阅:

我们在2016年6月遇到此问题

通过撤销商户证书并上传相同的CSR重新创建该证书进行修复


这确实令人困惑,因为苹果支付似乎“启用”没有问题。

这可能会有帮助:谢谢,但我的情况不是这样。我已经创建了一个商户id和一个证书。是的,所有这些事情都已经完成了,这就是为什么我如此困惑的原因。当您生成您的商户id和证书时,您是否随后将您的证书上传回开发者门户?一个d证书是否由椭圆曲线或基于RSA的密钥支持?(如果生成密钥时未指定任何内容,则该密钥将是RSA)它已上载回stripe,但您想将其上载回开发者门户网站是什么意思?它是否已经在门户网站上?至于备份,我对此不确定。请转到Apple开发者会员中心,单击您的商户ID,然后选择“编辑”。您是否看到“生产证书”下列出的证书?如果您在生成证书后从未将其上载到Apple,则Apple将无法加密您的支付数据,因此支付将立即失败。如果您只看到一个显示“创建证书”的按钮然后你需要上传你之前生成的证书。我确实看到了生产证书。在重新生成证书后,我必须在Apple开发者门户中选择它并单击“激活”。这撤销了旧证书并激活了新证书。Apple Pay立即开始工作。