支付宝
使用支付宝进行一个完整的支付功能,大致有以下步骤:
1>先与支付宝签约,获得商户ID(partner)和账号ID(seller) (这个主要是公司的负责)
2>下载相应的公钥私钥文件(加密签名用)
3>下载支付宝SDK
4>生成订单信息
5>调用支付宝客户端,由支付宝客户端跟支付宝安全服务器打交道
6>支付完毕后返回支付结果给商户客户端和服务器
在实现支付宝过程中,我们首先需要官方的文档以及支付宝的SDK.这个第一次开发时,SDK很难找到下载地址,这里给大家留下传送门:
支付宝开发者平台:https://doc.open.alipay.com/doc2/alipayDocIndex.htm
支付宝SDK下载地址:https://b.alipay.com/order/productDetail.htm?productId=2014110308141993&tabId=4#ps-tabinfo-hash
下载成功后可以看到如下的文档:
给大家标记的是一个支付宝的开发文档.里面有详细的开发步骤.

工程开发配置
首先我们需要从官方demo中拿到我们需要的类以及依赖库,并将他们都拖入到我们的自己的工程项目中:
我们首先需要拿到官方的demo. 以下是官方demo的文件路径:

找到我们需要的文件(ps:已经给大家标记出来了).这些文件都是我们工程中需要的文件.

工程配置文件
支付宝开发工程依赖库

所有的配置完成后,工程项目可能会存在一些错误:
我们需要在该文件中引入头文件.(这些错误官方开发者文档也有说明哟)

除此之外还会有一个路径错误:

解决这个路径问题也很简单.官方文档也说的很清楚.你需要在我们的项目中设置下路径

这些配置完成后是不是编译之后就成功了呢!
(ps:请大家注意这个细节.在工程配置中设置URL Schemes,如果不设置,那么支付跳转到支付宝后,无法再回到自己的app)

这里给大家写了一个按钮关联了一个支付宝支付的方法.里面给大家写了详细的参数注释.
下载demo地址:http://pan.baidu.com/s/1o7qrTfc
银联支付
银联支付官方SDK下载地址:https://open.unionpay.com/ajweb/help/query


下载后我们需要找到以下位置

这次打开官方的开发者文档.是不是想说:呵呵!写的真是漂亮
那么我这次就给大家说明下:
1、SDK 说明
SDK 分为以下两个版本:
1.支持纯无卡交易静态库,以下简称 UPPayPlugin,包含文件:
UPPayPlugin.h UPPayPluginDelegate.h libUPPayPlugin.a
2、支持纯无卡交易和 VIPOS 音频口支付静态库,以下简称 UPPayPluginPro,公司自主研发的 VIPOS(即“voice interface POS ”音频接口 POS 机)支付平台,与银联联合运营,并协助银 联制定了手机 POS 等安全规范、业务与技术标准。
包含文件:
UPPayPluginPro.h
UPPayPluginDelegate.h libUPPayPluginPro.a
3、添加 SDK 包
a.根据商户选择的SDK版本,将sdk/inc目录和sdk/libs目录下对应版本的三个文件添加到 UPPayDemo 工程中;
b.如 果 你 选 择 的 是 UPPayPlugin 版 本 , 添 加 QuartzCore.framework 、Security.framework 到工程中;
c.如 果 你 选 择 的 是 UPPayPluginPro 版 本 , 添 加 QuartzCore.framework 、AudioToolbox.framework, CoreAudio.framework 、 MediaPlayer.framework,AVFoundation.framework 和 Security.framework 到工程中;
工程配置:
1.在需要调用支付控件的源文件内引用头文件 UPPayPlugin.h 或 UPPayPluginPro.h(注意:如果工程的 compile source as 选项的值不是 Objective–C++,则引用此头文件的文件类型都要改为.mm)

2.在工程的 Build Settings 中找到 Other Linker Flags 中添加-ObjC 宏.(注意大小写.O是大写.C是大写)

3.将 xcode 工程中 Build Setting -> Apple LLVM compiler Language 标签下的 C++ Language Dialect 和 C++ Standard Library 属性值修改为 Compiler Default


这里给大家写了一个按钮关联了一个银联支付的方法.里面给大家写了详细的参数注释.
下载demo地址:http://pan.baidu.com/s/1i4s4azz
微信支付
微信支付官方SDK下载地址:https://pay.weixin.qq.com/wiki/doc/api/app.php?chapter=11_1
在官方的开发者平台上面还有开发者文档

开发步骤
1:去微信开放平台注册应用
https://open.weixin.qq.com/cgi-bin/index?t=home/index&lang=zh_CN&token=2c0fee9c43e1eb8f9febcc7cb73abf598e2d4011
创建移动应用并成功之后会收到腾讯发来的邮件

通过邮件你能获得重要的参数:
(1):AppID
(2):微信支付商户号
(4):前往商户平台完成入驻
(4):API秘钥(自己设置即可,注意一定要32位字母加数字的组合)记得保存好秘钥,以后要使用


有了这些参数后,我们就可以开发自己的项目了.
首先我们需要把我们下载好的sdk导入到我们工程当中.

这3个文件是必须要导入到工程中去的.除了这个以外,我们还需要把依赖库给添加到工程中去

这些信息配置完成后,那么整个项目就可以进行代码实现支付了.
具体代码实现部分可以参考我的demo.也是非常简单的按钮关联了一个支付的方法.里面对参数写了详细的注释.
微信支付demo下载地址:http://pan.baidu.com/s/1pKooaiJ
注:
1.下载地址中的demo订单有可能用过,造成支付订单失效.需要重新生成新的订单即可!
2.demo中的SDK都是最新的版本,大家在做测试的时候,麻烦将手机升级至iOS9以上的版本.
网友评论