iOS 支付 [支付宝、银联、微信]

支付宝


支付宝

使用支付宝进行一个完整的支付功能,大致有以下步骤:

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)
URL Schemes

这里给大家写了一个按钮关联了一个支付宝支付的方法.里面给大家写了详细的参数注释.

下载demo地址:http://pan.baidu.com/s/1o7qrTfc
银联支付
银联支付官方SDK下载地址:https://open.unionpay.com/ajweb/help/query

官方SDK下载位置

官方SDK下载位置


手机支付属于手机控件支付产品

手机支付属于手机控件支付产品

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


位置

这次打开官方的开发者文档.是不是想说:呵呵!写的真是漂亮

那么我这次就给大家说明下:
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是大写)


-ObjC注意大小写

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


C++ Standard Library
C++ Language Dialect

这里给大家写了一个按钮关联了一个银联支付的方法.里面给大家写了详细的参数注释.

下载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导入到我们工程当中.


官方sdk

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


依赖库

这些信息配置完成后,那么整个项目就可以进行代码实现支付了.

具体代码实现部分可以参考我的demo.也是非常简单的按钮关联了一个支付的方法.里面对参数写了详细的注释.

微信支付demo下载地址:http://pan.baidu.com/s/1pKooaiJ

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容

  • 这是开头语 前不久做了一个项目,涉及到支付宝和和银联支付,支付宝和银联都是业界的老大哥,文档、SDK都是很屌,屌的...
    斯科特帕克阅读 876评论 1 4
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 171,830评论 25 707
  • 我曾想过 让时间快点死去 让记忆快点死去 让树林和玫瑰快点死去 然后 黑暗把夜吞没 我曾想过 让遗忘割裂细胞 在某...
    渁墨阅读 153评论 0 0
  • 从妈妈突然转战职场并不是那么一件容易的事,有些事,明明了然于心,真正碰到,还是难免觉得糟心。不在自己身上的时候,觉...
    张苏端Josy阅读 288评论 0 0
  • 每天的亲子日记都是在睡前才完成,今晚之所以早点写也是为了让家长们 早一些看到,更好的了解我们的孩子在学...
    李玺辰妈妈阅读 209评论 0 5