目前支持支付宝、微信支付和苹果内购支付:

支付插件首先需要到各开放平台申请帐号,查看该文档

支付宝

添加依赖库及资源

依赖库系统库资源文件
liblibPayment.a、libalixpayment.a、AlipaySDK.frameworkSecurity.framework、CoreMotion.framework、SystemConfiguration.framework、CFNetwork.framework、libc++.dylibAlipaySDK.bundle

工程配置

1.在URL Types 中添加配置: identifier 填写 alixpay ,URL Schemes 填写 alix[后面是您在支付宝平台申请的appid] ,如果没有该项按照图中的格式创建

Payment(支付) - 图1

2.在 info.plist 添加 Schemes 白名单配置

Payment(支付) - 图2

微信支付

添加依赖库及资源

依赖库系统库资源文件
liblibPayment.a、libwxpay.a、libWeChatSDK_pay.alibsqlite3.0.dylib、libz.dylib、CoreTelephony.framework、SystemConfiguration.framework

注意:SDK 中的

  • libWeChatSDK_pay.a 为带支付功能的微信SDK,支持微信分享、微信支付及微信授权登录功能
  • libWeChatSDK.a 为不带支付功能的SDK,仅支持微信分享和授权登录,不使用支付功能请添加此库,避免审核被拒
  • 不要同时添加到工程避免冲突

工程配置

1.在URL Types 中添加配置: identifier 填写 weixin ,URL Schemes 填写wx[后面是您在微信平台申请的appkey] ,如果没有该项按照图中的格式创建

Payment(支付) - 图3

2.在 info.plist 添加 Schemes 白名单配置

Payment(支付) - 图4

3.在 info.plist root 节点添加UniversalLinks字段,值和微信开放平台配置的一致,参考如下:

Payment(支付) - 图5

4.在工程的 AppDelegate.m 系统通用链接回调方法中调用框架方法如下:

  1. - (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray<id<UIUserActivityRestoring>> * __nullable restorableObjects))restorationHandler {
  2. [PDRCore handleSysEvent:PDRCoreSysEventContinueUserActivity withObject:userActivity];
  3. restorationHandler(nil);
  4. return YES;
  5. }

苹果应用内购支付

添加依赖库及资源

依赖库系统库资源文件
liblibPayment.a、libIAPPay.aStoreKit.framework

注意:以上支付方式都需要配置支付平台参数

1、在工程中搜索 feature.plist 文件(位于PandoraApi.bundle中),在 Payment-> extend 节点下添加对应平台的配置

Payment(支付) - 图6

2、除苹果支付外,其他支付需在 AppDelegate.m 文件的系统回调方法中调用框架的方法如下

  1. - (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
  2. {
  3. [PDRCore handleSysEvent:PDRCoreSysEventOpenURL withObject:url];
  4. return YES;
  5. }
  6. - (BOOL)application:(UIApplication *)application openURL:(nonnull NSURL *)url options:(nonnull NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options {
  7. [PDRCore handleSysEvent:PDRCoreSysEventOpenURLWithOptions withObject:@[url,options]];
  8. return YES;
  9. }

发现错误?想参与编辑?在 GitHub 上编辑此页面!