自从今早上苹果准备向大陆开发Apple Pay,朋友圈以及各种QQ群里就开始炸开了锅,而且据说有几个比较前卫的公司已经开始支持了Apple Pay,所以呢,我们的产品老大也闲不住了,加上自己还是比较感兴趣的,于是乎,自己开始东西写Demo了,就当赶个潮流吧。

  1. Apple Pay支付到底是怎么的流程
    首先Apple Pay分为线上线下两种支付方式,网上所谓的不需要网络直接可以支付指的是线下支付,此支付方式利用的是NFC,通过NFC技术与商家进行连接,然后通过NFC传递你所绑定卡的银行信息到商户的NFC设备上,然后商户进行处理,就类似于刷卡,你拿着卡商户在pos机上刷是一样的,只不过,这里的卡变成了手机而已。
    其次是应用内支付,应用内支付呢,这个就需要网络了,因为你得自己处理你得支付。现在银联已经推出了支持Apple Pay的SDK,地址如下:
    https://open.unionpay.com/ajweb/help/file/techFile?productId=80
    你只需要在你需要唤起Apple Pay的页面上调用银联sdk提供的方法就可以了,银联sdk已经将Apple Pay的支付控件集成好了。综上来看,所谓的Apple Pay支付并不是说只需要利用苹果提供的支付框架,还需要第三方银联的支持,客户端只是利用苹果提供的框架做了两件事,一件事就是touch id的校验,另一件事就是将你绑定的银行卡的信息经过加密传递给商户或者本地sdk方进行处理。应用银联sdk进行充值流程类似于支付宝、微信,都是后台生成流水订单号,然后你调用进行充值,银联异步通知服务器。
  2. Apple Pay的实现
    关于如何实现Apple Pay,这里就不再多说了,现在网上好多资源了,http://www.cocoachina.com/ios/20150126/11019.html将英文文档翻译为了中文,大家可以看看。挺详细的。
  3. 银联签约
    首先商户需要向银联申请签约ApplePay服务,https://open.unionpay.com/ajweb/product/detail?id=80 ,签约可能需要什么公司营业执照一类的,好像现在什么三证合一了,一个证就可以搞定了,具体需要什么请注册银联技术服务看相关说明。
    等提交资料后就等待审核就好了,在这里不得不吐槽一下银联的办事效率,我只有三个字想说,真墨迹!反正我们是用了将近一个月才把资格审下来,然后银联给了我们一个文档告诉我们用来先测试,在这里特别强调一下,如果你是跟银联合作来使用Apple Pay的话,需要的csr证书是银联提供给你的,并不是你自己去苹果官网利用钥匙串请求下来的,等测试成功后,然后银联会再让你提供测试数据再进行审核,审核通过后,银联便会正式给你签约,给你正式环境的csr文件,你再重新申请相关证书。
  4. 银联sdk代码实现
    下载银联的sdk,然后将里面的证书以及bundle以及merchantID换成你自己的然后测试一下,因为Apple Pay在中国使用要求的设备为6以及iOS9.2以上版本,所以在你写代码的时候就要进行处理了。
    //判断设备是否支持Apple Pay并且版本是否为9.2以上
    if ([PKPaymentAuthorizationViewController canMakePayments] && SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"9.2")) {
    //判断是否支持银联付款方式
    if([PKPaymentAuthorizationViewController canMakePaymentsUsingNetworks:@[PKPaymentNetworkChinaUnionPay]])
    {
    //银联sdk提供的方法调用
    [UPAPayPlugin startPay:tn mode:self.tnMode viewController:self delegate:self andAPMechantID:kAppleMerchantID];
    } else {
    //如果没有绑定银联的卡,进入Apple Pay设置页面
    PKPassLibrary *pkpass = [[PKPassLibrary alloc] init];
    [pkpass openPaymentSetup];
    }
    } else {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Warning" message:@"No support" delegate:nil cancelButtonTitle:@"Sure" otherButtonTitles:nil, nil];
    [alert show];
    }

关于Apple Pay的准备工作以及一些更加详细的教程请参考以下链接,我个人觉得以下已经写得挺全的了:
http://www.jianshu.com/p/2e5e45afc246 Apple Pay准备工作-申请MerchantID及对应证书详细图文教程
http://www.jianshu.com/p/738aee78ba52 Apple Pay接入详细教程
http://zyden.vicp.cc/applepay/?utm_source=tuicool&utm_medium=referral 首篇ApplePay应用内支付线上接入教程

iOS银联ApplePay控件开发相关推荐

  1. 银联手机支付控件官方使用指南(ios版)

    目录 版本信息... 2 目录      3 1       概述... 1 2       支付流程介绍... 1 3       测试帐号... 2 4       iOS客户端... 3 4.1 ...

  2. 从0到1搭建移动App功能自动化测试平台(2):操作iOS应用的控件

    转载:http://debugtalk.com/post/build-app-automated-test-platform-from-0-to-1-Appium-interrogate-iOS-UI ...

  3. android 仿照ios 图片选择,GitHub - wildma/PictureSelector: Android 图片选择器(仿 IOS 图片选择控件)...

    PictureSelector Android 图片选择器(仿 IOS 图片选择控件) 效果图 功能特点 支持通过拍照获取图片 支持通过相册获取图片 支持图片是否裁剪两种场景 支持仿 IOS 底部弹出 ...

  4. Asp.net控件开发学习笔记(三)-控件开发基础

    封装      在asp.net中,控件被分为两类.用户控件和自定义服务器控件.前者就是我们经常用来将一些可复用的内容封装成的.ascx文件.这里主要研究后者. 创建自定义服务器控件      创建自 ...

  5. 一起谈.NET技术,asp.net控件开发基础(18)

    本篇继续上篇的讨论,可能大家已经在使用asp.net2.0了,DataSource属性不再使用,而是跟数据源控件搭配使用.现在讨论的绑定技术都是基于1.1版本,先熟悉一下,本质上是一样的,这样一步步的 ...

  6. ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl

    第四章 组合控件开发CompositeControl 大家好,今天我们来实现一个自定义的控件,之前我们已经知道了,要开发自定义的控件一般继承三个基 类:Control,WebControl,还有一个就 ...

  7. DateChooser控件发布ASP.NET 2.0新版(我的ASP.NET 2.0控件开发书的第二个阶段项目)[请大家一定注意版本的更新,下载最新版]...

    已更新实用版:DateChooser ASP.NET 2.0版 之实用版 请大家一定注意版本的更新,下载最新版 DateChooser的ASP.NET 1.x版在二年前就发布了,二年以来,ASP.NE ...

  8. 一起谈.NET技术,asp.net控件开发基础(20)

    上面我们讨论了数据绑定控件的做法,但都未涉及到asp.net2.0中数据源控件的用法,让用惯了数据源控件的人可能感觉不适应.这次我们就开始讨论在asp.net2.0中,我们该如何重新定义数据绑定控件. ...

  9. 【转】Asp.net控件开发学习笔记整理篇 - Asp.net客户端状态管理

    最近一直在做MVC项目,对于WEBFORM 好像快忘记了.周末无聊,顺带看看他人的笔记.再次温习下. 复习大纲: 导航.页面生命周期及其它导论 一.服务器控件生命周期 二.控件开发基础 三.Asp.n ...

最新文章

  1. 深入JDK源码,这里总有你不知道的知识点!
  2. Hanlp分词实例:Java实现TFIDF算法
  3. navicat for Oracle连接
  4. 新手求大神,有其他swit-case的思路写这个程序么?
  5. Mysql数据库安全管理配置
  6. 【linux(1),八年Java开发心路历程
  7. Style主题Theme风格Android
  8. python @的作用
  9. Java锁示例– ReentrantLock
  10. 14岁天才小子,世界最年轻的CEO
  11. C语言表白代码,复杂动态爱心
  12. 计算机无法安装网卡驱动,实在无法安装电脑驱动的解决办法
  13. dell 恢复出厂系统
  14. FSG压缩壳和ImportREC的使用 - 脱壳篇05
  15. VS2013_CodeLens
  16. linux内核协议栈 IPv4分片重组Ⅰ之相关数据结构
  17. 微信引流推广:美拍视频简单的引流方法分享
  18. 系统奔溃了别慌,尝试 DISM.exe 工具修复
  19. trochscript模型初次运行过慢解决方法
  20. ICT(计算机通信电子自动化等)专业区别和联系

热门文章

  1. canvas元素简易教程(3)(大部分转自火狐,自己只写了简单的代码分析)
  2. 西班牙语言,字母c的发音规则,西班牙语发音入门:塞音 P、B/V、W;;T、D;C/Q、G...
  3. Hystrix中文开发手册-Hystrix简介(Home)
  4. 马上:系统签名apk和工具
  5. 今天又裁了两个,这个冬天有点冷......
  6. Linux九阴真经之九阴白骨爪残卷9(存储引擎MyISAM、MySQL服务器变量)
  7. 阿朱重新定义SaaS
  8. 我为什么不在乎人工智能 / 王垠
  9. 对皮肤美白算法的一些研究
  10. 广东省河源市谷歌卫星地图下载