转载自 https://www.jianshu.com/p/92e47254e308,最近在做这块,写的很详细,我就转载过来了;
一、支付宝支付
1、下载SDK:支付宝SDK下载地址
2、支付流程图请好好看一看,你就会明白你应该做什么
好了,看完了发其实我们需要做的就是(ps:为了安全起见,签名都在后台处理):
• 调用支付宝支付接口
• 处理支付宝返回的支付结果
3、把下载的demo中以下文件(如图)的导入到自己的工程中
4、在Build Phases选项卡的Link Binary With Libraries中,增加以下依赖: 添加支付宝 依赖官方链接
5、Xcode设置URL scheme和LSApplicationQueriesSchemes
(LSApplicationQueriesSchemes中alipay是针对于支付宝的其他的是针对于微信和银联的,如果不继承可以不添加,只添加alipay即可)
6、在需要的地方导入#import ,#import "Order.h",#import "RSADataSigner.h"
7、AppDelegate.m文件中,增加引用代码:
8、根据订单信息发起支付调用方法,orderString和appScheme。appScheme是app在info.plist注册的scheme,建议用支付宝注册的appid。orderstring是一个订单的字符串,由后台拼接生成的,还需要签名的
9、支付宝集成过程中一些错误的解决办法请参考文章
二、微信支付(官方开发文档)
1、下载SDK:微信SDK下载地址
2、看完支付流程图,你会我们要做的也是调起微信客户端发起支付和处理支付结果,和支付宝基本一样
3、导入SDK
4、导入依赖
1. SystemConfiguration.framework
2. libz.tbd
3. libsqlite3.0.tbd
4.CoreTelephony.framework
5. QuartzCore.framework
5、Xcode设置URL scheme和LSApplicationQueriesSchemes,参照支付宝,图片中有微信的
6、在需要的地方导入#import "WXApi.h"
7、AppDelegate.m文件中,增加引用代码:
8、根据后台返回数据发起支付,需要的参数在方法中有详细注释
在发起支付的界面做微信回调的监听,并在监听返回支付成功(也就是payOk:方法中)是调用自己后台的接口再次确认是否真正支付成功
9、注意微信支付只能调用App进行支付,所以需要判断
三、银联支付(APP集成官网
1、下载SDK:银联SDK下载地址
2、支付流程图
3、导入SDK中的UPPaymentControl.h和libPaymentControl.a文件
4、导入依赖
5、Xcode设置URL scheme和LSApplicationQueriesSchemes,参照支付宝
6、在需要的地方导入#import "UPPaymentControl.h"
7、AppDelegate.m文件中,增加引用代码:
8、根据后台返回数据发起支付
在发起支付的界面做银联回调的监听,并在监听返回支付成功(也就是payOk:方法中)时调用自己后台的接口再次确认是否真正支付成功
9、官方集成文档写的不错,在你下载的demo里面