您的位置:首页 > 移动开发 > IOS开发

iOS支付宝集成遇到的问题

2015-08-13 14:59 441 查看
最近在做集成支付宝支付功能现分享出来:

一、实现支付宝集成的前提准备

1 向支付宝申请并签约,成功支付的商户,获取商户ID(partner)和账号 ID(seller)

*申请成为支付宝的商户,需要的流程比较多,要营业执照,所以在公司开发中,这个申请会有专门的人负责,不用我们程序员去搞

2 下载相应的公钥私钥文件("用于数据加密签名用")

3下载SDK

二、支付宝集成

首先登录 https://b.alipay.com/newIndex.htm 下载支付宝 SDK

依次找到 “移动支付(无线)”
— “技术集成” — ”
请点此下载集成开发包“,如图





三、集成支付宝SDK编译报错#include<openssl/asn1.h>这一行 “openssl/asn1.h”file not found

解决方法如下:在你的Xcode里的header search paths 里添加支付宝SDK(openssl的路径)

首先自己建一个文件夹比如AliSDK,把 AlipaySDK.framework AlipaySDK.bundle、libcrypto.a、libssl.a、 openssl文件夹、util文件夹、order.h order.m等文件放在AliSDK文件夹里,把该文件托到工程里,选中该文件夹在工程右边属性窗口中复制Full
Path路径添加到header search paths里。

编译一下


报这些错,导入SystemConfiguration.framework再编译成功。

四、关键字

partner 商户 ID:支付宝给申请支付集成人的身份

seller 账号 ID:商户的支付宝帐号

tradeNO 定单编号:每一张交易定单的 ID

notifyURL 回调地址:服务器的回调地址"

appScheme 应用的回调地址:支付完成,跳回原应用时使用

signedString 数据签名字符串:防止交易信息被改

点击支付按钮调支付宝客户端时报: rsa_private read error : private key is NULL

解决方法:

1)在RSADataSigner.m文件中 搜索代码 [resultappendString:@"-----BEGIN
PRIVATE KEY-----\n"];将其改成

[resultappendString:@"-----BEGIN
RSA PRIVATE KEY-----\n"];
2)在RSADataSigner.m文件中 搜索代码 [resultappendString:@"\n-----END
PRIVATE KEY-----"];将其改成

[resultappendString:@"\n-----END
RSA PRIVATE KEY-----"]
OK 成功调起支付宝
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: