iOS-支付宝支付的实现
来源:互联网 发布:人工智能 梗 编辑:程序博客网 时间:2024/05/16 07:25
关于支付宝支付, 首先了解一下, 支付流程:
1.用户点击支付
2.客户端请求服务器用户支付
3.服务器接收请求生成金额订单等要给第三方支付的一切信息,并生成回调参数传给客户端
4.客户端接收信息(一般会再让用户确认支付或者干脆购买后是生成订单,然后才是付款)并将服务器给的信息分别传入SDK需要的参数中,调用SDK的支付方法
5.由支付宝SDK向支付宝自己的服务器发出支付请求,支付宝的服务器接收支付请求处理成功后,给客户端本身与公司的后台都发送一条支付成功的消息,客户端与后台根据这条消息再做处理.
开发步骤
第一步: 仔细看开发文档, 并 下载 SDK
开发文档 很重要, 建议先把开发文档仔仔细细看一遍, 可以避免很多坑, 特别是交互流程:
第二步: 集成 SDK
1 . 将 SDK 拖进 工程2 . 在Build Phases 选项卡的 Link Binary With Libraries 中,增加以下依赖:
添加SDK依赖的类库
3 . 设置为URL Schemes
4 . 添加支付逻辑代码,完成支付过程
在 AppDelegate.m 中,
#import <AlipaySDK/AlipaySDK.h>//支付宝支付
API调用说明
发起支付:
orderString
由后端统一生成,appScheme
就是环境配置中设置的URLScheme[[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) { //支付结果返回 NSLog(@"reslut = %@",resultDic);
//成功处理支付结果:在AppDelegate的以下三个方法中调用,这里调用方法单独封装出来
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
return YES;}NSString *urlStr = [NSString stringWithFormat:@"%@",url]; if ([url.host isEqualToString:@"safepay"]) { //判断支付宝回调 //跳转支付宝钱包进行支付,处理支付结果 [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) { //TY_Log(@"result = %@",resultDic); //处理支付结果 }]; }else if ([sourceApplication isEqualToString:@"com.tencent.xin"] && [urlStr containsString:@"pay"]){ //判断微信回调 TYLLog(@"跳转微信支付处理支付方式结果"); return [WXApi handleOpenURL:url delegate:self]; }
// NOTE: 9.0以后使用新API接口- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options {
return YES;}NSString *urlStr = [NSString stringWithFormat:@"%@",url]; if ([url.host isEqualToString:@"safepay"]) { //判断支付宝回调 //跳转支付宝钱包进行支付,处理支付结果 [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) { //TY_Log(@"result = %@",resultDic); //处理支付结果 }]; }else if ([sourceApplication isEqualToString:@"com.tencent.xin"] && [urlStr containsString:@"pay"]){ //判断微信回调 TYLLog(@"跳转微信支付处理支付方式结果"); return [WXApi handleOpenURL:url delegate:self]; }
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url{
}[WXApi handleOpenURL:url delegate:self];
0 0
- iOS-支付宝支付的实现
- iOS 支付宝支付
- ios 支付宝支付
- iOS 支付宝支付
- IOS支付宝支付
- iOS 支付宝支付
- 支付宝支付iOS
- iOS 支付宝支付
- ios 支付宝支付
- iOS支付宝支付
- iOS支付宝支付
- iOS- 支付宝支付
- ios支付宝支付
- iOS 支付宝支付
- 支付宝支付iOS
- iOS 支付宝支付
- iOS 支付宝支付的使用
- 关于支付宝支付界面的实现
- 说说 JavaScript 对 DOM 的操作技术
- GIT提交流程相关命令
- Linux下vmstat调优工具的深入分析
- 运用php做投票题,例题
- tensorflow mnist.py分析
- iOS-支付宝支付的实现
- 欢迎使用CSDN-markdown编辑器
- 2017GDCPC题解(未完)
- SCI分区方法---JCR期刊分区及其检索方法
- 简单的打包文件夹bat脚本
- 添加系统属性:Settings.system和SystemProperties
- SQL的连接使用
- 复选框式查询 例题租房子
- spring+jpa配置加密的数据库信息