前言
- 申请支付功能及公钥密钥
- 运行apliSDKDemo(官方提供)
- 在自己的demo上完成支付
准备
- 默认你已在支付宝开发平台注册移动app
- 默认你已开通移动支付功能(不需要保护费,这比tx好)
- 记录下你的PID:partner_id
- 记录下你的APPID:app_id
- 生成RSA公钥及私钥
- 上传RSA公钥
运行demo
- 下载alipayDemo
- demo需要填写三个参数,partnerID、seller(公司的支付宝账号)、privateKey.
- 在填写privateKey时遇到了坑,google了两种解决方法:
- 第一
1)在RSADataSigner.m文件中 搜索代码 [result appendString:@"-----BEGIN PRIVATE KEY-----\n"]; 将其改成 [result appendString:@"-----BEGIN RSA PRIVATE KEY-----\n"];
2)在RSADataSigner.m文件中 搜索代码 [result appendString:@"\n-----END PRIVATE KEY-----"]; 将其改成 [result appendString:@"\n-----END RSA PRIVATE KEY-----"]; - 第二
将RSA私钥转换成PKCS8格式,命令执行 openssl pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt
coding
- 添加依赖库
- 添加AlipaySDK.framework、libcrypto.a、libssl.a以及官方demo的openssl、Utill文件夹
- 理论上这样就可以了,但是测试时错误不断,一下一条一条的解决
Cannot find interface declaration for 'NSObject', superclass of 'Base64'
这个错误是缺少头文件,建议添加.pch,并添加
#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h> - 点击项目名称,点击“Info”选项卡,在“URL Types”选项中,点击“+”,在“URL Schemes”中输入“alisdkdemo”。“alisdkdemo”来自于文件“APViewController.m”的NSString *appScheme = @“alisdkdemo”;。
注意:这里的URL Schemes中输入的alisdkdemo,为测试demo。
实际商户的app中要填写独立的scheme,建议跟商户的app有一定
的标示度,要做到和其他的商户app不重复,否则可能会导致支付
宝返回的结果无法正确跳回商户app。
------等待更新----------------------------------