美文网首页
iOS 集成支付宝支付遇到的问题

iOS 集成支付宝支付遇到的问题

作者: 路边的风景呢 | 来源:发表于2018-12-25 17:12 被阅读10次

首先 我得说一下 iOS 的不能使用 沙箱数据去做测试,一定要用正式的APPID 还有公钥 私钥去配置 我就是在这个地方卡了两天,所以写一下记录一下!

然后接下来就是 很平常的步骤了 

1 . 先去下载SDK,然后倒入到你的文件里面 

2 . 就是导入依赖 如下图所示  AlipaySDK.framework 这个是你下载好的SDK的包里面就有的

3 . 导入后就是在你的Appdeleagte.m 里面 和你调用支付的地方   写入头文件 #import<AlipaySDK/AlipaySDK.h>

( 1 ) Appdeleagte.m里面写入这两个方法  记住不需要做其他的操作里面的通知也写好了

//支付宝回调

- (BOOL)application:(UIApplication*)application openURL:(NSURL*)url sourceApplication:(NSString*)sourceApplication annotation:(id)annotation

{

    if ([url.host isEqualToString:@"safepay"]) {

        // 支付跳转支付宝钱包进行支付,处理支付结果

        [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {

            NSLog(@"result = %@",resultDic);

            [[NSNotificationCenter defaultCenter] postNotificationName:@"ALiPaySuccess" object:nil ];

        }];

        // 授权跳转支付宝钱包进行支付,处理支付结果

        [[AlipaySDK defaultService] processAuth_V2Result:url standbyCallback:^(NSDictionary *resultDic) {

            NSLog(@"result = %@",resultDic);

            // 解析 auth code

            NSString*result = resultDic[@"result"];

            NSString*authCode = nil;

            if (result.length>0) {

                NSArray*resultArr = [resultcomponentsSeparatedByString:@"&"];

                for (NSString*subResult in resultArr) {

                    if (subResult.length>10&& [subResulthasPrefix:@"auth_code="]) {

                        authCode = [subResultsubstringFromIndex:10];

                        break;

                    }

                }

            }

            NSLog(@"授权结果 authCode = %@", authCode?:@"");

        }];

    }

    returnYES;

}

// NOTE: 9.0以后使用新API接口

- (BOOL)application:(UIApplication*)app openURL:(NSURL*)url options:(NSDictionary *)options

{

    if ([url.host isEqualToString:@"safepay"]) {

        // 支付跳转支付宝钱包进行支付,处理支付结果

        [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {

            NSLog(@"result = %@",resultDic);

            [[NSNotificationCenter defaultCenter] postNotificationName:@"ALiPaySuccess" object:nil ];

        }];

        // 授权跳转支付宝钱包进行支付,处理支付结果

        [[AlipaySDK defaultService] processAuth_V2Result:url standbyCallback:^(NSDictionary *resultDic) {

            NSLog(@"result = %@",resultDic);

            // 解析 auth code

            NSString*result = resultDic[@"result"];

            NSString*authCode = nil;

            if (result.length>0) {

                NSArray*resultArr = [resultcomponentsSeparatedByString:@"&"];

                for (NSString*subResult in resultArr) {

                    if (subResult.length>10&& [subResulthasPrefix:@"auth_code="]) {

                        authCode = [subResultsubstringFromIndex:10];

                        break;

                    }

                }

            }

            NSLog(@"授权结果 authCode = %@", authCode?:@"");

        }];

    }

    returnYES;

}

(2) 我写了一个工具类 在里面调用支付宝的支付接口

// NOTE: 调用支付结果开始支付

    [[AlipaySDK defaultService] payOrder:@"这里就是写后台返回的签完名的订单字符串" fromScheme:@"这个就是返回你的APP的标识符" callback:^(NSDictionary *resultDic) {

        intstatusCode = [resultDic[@"resultStatus"]  intValue];

        if (statusCode ==9000)

        {

        }else{

            //交易失败

            [SVProgressHUD showErrorWithStatus:@"支付异常"];

            [SVProgressHUD setDefaultStyle:SVProgressHUDStyleCustom];

            [SVProgressHUD setDefaultMaskType:SVProgressHUDMaskTypeCustom];

        }

    }];

这个就是调起支付的接口

( 3 ) 一定要记得在这里配置你们的这个就是返回你的APP的标识符 不然支付完成后是不会返回你的APP的这里要注意一下 微信的那个前面一定要填 我的没有填就不能回到自己的APP 

相关文章

  • 第三方支付问题

    支付宝 解决在iOS App中集成支付宝时遇到的RSA密钥签名问题http://www.jackyshen.com...

  • iOS有关集成支付宝问题解决方案

    今天我将把有关iOS集成支付宝sdk中遇到的问题以及解决办法写下。我在两个项目有过集成支付宝的经历,大家都会遇到 ...

  • iOS Alipay -支付宝

    iOS 集成Alipay -支付宝支付 集成 AliPay - 支付宝

  • 支付宝支付流程(I)

    参考资料:支付宝支付集成支付宝支付集成实现蚂蚁金服iOS支付集成

  • ios支付宝签名

    支付宝: iOS 支付功能概述 - 简书 1.iOS集成支付宝 - 简书 2.iOS 集成支付宝 - 简书 3.i...

  • 文章汇总

    ios iOS 网络篇 网络基础总结 支付宝集成 iOS支付宝支付集成 - demo例子集 - 博客园 理解 iO...

  • ## [iOS 支付宝支付]

    [iOS开发系列-支付宝支付] 概述 开发中支付通常都会集成支付宝支付,下面讲解支付宝的整体流程。 集成支付宝支付...

  • iOS支付宝功能集成

    iOS快速集成支付宝详解/支付宝集成获取私钥与公钥 在集成支付宝功能前,我们必须了解下什么支付宝流程,下图是支付宝...

  • iOS - 三大支付系之核心流程

    本文附带我在公司遇到的一些特别注意的小问题 请认真阅读 马云的支付宝SDK_iOS 移动支付集成开发包--《支付宝...

  • iOS集成支付宝-Swift版

    iOS集成支付宝-Swift版 如果要了解整个支付流程可以阅读文章《手机App集成微信支付&支付宝-iOS&And...

网友评论

      本文标题:iOS 集成支付宝支付遇到的问题

      本文链接:https://www.haomeiwen.com/subject/aagflqtx.html