Ios 以编程方式向用户添加信用卡/银行卡';苹果钱包
我在一家银行工作,我正在做一个项目,通过编程将用户的信用卡/银行卡添加到他们的苹果钱包中。这张卡是我们银行发行的 我们的应用程序已经拥有com.apple.developer.payment-pass-provisioning权限。我能够填充配置并调用PKAddPaymentPassViewController。模式正确加载,一旦用户单击next,我就会得到一个带有证书、nonce和nonesignature的响应 我现在尝试调用PKAddPaymentPassRequest,它需要activationData、encryptedPassData、wrappedKey、EphemeralPublicey字段 我正在阅读这里的文档 我的理解是,应用程序需要将证书、nonce和nonesignature传递给我们的api,然后api使用这些证书加密信用卡信息等。我们的api将以activationData、encryptedPassData、wrappedKey、,然后应用程序可以使用该数据调用PKAddPaymentPassRequest来完成该过程 我不确定从哪里开始api方面。如何使用证书正确生成所需的加密字符串?支付通行证的json格式是什么?有很多不同通行证的例子,但没有付款通行证 是否有获取证书并生成encryptedPassData和其他字段的示例代码?我看到developer.apple.com上有一些通行证示例代码,但没有任何支付通行证示例代码 这个问题是我能找到的最接近我所问的问题。有一些关于服务器端实现的评论,但答案不清楚Ios 以编程方式向用户添加信用卡/银行卡';苹果钱包,ios,applepay,wallet,apple-wallet,Ios,Applepay,Wallet,Apple Wallet,我在一家银行工作,我正在做一个项目,通过编程将用户的信用卡/银行卡添加到他们的苹果钱包中。这张卡是我们银行发行的 我们的应用程序已经拥有com.apple.developer.payment-pass-provisioning权限。我能够填充配置并调用PKAddPaymentPassViewController。模式正确加载,一旦用户单击next,我就会得到一个带有证书、nonce和nonesignature的响应 我现在尝试调用PKAddPaymentPassRequest,它需要activa
您可以通过在服务器端创建.pkpass将信用卡添加到apple wallet中 然后在ios端下载该文件,并将其添加到ios钱包中 下面是使用完成处理程序从服务器下载.pkpass(passbook文件)的代码,并显示pkpassviewcontroller以进一步添加到apple钱包中
import PassKit
let url : NSURL! = NSURL(string: "YOUR .pkpass URL GOES HERE")
let request: NSURLRequest = NSURLRequest(url:
url as URL)
let config = URLSessionConfiguration.default
let session = URLSession(configuration: config)
let task : URLSessionDataTask = session.dataTask(with: request as URLRequest, completionHandler: {(data, response, error) in
var error: NSError?
let pass = try? PKPass(data: data!, error: &error)
if error != nil {
DispatchQueue.main.async {
let alertView = UIAlertView(title: "Error", message: (error?.localizedDescription)!, delegate: nil, cancelButtonTitle: "OK", otherButtonTitles: "Cancel")
alertView.show()
}
}
else {
let passLibrary = PKPassLibrary()
if passLibrary.containsPass(pass!) {
DispatchQueue.main.async {
let alertView = UIAlertView(title: "Already Exist", message: "This pass already added in wallet. Thanks!", delegate: nil, cancelButtonTitle: "OK", otherButtonTitles: "Cancel")
alertView.show()
self.hideLoading()
}
} else {
let pkvc = PKAddPassesViewController(pass: pass!)
pkvc.delegate = self
self.present(pkvc, animated: true, completion: {() -> Void in
// Do any cleanup here
self.hideLoading()
})
}
}
})
task.resume()
用于为iOS钱包应用程序创建通行证的PHP库
实施细节被视为机密信息,您必须联系苹果公司获取适当的文档@s-p-balu-kommur您似乎对此有经验。有什么想法吗?@luca taccagni也请参考:我将用C#写这篇文章,但我可能会通过查看这个php项目得到我需要的东西。链接和这个php项目给了我很多可以使用的东西。我会让你知道的。谢谢如果你觉得合适的话,接受ans。如果答案正确,我会的。看起来这是普通通行证,不是付款通行证。付款通行证不能使用pkpass。这就是我问这个问题的原因。支付通行证似乎与普通通行证有很大不同。该解决方案不起作用,因为它只适用于普通通行证,而不适用于支付通行证。支付通行证有一个非常不同的工作流程。