接上一篇《Apple Pay集成(一)準(zhǔn)備工作》
1.導(dǎo)入依賴庫PassKit
Apple Pay使用了PassKit框架,所以需要在適當(dāng)?shù)奈募飳?dǎo)入頭文件
#import <PassKit/PassKit.h>
2.判斷當(dāng)前設(shè)備是否支持Apple Pay
由于Apple Pay僅支持iOS8.0+的且有NFC功能的設(shè)備,準(zhǔn)備工作中把支持系統(tǒng)版本設(shè)定成最低8.0,但是在編碼界面也要進(jìn)行判斷是否支持。
使用PKPaymentAuthorizationViewController的類方法canMakePayments進(jìn)行判斷
+ (BOOL)canMakePayments;

返回BOOL類型,如果支持返回YES
3.查看用戶的錢包是否添加了銀行卡
使用canMakePaymentsUsingNetworks方法進(jìn)行判斷
+ (BOOL)canMakePaymentsUsingNetworks:(NSArray *)supportedNetworks;
supportedNetworks數(shù)組中,可包含所有支持的銀行卡(注意支持版本)

3.1未添加銀行卡
如果沒添加銀行卡,為了繼續(xù)使用Apple Pay則需要提示用戶是否添加

下面這段代碼是系統(tǒng)提供的直接跳轉(zhuǎn)到錢包添加銀行卡方法,直接使用就好了
PKPassLibrary*passLibr = [[PKPassLibraryalloc]init];
[passLibr openPaymentSetup];
3.2添加了銀行卡
3.2.1添加apple Pay調(diào)用按鈕
系統(tǒng)提供了PKPaymentButton作為標(biāo)準(zhǔn)Apple Pay按鈕,但是是從iOS8.3才有,所以iOS8.0-8.3的需要自定義按鈕,但是要用蘋果提供的切圖(Apple Pay介紹中有)

3.2.2初始化支付信息

注意:
一些不必要的信息可以不展示;
paymentSummaryItems數(shù)組可列表展示多個(gè)商品信息,但是lastObject要是匯總才行。也可以計(jì)算所有的商品后sum一下,顯示匯總信息就好了
3.2.3代理方法處理
遵循PKPaymentAuthorizationViewControllerDelegate代理,實(shí)現(xiàn)其方法即可
下面這兩個(gè)方法是必須要實(shí)現(xiàn)的


一些基本代碼就這些,其實(shí)集成Apple Pay還是比較簡單的。
2016年6月29日
以上~~