快速集成支付宝支付步骤及注意事项(原创)

本文介绍了iOS快速集成支付宝支付的方法,本文中介绍的方法是经过一次封装,因此配置完成之后调用仅需一行代码即可支付宝支付,非常的方便,希望大家喜欢。

我只是根据官方的文档,对支付宝的SDK做了进一步封装,其中密钥的生成很简单,需要看官方的文档,官方的文档我在工程附件目录里也有一份,如果需要马上集成,没工夫研究的话,可以大致看一下密钥的生成即可,其他的配置我会在下面进行讨论

要在iOS应用里集成支付宝支付,需要公司和支付宝签约,然后生成相应的密钥。密钥的生成支付宝的开发文档里已经说的非常清楚了,这里就不再讨论

以上是作者原文。

附上作者自己封装的支付宝支付SDK在git链接点击打开链接

将工程中的IntegratedAlipay文件夹导入工程中,记得选copy

点击项目名称,点击“Build Settings”选项卡,在搜索框中,以关键字“search” 搜索,对“Header Search Paths”增加头文件路径:“$(SRCROOT)/项目名称/IntegratedAlipay/AlipayFiles”(注意:不包括引号,如果不是放到项目根目录下,请在项目名称后面加上相应的目录名)

然后不包括引号是这样的如图(小细节)

导入支付宝依赖的库

附上一段官方文档的话:

步骤2:在需要调用AlipaySDK的文件中,增加头文件引用。


1

#import

<AlipaySDK/AlipaySDK.h>

步骤3:如果你的app基于9.0编译,那么为了适配iOS9.0中的App Transport Security(ATS)对http的限制,这里需要对支付宝的请求地址alipay.com、alipayobjects.com做例外,在app对应的info.list中添加如下配置(文中以XML格式描述)。


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

<key>NSAppTransportSecurity</key>

    <dict>

        <key>NSExceptionDomains</key>

        <dict>

            <key>alipay.com</key>

            <dict>

                <key>NSIncludesSubdomains</key>

                <true/>

                <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>

                <true/>

                <key>NSTemporaryExceptionMinimumTLSVersion</key>

                <string>TLSv1.0</string>

                <key>NSTemporaryExceptionRequiresForwardSecrecy</key>

                <false/>

            </dict>

            <key>alipayobjects.com</key>

            <dict>

                <key>NSIncludesSubdomains</key>

                <true/>

                <key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>

                <true/>

                <key>NSTemporaryExceptionMinimumTLSVersion</key>

                <string>TLSv1.0</string>

                <key>NSTemporaryExceptionRequiresForwardSecrecy</key>

                <false/>

            </dict>

        </dict>

    </dict>

说明:

如果商户配置了如下的配置:


1

2

3

4

<key>NSAppTransportSecurity</key>

    <dict>   

        <key>NSAllowsArbitraryLoads</key><true/>

    </dict>

则上述的NSAppTransportSecurity可以不配置。

对于网络配置。

接下来

导入SDK  导入库之后 command + B 编译一下。 如果没错误最好。 如果有错误参照如下可能出现的问题

1.

问题详情:

(null): URGENT: all bitcode will be dropped because ‘xxxx’ was built without bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. Note: This will be
an error in the future.

问题分析:

从上述的错误中应该可以看出,这是因为一个第三方的库不兼容,我的工程中开启了 ENABLE_BITCODE (应该是升级之后自动转换的),而这个第三方的库在编译的时候没有 enable bitcode,所以导致上诉问题。

解决方法:

应该是有两种吧,一种就是换成 enable bitcode 的第三方库,再有一种就是将工程的 ENABLE_BITCODE 设置为 false 就可以了。

因为我这里不太方便换库,所以,就把工程的设置给改了一下。

具体操作方法如下:

2.在openssl中他定义的一些东西。不能与你项目中自己定义的宏有同名的

原来我项目中就有STORE    后来我改成了   STORe

如上图

3. SDK中  Order.m 文件是用MRC内存管理模式写的。 会有release

所以 不愿意手动删的  可以改成ARC

如图

(微信支付同理, 不过是有2个文件要改。支付宝是1个)

其他问题待遇到。运行成功

接下来

找到文件

在AlipayHeader.h中修改你需要的内容 例如

kPartnerID、

kSellerAccount、

kNotifyURL、

kAppScheme等。

对于这个scheme是回调时需要的要在APP中设置

如图

图中圈内内容  要和头文件中一样

只需在需要跳转支付的地方调用此方法即可

在App delegate中添加回调方法,以下是官方文档内的描述

步骤5:配置支付宝客户端返回url处理方法。

(外部存在支付包钱包,支付宝钱包将处理结果通过url返回。)

如示例AliSDKDemo\APAppDelegate.m文件中,增加引用代码:


1

#import

<AlipaySDK/AlipaySDK.h>

在@implementation AppDelegate中增加如下代码:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

-
(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) {

    //【由于在跳转支付宝客户端支付的过程中,商户app在后台很可能被系统kill了,所以pay接口的callback就会失效,请商户对standbyCallback返回的回调结果进行处理,就是在这个方法里面处理跟callback一样的逻辑】

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

        }];

    }

    if

([url.host isEqualToString:@
"platformapi"]){//支付宝钱包快登授权返回authCode

 

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

            //【由于在跳转支付宝客户端支付的过程中,商户app在后台很可能被系统kill了,所以pay接口的callback就会失效,请商户对standbyCallback返回的回调结果进行处理,就是在这个方法里面处理跟callback一样的逻辑】

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

        }];

    }

    return

YES;

}

好了之后。

在AlipayRequestConfig.m中。可以看到支付宝返回的内容

以下是官方文档给出的错误码描述

到这里基本就结束了。

之后如果你的秘钥错误 可能会出现如下问题

用模拟器测试可能提示

用真机测试是这样的

等申请好秘钥填好所有信息之后运行一切正常

时间: 2024-10-23 04:07:34

快速集成支付宝支付步骤及注意事项(原创)的相关文章

高速集成支付宝支付步骤及注意事项(原创)

本文介绍了iOS高速集成支付宝支付的方法.本文中介绍的方法是经过一次封装,因此配置完毕之后调用仅需一行代码就可以支付宝支付.很的方便,希望大家喜欢. 我仅仅是依据官方的文档,对支付宝的SDK做了进一步封装,当中密钥的生成非常easy.须要看官方的文档,官方的文档我在project附件文件夹里也有一份,假设须要立即集成,没工夫研究的话,能够大致看一下密钥的生成就可以,其它的配置我会在以下进行讨论. 要在iOS应用里集成支付宝支付,须要公司和支付宝签约,然后生成对应的密钥.密钥的生成支付宝的开发文档

2分钟快速集成支付宝快捷支付

本文介绍了iOS快速集成支付宝支付的方法,本文中介绍的方法是经过一次封装,因此配置完成之后调用仅需一行代码即可支付宝支付,非常的方便,希望大家喜欢. 我只是根据官方的文档,对支付宝的SDK做了进一步封装,其中密钥的生成很简单,需要看官方的文档,官方的文档我在工程附件目录里也有一份,如果需要马上集成,没工夫研究的话,可以大致看一下密钥的生成即可,其他的配置我会在下面进行讨论. 要在iOS应用里集成支付宝支付,需要公司和支付宝签约,然后生成相应的密钥.密钥的生成支付宝的开发文档里已经说的非常清楚了,

iOS开发:2分钟快速集成支付宝快捷支付

?这篇文章介绍了iOS快速集成支付宝支付的方法,这篇文章中介绍的方法是通过一次封装,因此配备完结今后调用仅需一行代码即可支付宝支付,非常的便当,希望我们喜欢. 我仅仅根据官方的文档,对支付宝的SDK做了进一步封装,其间密钥的生成很简略,需要看官方的文档,官方的文档我在工程附件目录里也有一份,假设需要立刻集成,没工夫研讨的话,可以大致看一下密钥的生成即可,其他的配备我会在下面进行谈论. 要在iOS运用里集成支付宝支付,需要公司和支付宝签约,然后生成相应的密钥.密钥的生成支付宝的开发文档里现已说的非

Android 集成支付宝支付详解

一说到支付宝,相信没有人不知道,生活中付款,转账都会用到. 今天来详细介绍下在Android中如何集成支付宝支付到自己的APP中去.让APP能够拥有方便,快捷的支付功能. 准备工作: 商户在b.alipay.com里进行产品签约RSA私钥及公钥生成上传RSA公钥,签名验证接口调用 一.商户在b.alipay.com里进行产品签约 商户或者开发者到b.alipay.com进行产品签约,获取商户的PID. 二.RSA私钥及公钥生成 生成方式一(推荐):使用支付宝提供的一键生成工具: Windwos:

iOS app集成支付宝支付流程及后台php订单签名处理

iOS app集成支付宝支付流程 1: 开通支付宝商户 由公司去支付宝 https://b.alipay.com/order/serviceIndex.htm 签约支付宝开通支付宝商家: 2:商户支付宝开通无线支付功能 开通商户支付宝之后,虽然可以获取到应用使用的 key和id,如果如果不开通无线支付功能的话,会在app集成的时间 提示商户未开通无线支付功能的错误: 开通商户支付宝-无线支付功能,请在商户支付宝后台,按要求提供审核材料开通: 3:在商户支付宝后台下载SDK 在商户支付宝后台,即可

SpringSide集成支付宝支付功能

网络购物很流行,那么最流行的支付手段估计应该是支付宝了,那么怎么样将支付宝集成到自己的环境中呢,今天我来讲一下如何在springside框架中集成支付宝支付功能. 首先,我们去支付宝商家服务页面去注册和申请支付功能,并在那里下载sdk开发包https://b.alipay.com/order/productDetail.htm?productId=2012111200373124,这个是支付宝的即时到账收款功能,然后下面有一个流程的介绍,我们选择下面的技术集成,先下载sdk开发包,下载完成之后解

iOS支付宝支付步骤

1:先与支付宝签约,获得商户ID(partner)和账号ID(seller) 2:下载相应的公钥私钥文件(加密签名用) 3:下载支付宝SDK 4:生成订单信息5:调用支付宝客户端,由支付宝客户端跟支付宝安全服务器打交道6:支付完毕后返回支付结果给商户客户端和服务 , SDK里有集成支付宝功能的一个Demo> 集成支付功能的具体操作方式,可以参考Demo //生成订单信息及签名请求参数没有 return_URL这个参数,商户可以根据自身情况选择签名方法NSString *[email protec

iOS集成支付宝支付

一. 开发前准备 iOS 支付宝SDK下载地址:(内含iOS Android 服务端demo及SDK) http://doc.open.alipay.com/doc2/detail?treeId=59&articleId=103563&docType=1 二. 集成支付宝 1.解压支付宝钱包支付接口开发包2.0标准版(iOS 15.0.2).zip(忽略版本号) 2.创建个文件夹,找到如下文件,放到文件夹里.便于将文件统一拷入项目 3.创建项目并将支付宝SDK添加进项目(项目创建不再演示)

iOS开发集成支付宝支付、支付宝&amp;微信支付

支付宝支付: 参考链接:https://www.jianshu.com/p/60175e525c0e https://blog.csdn.net/zhonggaorong/article/details/51750341 https://www.jianshu.com/p/5dd22475d6f3 支付宝&微信支付: 参考链接:https://www.jianshu.com/p/23a7a61f8e89 https://www.jianshu.com/p/057ff761a6cc 微信分享&