美文网首页支付支付类iOS
iOS 支付宝详细集成总结

iOS 支付宝详细集成总结

作者: 阳光的大男孩儿 | 来源:发表于2016-03-21 13:56 被阅读2801次

    前提是你已经在支付宝平台上创建了应用,并且已经获得了移动支付的能。如果没有就自己去支付宝开放平台,申请注册。支付宝开放平台

    支付宝的快速集成:网址   (直接下载的是支付宝的demo,快递集成支付)

    1.Mac生成RSA私钥、公钥Mac 使用OpenSSL生成 DSA公钥与私钥

    2.生成的rsa_private_key.pem文件与rsa_public_key.pem,用文本编辑器打开pem文件,复制公钥对应的字符串上传到商户的支付平台里面。

    3.生成的dsa_private_key.pem文件与dsa_public_key.pem,用文本编译器打开pem文件,复制公钥对应的字符串上传到支付宝商户平台里面。

    4.根据自己的商户,查询key,并且上传字符串。 

    5.下载支付宝Demo与SDK。

    6.创建一个自己的工程名aliPay。

    7.根据支付宝Demo与文档,导入SDK 

    8.添加依赖库:

    添加依赖库

    9.配置网络设置:

    配置网络设置

    10.添加依赖库以及支付宝其中的SDK的文件,如下目录:

    目录结构

    11.添加 URL Schemes如下图:

    添加URL  Schemes

    12.在AppDelegate.m里面引入头文件#import<AlipaySDK/AlipaySDK.h>,此处按着支付宝的demo里面添加就好。

    12.1运行编译,快捷键commd+B,会报如下错误:

    'openssl/asn1.h' file not found.

    错误信息

    1>原因解释:include<>跟# include""的区别

    2>如何改正错误,由于是文件“Util”与“openssl”的文件路径不对:

    开始的时候,我直接把这两个文件拖到工程里面,没有考虑路径问题。也没有设置这个Header Search Paths的路径。

    12.2改正方法:

    12.2.1打开桌面上的你自己创建的demo,找到文件的根目录,并把两个文件夹直接放到根目录下,如下gif图。

    把文件夹放到根目录下

    12.2.2添加文件夹如下gif图:

    添加文件

    12.3 Header Search Paths的路径:

    更改文件路径

    12.4 更改完之后,卧槽,竟然还有错误,心脏差点崩溃了,错误信息如下:

    Linker commd failed with exit code 1 (use -v see invocation)

    错误信息

    12.4.1修改方法:

    注意:要是没有Library Search Paths,在搜索栏里,直接搜索Library Search Paths。

    更改Library Seaarch Paths路径

    完成以上步骤,编译commd+B运行一下,就会添加成功。之后,开始植入代码。

    13.填写代码在ViewController.m 里面,如下所示:

    13.1-(void)pay; 是一个按钮的点击方法,在这就不写了。

    代码展示

    13.2产生随机的订单号:

    13.3此处注意三个参数:参数说明。

    partner:合作身份者ID,以2088开头由16位纯数字组成的字符串。

    seller:支付宝收款账号,手机号码或邮箱格式。

    prevateKey:商户方的私钥,pkcs8格式。

    前两个参数很简单,就是第三个参数很麻烦:

    1>根据第一步,生成的两个公钥与私钥文件,用文本编译器打开之后的字符串就是PKCS8 文件类型,直接复制粘贴就行。公钥需要上传到支付宝商户里面的公钥。私钥直接复制到这个工程对应的参数里面。

    2>由于在校验私钥的过程中,需要检查私钥内容,因此需要保证私钥的里面的字符串的开头、结尾与解析的RSADataSigner.m(在Util文件里面)文件里面,保持一致。如下图:iOS支付宝快速集成 

    添加RSA 三个字母 保证相同的字符串

    3>注意在上传公钥的过程中一定要复制正确,只要里面的字符串,不要上传头与尾。下面是对应的公钥图片:

    rsa_public_key.pem:

    rsa_public_key.pem

    dsa_public_key.pem:

    dsa_public_key.pem

    总结:

    到这基本上就可以实现支付了。我是经过了一个月的时间,今天又重新走了一遍支付,感觉里面好多坑,想不起的感觉真是不爽,但是感觉最坑爹的还是特么的微信支付。不说了,说多了都是泪呀。

    参考链接:

    1.iOS开发支付宝集成

    2.iOS项目集成"支付宝"超级简单

    相关文章

      网友评论

      本文标题:iOS 支付宝详细集成总结

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