Xamarin 中的 Apple Pay on watchOS
Apple 在 watchOS 3 中对 Apple Pay 进行了多项增强,增加了对In-App 付款的支持。 这样,用户就可以安全地提供付款和联系信息,以便直接从 Apple Watch 支付物理商品和服务的费用。
关于 Apple Pay 增强功能
如上所述,Apple 在 watchOS 3 中对 Apple Pay 进行了多项增强,允许安全付款和联系信息,以便直接从 Apple Watch 支付实物商品和服务。 这些增强功能通过对 PassKit 框架的修改提供。
在 iOS 10 和 watchOS 3 中,添加了多个新 API,这些 API 可与 iOS 和 watchOS 配合使用,以支持动态支付网络和新的沙盒测试环境。
PassKit 框架增强功能
在 iOS 10 中,PassKit 框架已扩展为支持 Apple Pay 外部,UIKit
并允许卡发卡人从其应用内出示卡。
在 UIKit 外部支持 Apple Pay
通过使用 PKPaymentAuthorizationController 和 PKPaymentAuthorixationControllerDelegate,应用可以在不使用 UIKit 的情况下支持 PKPaymentAuthorizationViewController 提供的相同功能。 虽然在 Apple Watch (、特定意向以及) 上支持 Apple Pay 需要此新 API,但在其他情况下, ((如现有应用) )中,它是必需的。 但是,Apple 建议尽快迁移到新的 API,以便通过单个代码库在所有开发人员应用中提供广泛的 Apple Pay 支持。 有关意向和 Siri 集成的详细信息,请参阅 SiriKit 简介 文档。
从应用内显示颁发者卡
在 iOS 10 和 watchOS 3 中,PassKit 框架中添加了新功能,允许卡颁发者在自己的应用中显示其支付卡。 开发人员可以将 UIButton 添加到PKPaymentButtonTypeInStore
应用的用户界面,该用户界面将显示卡的 Apple Pay 按钮。
PresentPaymentPass
PKPassLibrary 类的 方法也可用于以编程方式显示卡。
新的支付网络支持
对于 iOS 10 和 watchOS 3,应用可以在新的支付网络可用时自动支持它,而无需开发人员修改、重新编译应用并将其重新提交到App Store。
类的新 AvailableNetworks 方法 PKPaymentNetwork
允许应用在运行时发现用户设备上可用的网络。 此外, SupportedNetworks 属性已展开,以将付款提供商的名称作为参数。 使用这些方法,应用可以自动支持支付提供商支持的任何网络。
有关详细信息,请参阅 我们的 Apple Pay 配置 和 Apple 的 Apple Pay 指南。
新建测试环境
借助 iOS 10 和 watchOS 3,Apple 引入了一个新的测试环境,允许开发人员直接在 iOS 设备上预配测试支付卡。 然后,这个新的测试环境会将加密的测试付款数据返回到应用。
若要启用新的测试环境,请执行以下操作:
- 在 iTunes Connect 中创建新的测试 iCloud 帐户。
- 使用新的测试帐户登录到 iOS 设备。
- 设置要测试应用所需的区域。
- 使用 Apple Pay Guide 中的其中一张测试 支付 卡进行付款。
注意
通过切换 iCloud 帐户,设备将自动切换到新的测试环境。 但是,Apple 仍要求在提交到 iTunes App Store之前,在生产环境中使用真实卡片测试应用。
总结
本文介绍了 Apple 在 watchOS 3 中对 Apple Pay 所做的增强,以及如何在 Xamarin.iOS 中实现这些功能。