当用户将卡添加到iPhone时,我需要隐藏“添加到Apple Wallet”按钮,但仅在将其添加到手表时才将其保留在屏幕上。我正在研究该方法
func addPaymentPassViewController(_ controller: PKAddPaymentPassViewController, didFinishAdding pass: PKPaymentPass?, error: Error?)
但是我找不到在哪里可以看到该卡已添加到哪个设备
答案 0 :(得分:0)
您可以使用PKLibrary
的{{1}}函数来获取用户iPhone钱包中的卡,然后检查是否存在该卡。要将卡片从手表的钱包中取出,请使用passes()
。
请注意,您的应用必须有权查看有问题的卡,否则返回数组中将不存在该卡。我没有找到太多相关的文档,所以我与苹果公司开设了TSI,以尝试获取更多信息。 Apple Pay Wallet团队的某人回覆了我,这是他们说的话:
如果该应用有权查看该卡,则可以通过PKPassLibrary对其进行查询-使用[PKPassLibrary -passesOfType]来查找设备上本地的卡,或者使用[PKPassLibrary -remotePaymentPasses]来查看已配对手表上的卡。 我们建议应用程序使用以下方法来检查其付款通行证是否已在设备上,并使用该信息隐藏“添加到电子钱包”按钮。 请注意,这确实要求该应用有权查看付款通行证。通常,这是由发行人处理的,因此请与发行人仔细检查,以确保他们正在将付款通行证的相关应用ID设置为应用。
仍然不能完全回答我的所有问题,但是我建议您与发卡机构联系(这是我要采取的下一步)。