Ton*_*Mit 5 ios passkit swift applepay
我们遇到了一个问题,PKPaymentAuthorizationController尽管一切都已完成,但未呈现 ,如示例中所述。APKPaymentRequest在代码中创建,传递给PKPaymentAuthorizationController初始值设定项,之后也present对其调用该方法。PKPaymentAuthorizationController当您第一次尝试在新安装的应用程序中显示控制器时,会强烈地再现此行为。并且该Bug在后续使用过程中会随机重现;在这种情况下,不可能找到任何明确的复制方法。\n问题绝对不是创建 所需的任何值 \xe2\x80\x8b\xe2\x80\x8b 中的拼写错误PKPaymentRequest,我的意思是merchantIdentifier, supportedNetworks, merchantCapabilities, countryCode,currencyCode并且paymentSummaryItems,我们已经不止一次地检查过这一点。这个问题也不在于将Double价格值转换为NSDecimalNumber,正如 Stack Overflow 上类似问题的答案之一所写。我们使用了调试器,这表明 已经PKPaymentRequest成功创建,就像它PKPaymentAuthorizationController本身一样。但当present调用该方法时,屏幕上没有任何反应。如果您能帮助我们解决问题,我们将不胜感激。这是示例代码:
let request = PKPaymentRequest()\n request.merchantIdentifier = "HERE_IS_OUR_M_ID"\n request.supportedNetworks = [.amex, .visa, .masterCard]\n request.merchantCapabilities = .capability3DS\n request.countryCode = "US"\n request.currencyCode = "USD"\n request.paymentSummaryItems = [\n PKPaymentSummaryItem(label: "BUY_ITEM_TEXT", amount: NSDecimalNumber(value: buyItemPrice)),\n PKPaymentSummaryItem(label: "COMPANY_NAME", amount: NSDecimalNumber(value: buyItemPrice), type: .final)\n ]\n let applePayController = PKPaymentAuthorizationController(paymentRequest: request)\n applePayController.delegate = self\n applePayController.present(completion: nil)\nRun Code Online (Sandbox Code Playgroud)\n