Apple Pay 接入准备

领导想要接入Apple Pay,先找个的Demo跑起来。找的银联的SDK,开始干活。

  • 先准备Merchant ID,ID要以“merchant.”开头
  • 项目中在Capabilities里,找到Apple Pay 设置为on,填写上Merchant ID。项目会自动生成XXX.entitlements ,打开会发现是一个plist形式的键值对,Merchant IDs是个存储多个Merchant ID的数组。
  • 把银联SDK的UPAPayPluginDelegate.h 和UPAPayPlugin.h 还有libUPAPayPlugin.a 一起拖入项目中来。
  • 在Build Phases的Link Binary With Libraries添加以下几个库:libz.tbd、SystemConfiguration.framework、Passkit.framework、CFNetwork.framework
  • 唤醒支付的时候要判断是否能够支付 。iOS 9.2 以上和 iPhone 6以上的机型
 [PKPaymentAuthorizationViewController canMakePayments]
  • 根据卡的类型来判断是否可以支付
if ([PKPaymentAuthorizationViewController canMakePaymentsUsingNetworks:@[PKPaymentNetworkChinaUnionPay]] && tn )
{
    [UPAPayPlugin startPay:tn mode:@"01" viewController:self delegate:self andAPMechantID:kAppleMerchantID];
}
  • 编译要处理一下,唤醒支付那个类.m 改成.mm。Build Setting里面修改Apple LLVM 8.1 -Language -C++, C++ Language Dialect 和 C++ Standard Library 都修改为Compiler Default。Linking 里面的Other Linker Flags 添加-force_load $(PROJECT_DIR)/ApplePayDemo/libUPAPayPlugin.a。格式是-force_load+空格+静态库的路径。一定要确保静态库的路径正确。
  • 支付后处理回调
- (void) UPAPayPluginResult:(UPPayResult *) payResult

你可能感兴趣的:(Apple Pay 接入准备)