苹果支付(Apple Pay)中国上线有段时间了,也许是因为国人还不太习惯这种支付方式,也有可能楼主待的城市比较小,从日常生活中感觉用它做支付方式的人还不是很多。但楼主一般能用Apple Pay的时候基本也不太用其他的支付方式(除非有优惠,哈哈)
在Apple Pay上线之后,美团、京东等常用支付的App都在第一时间支持了它,上线第二天楼主也绑卡体验了一下传说中的Apple Pay,感觉好用的同时还真的挺高大上的呢,毕竟直接从App端弹出支付界面,也不需要跳转第三方支付App了。随着上线时间的延长,各大银行的ATM机都已经支持ApplePay了(不得不说,提款真的很方便呢)。
趁这两天稍微有点闲时间,查看公司项目的时候,发现由于目前公司的项目支付模块还没有支持Apple Pay(至于以后会不会有,还是要看产品的 0.0 ),于是就开始关注了Apple Pay,是为以后支持做准备也好,楼主个人兴趣也好,了解一下Apple Pay这个框架PassKit.framework
也是极好的。这里就记录以下楼主研究的过程,中间遇到的问题也会在相应的位置用该文字的颜色标注,希望能够帮助遇到同样问题的小伙伴们吧。
先来一张高大上的支付界面吧,如果是真机,下面应该会出现一个Touch验证,当然个别银行在验证完毕之后还回跳转到输入PIN码的界面。PS:不是楼主不真机截图,真的办不到啊,一截图Pay VC就消失了
下面的顺序就是我创建项目的顺序,当然,比如如何创建一个App ID这种事,能google到很多写的很好的文章,所以就不在博文中缀余了。
由于篇幅太长反而会不太好,所以本篇就只记录了相关证书配置的过程,如果想瞅瞅如何使用PassKit来调用Apple Pay的原生接口敬请期待呀 (好无力的保证)
创建一个App ID
- 如果出现下面问话,楼主觉得好尴尬呀..
- 问: 我没有开发者账号怎么办?
- 楼主: - - 这个不太好办了吧,毕竟后面还需要配置支付id以及加密证书(没有此证书在真机上跑会出现问题,此问题在下面已有提及)呢…如果有什么好办法,也请告知一下呀..
- 楼主(悄悄): 你可以使用公司的开发者账号,毕竟我们又不影响上线,只创建一个App ID应该是没有问题的吧?
也算是为了保密一下,这里只能看到出Demo的App ID,暂且就叫它ApplePayPractise了.(是不是暴露了楼主其实用的账号也是公司账号的事实啊,哈哈哈)
创建Merchant ID
简单来讲,我们在开商店的时候是不是需要一个营业执照才能成为合法的商人呢,它的作用就好像是我们App的营业执照,它就是App合法使用Apple Pay的身份证明,创建步骤如下:
创建+
ApplePayDemoYue是我做练习的时候注册的一个ID,不要介意,还是可以继续添加的嘛:
填写相关消息
按照图片上的注解填好信息,点击Continue,随后Register即可
配置支付域
点击创建好的Merchant ID,点击Edit,在没有配置加密证书之前,会有一个创建加密证书的选项,点击进入一个服务配置:(通过英文我们可以看出,每一个”营业执照”必须有一个专属的加密证书,而且是必须的)
下面的意思就是:这个商人标志是否仅仅在中国才被关联(也就是说你这个营业执照在别的区域要不要使用),默认是No,这里调成Yes吧,通常来讲,其他国家的支付最好的方法就是在创建一个Merchant ID,毕竟在中国百分之好多好多都是人民币支付的吧?之后它就会跳转到下面配置App Pay RSA的步骤中了..
这样我们的“营业执照”算是办理完毕了.
注册App Pay RSA证书
既然营业执照办理完毕了,是不是我们就可以赚钱了,但是为了我们money的安全性,是不是还需要对相关信息进行加密处理呢,这个证书就是负责为我们加密的证书,既然选择用RSA加密,就是说明这段信息是需要在某个位置解密的,当然,这不是我们App端思考的问题了。
无法使用Apple Pay,检查此应用的设置并确定其设计可使用Apple Pay
如果不配置这个证书,其实在模拟器上是可以运行的,毕竟模拟器会帮我们模拟一些东西,之前的预览图就是在模拟器上运行的;但是在真机上就会报如下错误:”XXX”中无法使用Apple Pay,检查此应用的设置并确定其设计可使用Apple Pay,具体如下图:
配置
下面是常见的配置证书界面,通过点击左侧的Certificates->All就可以看到该界面了,点击右上角的加号进行证书的添加。
选择Production(这不是发布的证书么,用同一个有什么关系么?)下的Apple Pay证书即可,然后一直continue,该填的就填,一路过关斩将。
配置完成后,下载到电脑上,双击安装到钥匙串即可,下图是楼主的钥匙串:
使用Apple Pay的证书基本步骤都已经记录完毕,是不是感觉好麻烦,和money打交道嘛,严谨点毕竟是好的,如果上文中有什么不对的地方,还请告知一下,3Q。
如何使用想留在下一篇,感觉这篇幅点长了,敬请期待0.0 Thanks