iOS支付宝支付

前言

  • 申请支付功能及公钥密钥
  • 运行apliSDKDemo(官方提供)
  • 在自己的demo上完成支付

准备

运行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

  • 添加依赖库
来自支付宝官方文档.png
  • 添加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。
    ------等待更新----------------------------------
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容