美文网首页iOS常用
iOS支付宝支付集成(2020)

iOS支付宝支付集成(2020)

作者: 杰小冷_4957 | 来源:发表于2020-10-21 09:49 被阅读0次

学而时习之,不亦悦乎,大家好,我是张杰。

iOS开发支付模块分为两个部分:

1、调取外部支付,例如支付宝、微信、银联等。

2、苹果内购。

前面我们已经讲过苹果内购,现在有朋友问能不能出一个详细的支付宝支付流程,刚好我也想复习一下,下面我们来实现一下吧。

一、支付宝。

1、登录支付宝开放平台 https://open.alipay.com/platform/home.htm
注册或者登录,然后创建应用,关联商户号,设置签名,拿到密钥和AppID还有商户ID 就可以开始了,这个事情一般是运营或者后台来做,基本轮不到开发来搞,如果没有人搞,老板信任你,账号密码给你了你也可以分分钟搞定。这里我是端着小板凳在监理电脑面前和她一起弄的,就没有截图了。
有疑问看这里:https://opendocs.alipay.com/open

2、现在一般三方库或者SDK用pod管理,如果你的项目不是pod管理的,可以看我的这篇文章:https://www.jianshu.com/p/366eef7c2472
如果你不想用pod或者变换有难度,那就手动导入SDK吧 看这里:https://opendocs.alipay.com/open/204/105295
下面将pod导入,打开项目中的podfile文件

   pod 'AlipaySDK-iOS'

打开终端,项目拖入

   pod install

3、AppDelegate里导入头文件

#import <AlipaySDK/AlipaySDK.h>

设置代码

// NOTE: 9.0以后使用新API接口
- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options
{
if ([url.host isEqualToString:@"safepay"]) {
    // 支付跳转支付宝钱包进行支付,处理支付结果
    [[AlipaySDK defaultService] processOrderWithPaymentResult:url standbyCallback:^(NSDictionary *resultDic) {
        NSLog(@"result = %@",resultDic);
    }];
    
    // 授权跳转支付宝钱包进行支付,处理支付结果
    [[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 = [result componentsSeparatedByString:@"&"];
            for (NSString *subResult in resultArr) {
                if (subResult.length > 10 && [subResult hasPrefix:@"auth_code="]) {
                    authCode = [subResult substringFromIndex:10];
                    break;
                }
            }
        }
        NSLog(@"授权结果 authCode = %@", authCode?:@"");
    }];
}else{
    return [WXApi handleOpenURL:url delegate:self];
}
return YES;
}

项目设置


551603244534_.pic_hd.jpg

然后在点击支付按钮处调用:

    NSString *appScheme = @"ruichaoalisdk";
    // NOTE: 将签名成功字符串格式化为订单字符串,请严格按照该格式
    NSString *orderString = @"后台给的订单拼接字符串";

    // NOTE: 调用支付结果开始支付
    [[AlipaySDK defaultService] payOrder:orderString fromScheme:appScheme callback:^(NSDictionary *resultDic) {
        NSLog(@"reslut = %@",resultDic);
        
    }];

至此,客户端流程完毕。总结一下:客户端要做的很简单,导入SDK,调用后台接口拿到 "订单拼接字符串",调用SDK,根据返回处理具体业务就好了。

如果有错误或者还有其他问题,可以联系我:zhangjieiossky@163.com,谢谢

相关文章

  • 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集成支付宝-Swift版

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

  • 集成支付、第三方登录知识总结

    1、玩转iOS开发:集成 WeChat SDK - 支付篇2、玩转iOS开发:集成 AliPay - 支付宝

  • iOS&Android集成支付宝-server篇(PHP

    iOS&Android集成支付宝-server篇(PHP) 在上一篇文章《iOS集成支付宝-Swift版》中,我介...

  • iOS 支付宝集成流程

    iOS 集成支付宝支付 SDK下载 集成支付宝首先是去官网下载SDK https://doc.open.alipa...

网友评论

    本文标题:iOS支付宝支付集成(2020)

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