Apple Pay接入详细教程
2016-02-26 16:51
295 查看
Apple Pay运行环境:iPhone6以上设备,操作系统最低iOS9.0以上,部分信息设置需要iOS9.2以上。目前还不支持企业证书添加。
环境搭建好后可以在模拟器上面运行,xcode7.2.1+iPhone6SP9.2系统下,系统会绑定几种虚拟的银行卡,和几个联系人,方便调试,支付也不会发生真实的付款,真的很方便。
准备工作
在接入Apple Pay之前,首先要申请MerchantID及对应证书。(请移步我写的申请MerchantID及对应证书详细图文教程)
工程设置
bundleID设置
Capability中启用Apple Pay权限,并选择merchantID。
之后项目会多一个Applepay的配置文件ApplePayYasin.entitlements
需要引用的库
Xcode7.0以上不需要再手动添加需要引用的库了,只需要导入头文件就可以了
设备Applepay权限检测
创建支付请求PKPaymentRequest
初始化PKPaymentRequest
这里需要注意RMB的币种代码是CNY
设置发票配送信息和货物配送地址信息,用户设置后可以通过代理回调代理获取信息的更新
送货信息页面展示
设置货物的配送方式,不需要不配置
账单信息的设置
每条账单的设置
账单列表使用PKPaymentSummaryItem添加描述和价格,价格使用NSDecimalNumber。
PKPaymentSummaryItem初始化:
label为商品名字或者是描述,amount为商品价格,折扣为负数,type为该条账单为最终价格还是估算价格(比如出租车价格预估)
NSDecimalNumber初始化:
NSDecimalNumber可以使用数字初始化,也可以使用字符串。
使用方法请移步我写的NSDecimalNumber--十进制数
添加账单列表:
显示购物信息并进行支付
PKPaymentAuthorizationViewControllerDelegate代理
这里还有两个类要介绍
PKPayment 支付成功信息
PKContact 联系人信息
代理说明
送货地址回调
送货方式回调
支付卡选择回调
送货地址回调,已弃用
付款成功苹果服务器返回信息回调,做服务器验证
支付完成回调
demo的话因为证书问题可能会报错,不过大家可以看看代码。
环境搭建好后可以在模拟器上面运行,xcode7.2.1+iPhone6SP9.2系统下,系统会绑定几种虚拟的银行卡,和几个联系人,方便调试,支付也不会发生真实的付款,真的很方便。
准备工作
在接入Apple Pay之前,首先要申请MerchantID及对应证书。(请移步我写的申请MerchantID及对应证书详细图文教程)
工程设置
bundleID设置
Capability中启用Apple Pay权限,并选择merchantID。
之后项目会多一个Applepay的配置文件ApplePayYasin.entitlements
需要引用的库
Xcode7.0以上不需要再手动添加需要引用的库了,只需要导入头文件就可以了
初始化PKPaymentRequest
这里需要注意RMB的币种代码是CNY
送货信息页面展示
设置货物的配送方式,不需要不配置
账单信息的设置
每条账单的设置
账单列表使用PKPaymentSummaryItem添加描述和价格,价格使用NSDecimalNumber。
PKPaymentSummaryItem初始化:
label为商品名字或者是描述,amount为商品价格,折扣为负数,type为该条账单为最终价格还是估算价格(比如出租车价格预估)
NSDecimalNumber可以使用数字初始化,也可以使用字符串。
使用方法请移步我写的NSDecimalNumber--十进制数
添加账单列表:
这里还有两个类要介绍
PKPayment 支付成功信息
送货地址回调
相关文章推荐
- Android Intent总结
- Android 属性动画(Property Animation)介绍
- ios开发根据Label的字体和宽度算出它的高度
- IOS 分享链接到微信朋友并发起微信支付功能
- Android Studio 中的Android工程目录结构
- Your content must have a ListView whose id attribute is 'android.R.id.list'
- android WebView 使用总结
- Android Touch事件分发—拦截—处理
- 【Android】基于Service组件的简易音乐播放器
- android之WIFI小车编程详述
- Android应用打破65K方法数限制,让你的应用不再爆棚
- iOS企业发布问题记录三(Log Guru 使用方法)
- 表单serializeObject问题
- Android 图片缓存之内存缓存技术LruCache,软引用
- ubuntu运行android studio出错unable to run mksdcard sdk tool
- iOS 常见的加密形式: AES加密, DES加密, MD5加密,SHA1加密, BASE64加密
- Unity获取场景gameobject的路径
- Android AIDL demo
- Ubuntu unity 桌面正常工作在VNC上
- android开发艺术探索学习 之 结合Activity的生命周期了解Activity的LaunchMode