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 ...
随机推荐
- SVN上传代码
概述 SVN上传代码 使用SVN工具上传代码到新浪SAE 1.下载SVN工具http://tortoisesvn.net/downloads.html 2.创建一个文件夹,Checkout,输入SAE ...
- How can I exclude directories from grep -R?
‘--exclude-dir=dir’ Exclude directories matching the pattern dir from recursive directory searches. ...
- Nginx: could not build the server_names_hash 解决办法
# /etc/init.d/nginx reload * Reloading nginx configuration nginx [fail] # nginx -t nginx: [emerg] co ...
- Linux动态库的搜索路径
下面是目录结构: pengdl@localhost:~$ tree test/test/├── fun.c├── Fun.h└── t1 └── main.c 1 directory, 3 fi ...
- Javascript起源...
Javascript的设计思路是这样的: (1)借鉴C语言的基本语法: (2)借鉴Java语言的数据类型和内存管理: (3)借鉴Scheme语言,将函数提升到"第一等公民"(fir ...
- U3D自定义Inspector项未触发保存事件的解决方案
1.问题描述与解决方案 1.1.说明 应该只有起步做U3D编辑器插件的部分同行需要了解本文. 该问题源于在做UI插件的时候,发现Inspector面板上手动修改值后,没有触发U3D编辑器本身的修改事件 ...
- sencha combobox下拉框不用jsonstore,直接使用字符串数组做数据源
combobox下拉框的store除了可以选择一个jsonstore来加载数据,还可以直接使用符串Array做数据源. { xtype: 'combobox', fieldLabel: 'Label' ...
- knockout的依赖属性dependentObservable和observable的监控的使用
1.Knockout是在下面三个核心功能是建立起来的:监控属性(Observables)和依赖跟踪(Dependency tracking) 声明式绑定(Declarative bindings) 模 ...
- 使用layout_weight设置控件占屏幕百分比
水平LinearLayout中如果A,B两个控件都是layout_weight="1",那么控件在水平方向占比为A的layout_width+1/2空闲空间,B的layout_wi ...
- Treap树的基础知识
原文 其它较好的的介绍:堆排序 AVL树 树堆,在数据结构中也称Treap(事实上在国内OI界常称为Traep,与之同理的还有"Tarjan神犇发明的"Spaly),是指有一个随 ...