iOS支付宝集成详细流程
实现支付宝支付的准备工作:
1.向支付宝签约,成为支付宝的商户
签约完成后,支付宝会提供一些必要的数据给我们
商户ID:partner
账号ID:seller 即支付宝账号
签约需要营业执照
2.获取支付相关的 私钥和密钥,这两个东西为了数据安全
上面这几个东西只要签约成功就可以看到
3.下载支付宝的SDK
下载网址: http://doc.open.alipay.com/doc2/detail?treeId=59&articleId=103563&docType=1
上面部分是准备工作,从这里开始集成
4.下载好之后打开客户端Demo—>iOS SDK Demo解压缩,打开案例,运行程序
可能为有一个active为YES的错误,只要在build Setting里搜索这个active改为NO即可,再清除运行就好了
5.将Demo中的SDK提取出来,提取以下几个文件
openssl、Order.h、Order.m、Util、libcrypto.a、libssl.a、AlipaySDK.bundle
将这几个文件放到一个文件夹中,然后添加到项目中Order.h、Order.m这两个文件可加可不加
添加进去编译,发现报错
5.1添加.pch文件 打开项目Supporting Files—>右键NewFile—>iOS—>Other—>PCH File—>选中Targets第一个选项—Create—然后在新创建的PCH文件中添加 #import <Foundation/Foundation.h>
现在PCH文件还不能使用,需要添加PCH文件 点击项目—>buildSetting—>右边搜索pref—>将Apple LLVM7.0 Language的
第二个选项Precompile Prefix Header后面的NO改成YES ,第三个选项路径 直接将项目的名字复制
比如我这里的项目名字是:01支付宝集成
将这个名字复制到Prefix Header路径上,双击这个选项出现一个白框,将名字粘贴到这个白框中,然后
在后面紧接/PrefixHeader.pch,完成的输入应该为 01支付宝集成/PrefixHeader.pch
01支付宝集成 项目名称
即 项目名称/PrefixHeader.pch 这样的格式
到这里第一步完成
5.2导入相应的依赖库,大部分其实是不用导入的,但是为了保险起见,我们全都导入进去
点击支付宝的Demo,点击项目—>Build Phases—>第三个Link Binary WithLibraries查看官方导入的依赖库
然后我们也导入相应的依赖库,点击+号添加相应的依赖库
注意,Xcode7以后一些库的后缀名字改了 libc++.dylib 变成了libc++.tbd
这里附一张需要添加的依赖库的截图

即注意添加库的时候 别以为没有了,是改了后缀名而已
5.3添加好相应的库以后,编译,会有一个错误,提示 #include <openssl/asn1.h> 这个文件未找到
是因为Xcode6以后导入是有问题的,以前Xcode5导入是没有问题的,只要配置一下就行了
因为是导入.a文件的时候它找不到里面的头文件,意思是找不到.a文件里面的这个头部文件,意思是找不到文件路径,那怎么配置呢,配置一下,指定一下路径就行了
点击项目—>build Setting 然后在右边搜索header S 在第二个选项Header Search Paths 双击之后点击左下角的+号,然后填写 $(SRCROOT)/01支付宝集成/支付宝SDK 即可
注意
01支付宝集成 为你的项目名称
支付宝SDK 为你导入的支付宝SDK文件夹的名字
然后清除一个,重新运行即可
5.4 除了上述依赖库还需要一个框架,支付宝的SDK框架,在支付宝的示例程序中有一个框架名为AlipaySDK.framework的框架,右键show in Finder 找到这个框架,然后复制,在 你的项目中点击支付宝SDK文件,show in Finder ,将AlipaySDK.framework粘贴到该目录下, 这时候在项目中不会显示这个框架,然后点击支付宝SDK文件名,右键Add File To”” 就会打开文件目录,支付宝SDK(你自己的支付宝SDK文件夹名字,就是我们刚才导入的那个文件夹名字)—>选中AlipaySDK.framework,点击右下角的add,然后就添加进去了,要使用的时候只要导入头文件
#import <AlipaySDK/AlipaySDK.h>就可以使用了
到这一步说明支付宝已经集成到项目中去了,完毕!
iOS支付宝集成详细流程的更多相关文章
- iOS支付宝集成时遇到的问题整理(2)
1.集成支付宝SDK编译报错#include<openssl/asn1.h>这一行 “openssl/asn1.h”file not found 解决方法:在BuildSetting 里 ...
- iOS证书申请详细流程
一.事前准备 1.1 准备苹果帐号 首先您需要有一个苹果的开发者帐号,一个mac系统.如果没有帐号可以打开申请加入苹果的开发者计划.如何申请网上有详细的介绍,在此不多做介绍. 如果您已经有了一个帐号, ...
- java开发支付宝支付详细流程_demo的运行
首先我要吐槽一下支付宝的开放平台简直就是一个迷宫,赞同的顶一下,下面我把要下载的地址给贴出来要不真不好找: 一.准备工作 1.签名工具下载 https://docs.open.alipay.com/2 ...
- iOS支付宝集成时遇到的问题整理(1)
1.模拟器上运行正常,但是真机调试时报编译链接错误 :ld: '/Users/wangqipeng/Desktop/iOS支付宝官方文档/AlixPayDemo/libcrypto.a(bio_lib ...
- iOS支付宝集成步骤;王刚韧的技术博客
- iOS app集成支付宝支付流程及后台php订单签名处理
iOS app集成支付宝支付流程 1: 开通支付宝商户 由公司去支付宝 https://b.alipay.com/order/serviceIndex.htm 签约支付宝开通支付宝商家: 2:商户支付 ...
- iOS开发之支付宝集成
项目中要用到支付功能,需要支付宝,微信,银联三大支付,所以打算总结一下,写两篇文章,方便以后的查阅, 大家在做的时候也能稍微参考下,用到的地方避免再次被坑.这是第二篇支付宝集成,第一篇银联支付在这里. ...
- iOS开发:集成支付宝(遇见的坑和便捷撸代码)
开发iOS最重要的就是支付了,天朝之内最常用的就是支付宝了,下面就以自己的经历说明如何集成支付宝+遇见的坑. 首先,集成支付宝最好别使用Cocoapods,很多人都说使用起来很方便,可是我每次只要使用 ...
- iOS支付宝,微信,银联支付集成封装(上)
一.集成支付宝支付 支付宝集成官方教程https://docs.open.alipay.com/204/105295/ 支付宝集成官方demo https://docs.open.alipay.com ...
随机推荐
- 认识SuperSocket 1.6.4
SuperSocket 是一个轻量级的可扩展的 Socket 开发框架,由江振宇先生开发,之所以选用它是因为一下几点恰好复合项目需求: 开源,基于Apache 2.0协议,可以免费使用到商业项目. 高 ...
- Linux下打开串口设置
给出打开串口函数 int open_tty(char tty[]) { int fd; char tty_path[32]={0}; sprintf(tty_path,"/dev/%s&qu ...
- No Dialect mapping for JDBC type: -9
由于项目中使用的是hibernate 4.35版本和sqlserver 2008数据库.所以,自定义方言时,需要和老版本做区别: public class MySQLServerDialect ext ...
- 高手详解SQL性能优化十条建议
1.查询的模糊匹配 尽量避免在一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置的百分号会导致相关列的索引无法使用,最好不要用. 解决办法: 其实只需要对该脚本略做改进,查询速度便 ...
- Angular开发Tips
1.在使用$routeProvider的时候,需要让模块依赖ngRoute,否则会提示找不到服务,示例: angular.module('module1', ['ngRoute']) .config( ...
- 用emacs的org2blog组件写cnblogs博客 -- 环境配置及使用
Table of Contents 配置 使用 创建一篇博文并发布 更新一篇博文 删除一篇博文 待办 本文给出了一个安装.配置org2blog的方法,实现在emacs中书写blog文章.并发布到cnb ...
- log4j的一些问题
今天,在学习log4j的时候发现了一点问题,关于level的问题. log4j.rootLogger=error, console, file , fileerror log4j.logger.com ...
- SpringMVC——对Ajax的处理(包含 JSON 类型)
一.首先要搞明白的一些事情. 1.从客户端来看,需要搞明白: (1)要发送什么样格式的 JSON 数据才能被服务器端的 SpringMVC 很便捷的处理,怎么才能让我们写更少的代码,如何做好 JSON ...
- Gradle学习系列之六——使用Java Plugin
在本系列的上篇文章中,我们讲到了如何自定义Property,在本篇文章中,我们将讲到如何使用java Plugin. 请通过以下方式下载本系列文章的Github示例代码: git clone http ...
- mysql中如何把字符串转换成日期类型
select date_format('2013-03-09','%Y-%m-%d'); select date_format('2013-03-09','%y-%m-%d'); select STR ...