首页 > 解决方案 > PKAddPaymentPassViewController 为零

问题描述

我已将商家配置文件添加到应用程序中。

if (!PKAddPaymentPassViewController.canAddPaymentPass()){
        print("not enabled")
    }
    let config = PKAddPaymentPassRequestConfiguration.init(encryptionScheme: PKEncryptionScheme.ECC_V2)

    guard let addPaymentPassVC = PKAddPaymentPassViewController.init(requestConfiguration: config!, delegate: self) else { return }

    self.present(addPaymentPassVC, animated: true, completion: nil)

这是我的代码,但 addPaymentPassVC 始终为零,我收到消息“缺少权利:com.apple.developer.payment-pass-provisioning”

我还尝试将此密钥 com.apple.developer.payment-pass-provisioning 添加到权利文件中,在这种情况下,我收到错误“...ProvisioningProfile”不包括 com.apple.developer.payment -pass-provisioning 权利。

标签: swiftxcode9applepaywallet

解决方案


根据您的评论,您似乎没有将通行证添加到电子钱包的正确权利。权利com.apple.developer.payment-pass-provisioning需要 Apple 的特别许可才能在您的应用程序中使用。Apple 建议联系apple-pay-inquiries@apple.com以获取更多信息。

从 Apple 获得许可后,或者如果您已经获得许可,请将以下密钥添加到您的权利文件中:

<key>com.apple.developer.payment-pass-provisioning</key>
<true/>


注意:不幸的是,如果没有特殊权利,似乎无法对此进行测试,如 Apple 所述:Your app must include this entitlement before this class can be instantiated.

来源: https ://developer.apple.com/documentation/passkit/pkaddpaymentpassviewcontroller


推荐阅读