如何使用swift从ios应用程序调用apple钱包
每当用户在我的ios应用程序中单击“将卡添加到钱包”按钮时,我都希望显示“苹果钱包添加卡”页面。如何从ios应用程序调用苹果钱包。我在ios应用程序中启用了钱包功能,还为我的应用程序生成了钱包权利。如何使用swift使用PKAddPaymentPassViewControler。请给出一些想法注意:这仅适用于发卡机构。如果要重定向用户以添加付款方式,请使用该方法 对于发卡机构,您需要苹果公司颁发的特殊权利 您的应用程序必须包含此权限才能使用此类。 有关申请此权利的更多信息,请参阅卡 发行人部分位于developer.apple.com/apple pay/ 发件人:如何使用swift从ios应用程序调用apple钱包,ios,swift,wallet,passkit,Ios,Swift,Wallet,Passkit,每当用户在我的ios应用程序中单击“将卡添加到钱包”按钮时,我都希望显示“苹果钱包添加卡”页面。如何从ios应用程序调用苹果钱包。我在ios应用程序中启用了钱包功能,还为我的应用程序生成了钱包权利。如何使用swift使用PKAddPaymentPassViewControler。请给出一些想法注意:这仅适用于发卡机构。如果要重定向用户以添加付款方式,请使用该方法 对于发卡机构,您需要苹果公司颁发的特殊权利 您的应用程序必须包含此权限才能使用此类。 有关申请此权利的更多信息,请参阅卡 发行人部分位
PKAddPaymentPassViewController
需要com.apple.developer.payment通行证设置
权限
应用程序的密钥。坏消息是,没有人可以提交带有
这项权利,因为它需要苹果公司的特别许可
“相信”是为银行等发卡机构保留的。如果你
相信你有资格,你需要直接联系苹果公司
苹果支付-inquiries@apple.com
您需要实现委托方法,并使用配置对其进行初始化
import UIKit
import PassKit
class ViewController: UIViewController, PKAddPaymentPassViewControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
if (!PKAddPaymentPassViewController.canAddPaymentPass()){
// use other payment method / alert user
}
let config = PKAddPaymentPassRequestConfiguration.init(encryptionScheme: PKEncryptionScheme.ECC_V2)
let addPaymentPassVC = PKAddPaymentPassViewController.init(requestConfiguration: config!, delegate: self)
self.present(addPaymentPassVC!, animated: true, completion: nil)
}
func addPaymentPassViewController(_ controller: PKAddPaymentPassViewController, generateRequestWithCertificateChain certificates: [Data], nonce: Data, nonceSignature: Data, completionHandler handler: @escaping (PKAddPaymentPassRequest) -> Void) {
}
func addPaymentPassViewController(_ controller: PKAddPaymentPassViewController, didFinishAdding pass: PKPaymentPass?, error: Error?) {
// pass added
}
}
嗨。我有一个疑问,如果我想在apple wallet中存储用户卡详细信息,我可以从apple获得许可,还是可以在我的应用程序中添加权限。当用户从我的应用程序中单击添加卡按钮时,是打开钱包应用程序还是自己自定义页面。谢谢如果我理解正确,您需要特殊权限才能向apple pay添加卡。查看此线程:您不会自己创建页面,卡片将从Wallet应用程序或Apple管理的区域添加。我的问题是当用户单击addcards按钮,然后重定向到Apple Wallet以添加卡片详细信息时?可能吗?嗨。我在self.present(addPaymentPassVC!,动画:true,完成:nil)上遇到错误,即线程1:致命错误:在展开可选值时意外发现nil。addPaymentPassVC存储nill值。
initWithRequestConfiguration
如果您没有Apple的特殊权限,将返回nil。