Apple Pay - 存折本为空

Posted

技术标签:

【中文标题】Apple Pay - 存折本为空【英文标题】:Apple Pay - Pass book empty 【发布时间】:2015-08-14 20:37:38 【问题描述】:

最近我的应用在 Apple 评论中失败了,针对 Apple Pay,提到“具体来说,我们发现您的应用为未设置 Apple Pay 的设备提供了 Apple Pay 按钮。”...方式,按钮“使用 Apple Pay 购买”将显示,当

     [PKPaymentAuthorizationViewController canMakePayments] 

在 iPhone 6、6+ 等设备上返回一个(真)& Braintree 验证成功。虽然 Passbook 是空的,但上面的 canMakePayments 总是返回“true”。我怀疑,这可能是苹果拒绝的原因。但是,你认为我们可以通过任何其他方式解决这个问题吗?或者,我应该上诉吗?如果我走错了路,请纠正我。

另外,我不清楚 Apple Doc 上的内容。

“在支持支付但未配置任何支付卡的设备上,canMakePayments 方法返回 YES,因为硬件和家长控制允许支付,但无论网络如何, canMakePaymentsUsingNetworks: 方法都返回 NO。”

谢谢。

【问题讨论】:

只是一个建议——验证是否为您的应用配置了 Apple Pay,确保目标设置的 Capabilities 部分中的“Apple Pay”为“On”,并且它具有商家标识符! @Vizllx 如何以编程方式做到这一点?尽管 Pass book 没有卡,但它会为 iPhone 6、6 + 等功能强大的设备开启,对吗? 与编程无关,只是验证项目设置。 @Vizllx 好的。我希望以编程方式评估符合条件的设备,如 iphone 6、6+ 等,无需 Passbook 设置。因为在这里它失败了:(... canMakePayments 总是返回 true。 Apple Pay 现在(截至今天)可在 iPhone 6 和 6 Plus 上使用,并且仅在美国有效。 【参考方案1】:

这是问题的原因!实际上不是 Apple Bug,它是我们自己的实现错误。

只为reference发帖 - 像我一样,很多人可能错过了这个,希望这对其他人有帮助。

canMakePayments - 无论卡配置如何,都将返回“YES”(真/1)。

canMakePaymentsUsingNetworks - 如果卡未配置或未正确配置,将返回“NO”。

因此,就我而言,我应该同时检查两者...如果两者都应该为 TRUE,那么我只需要使“Apple Pay”按钮可见。让我请求看看会发生什么!

【讨论】:

你是对的。 canMakePayments 更像是“设备有能力吗?” (例如,iPhone 4 将始终返回 NO)并且 canMakePaymentsUsingNetworks 是“它现在可用吗?”

以上是关于Apple Pay - 存折本为空的主要内容,如果未能解决你的问题,请参考以下文章

linux字符测试

使用脚本选项及组合条件测试

PHPActiveRecord validates

java判断字符串是不是为空

php判断mysql数据库是不是为空

使用 .Net 为 Apple 存折创建可下载的通行证 (*.pkpass)