iOS 集成银联支付(绕过文档的坑,快速集成)

转载 2015年11月20日 21:08:43

45.png

本文是投稿文章,作者:南栀倾寒
当初集成支付宝的时候,觉得见了这么丑的代码,加上这么难找的下载地址,在配上几乎为零的文档,寒哥就要吐血了。

下午去集成银联,才知道血吐的早了。

其实我找了半个小时 也不知道怎么就下载好了 这个我在Chrome的下载记录里找到的

解压之后会有这样的目录结构

239184-ebeabb025e019b86.png

Paste_Image.png

文档在下面 sdk在upmp_iPhone里面
239184-7ff3b248547406c6.png

Paste_Image.png

1、SDK 说明

SDK 分为以下两个版本:
1.支持纯无卡交易静态库,以下简称 UPPayPlugin,包含文件:

UPPayPlugin.h  UPPayPluginDelegate.h  libUPPayPlugin.a

2、支持纯无卡交易和 VIPOS 音频口支付静态库,以下简称 UPPayPluginPro,

包含文件:

  • 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 到工程中;

d.在工程的 Build Settings 中找到 Other Linker Flags 中添加-ObjC 宏;(这个可能是遗留的问题 我就没写 不报错)

239184-6764e25cd0a71413.png

Paste_Image.png

4、调用插件

a.在需要调用支付控件的源文件内引用头文件 UPPayPlugin.h 或 UPPayPluginPro.h(注意:如果工程的 compile source as 选项的值不是 Objective–C++,则引用此头文件的文件类型都要改为.mm)

b.通过调用

(BOOL)startPay:(NSString)tn mode:(NSString)mode

viewController:(UIViewController*)viewController delegate:(id)delegate;

实现控件的调用

c.处理支付结果

银联手机支付控件有三个支付状态返回值:success、fail、cancel,分别代表:支付成功、支付失败、用户取消支付。这三个返回状态值以字符串的形式作为回调函数参数(NSString)result 返回。通过在工程中添加头文件“UPPayPluginDelegate.h”,在处理交易结果的界面,实现 UPPayPluginDelegate接口,根据该头文件中的回调函数:-(void)UPPayPluginResult:(NSString)result来实现回调方法,从而可以根据支付结果的不同进行相关的处理。

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

b.将涉及到引用 UPPayPlugin.h 的源文件的后缀名都改为.mm;

c.参照demo,检查工程设置 Search Paths 里的 Framework Search Paths、Header Search Paths、Library Search Paths 的路径设置,看设置路径是否正确

d.添加 QuartzCore.framework、AudioToolbox.framework, CoreAudio.framework、 MediaPlayer.framework, AVFoundation.framework 和 Security.framework

e.工程的 Build Settings 中找到 Other Linker Flags 中添加-ObjC 宏;

上面提到的几点网上都可以找到,如果已经正确设置,还是编译不通过,那么赶紧检查下 项目targets 对应的sdk版本,选择7.0以下的,目前银联的sdk貌似还不支持7.0,

注:

银联支付目测只需要2个参数 1 tn 其实就是订单号 2 mode 是测试环境还是线上环境

和支付宝不同的是 支付宝要求本地把订单的信息书写完毕 调起sdk支付即可 银联是我把一些生成订单的信息 如 付款方 收款方 订单描述 金额等信息传递到服务器 由服务器生成一个订单号 然后客户端调起sdk进入支付

mode 竟然是个死的字符串 真是醉了 "00" 表示线上环境"01"表示测试环境

返回的代理结果 更是坑爹 :success、fail、cancel,分别代表:支付成功、支付失败、用户取消支付

测试环境 账号

提供测试使用卡号、手机号信息(此类信息仅供测试,不会发生正式交易)招商银行预付费卡:卡号:6226 4401 2345 6785密码:111101

相关文章推荐

iOS 集成银联支付(绕过文档的坑,快速集成)

http://www.cocoachina.com/ios/20150724/12739.html 当初集成支付宝的时候,觉得见了这么丑的代码,加上这么难找的下载地址,在配上几乎为零...
  • xyxjn
  • xyxjn
  • 2015年07月24日 09:47
  • 950

银联支付集成文档

  • 2016年10月20日 09:39
  • 166KB
  • 下载

iOS 集成银联支付

银联sdk以及demo下载地址(说明文档都在里面) 解压之后会有这样的目录结构 Paste_Image.png 文档在下面 sdk在upmp_iPhone里面 Paste_Im...
  • ji5ji
  • ji5ji
  • 2016年03月10日 13:38
  • 198

iOS开发银联支付集成

项目中用到了银联、支付宝、微信支付、自己记录下 银联开放平台下载地址: https://open.unionpay.com/ajweb/help/file/techFile?product...

玩转iOS开发:集成 Union Pay - 银联支付

银联嘛, 用过银行卡的人都懂的, 我们大天朝的产物, 主要是用来联合大天朝各个银行, 实现各个银行互通, 可跨行, 跨区, 跨境使用等等….其实换了一句话来说, 就是中国版的VISA, MasterC...

iOS开发支付集成之银联支付

iOS开发支付集成之支付宝支付 iOS开发支付集成之微信支付 作者:WK_IOSDevelpoer 原文链接:http://www.jianshu.com/p/bc7471a5df7f ...

【iOS】集成支付宝支付/银联支付/微信支付

前言前些时一个朋友做了 一个swift版本的Demo,集成了支付宝支付、银联支付和微信支付。swift版本–传送门但是在github上面问题他,怎么不搞一个OC版本的。后来我就自己做了一个。利用下班的...

iOS端 集成 银联和支付宝

银联: 提供测试使用卡号、手机号信息(此类信息仅供测试,不会发生正式交易)招商银行预付费卡: 卡号:6226 4401 2345 6785 密码:111101...

iOS集成银联

github地址,感兴趣的欢迎给个star 项目最近需要集成银联,在网上搜了一下发现都并不是最新版的银联集成教程,自己摸索了一下,总结写了下来。附上3.3.0的下载网址 https://ope...

iOS APP开发集成Apple Pay与银联SDK开发教程(附示例代码)

2016年2月18日,apple pay正式进入中国,很是让人感觉到兴奋,虽说apple pay技术已经出来很久啦, 但是现在在用到,昨天的时候,我特意看了下apple pay的一些开发流程。让更多的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:iOS 集成银联支付(绕过文档的坑,快速集成)
举报原因:
原因补充:

(最多只允许输入30个字)