一:簡介
快捷支付涉及到方方面面,同時安全問題既是使用者所關心的,也是製作者不容忽視的重要部分。 比如涉及到支付和金錢的app,商戶端app等等,都需要進行實名認證,實名認證可以通過銀行卡認證和身份證認證。 今天我就和大家介紹一下銀行卡識別功能,這個方法是通過影像識別,可以快速、高效的識別銀行卡資訊。
二:原理
經實踐發現,只要銀行卡處於攝像頭預覽圖層中並且銀行卡號與識別線重合,即不用完全對準銀行卡也可以讀取到銀行卡號。
與身份證識別不同的是,銀行卡識別主要識別銀行卡號,因此獲取到的影像主要是銀行卡號位置。
在獲取到銀行卡號之後,通過資訊對比獲取到銀行卡的開戶行。在銀行卡資訊頁面可以展示出銀行卡識別截圖、銀行卡開戶行、銀行卡號。
三:專案展示
1.掃描銀行卡頁面
2.資訊展示頁面
四:Demo接入流程
1.匯入ReactiveCocoa框架
使用ReactiveCocoa對銀行卡識別出的資訊回撥。
新增ReactiveCocoa框架最簡單的方法就是用CocoaPods匯入。
如果你從沒用過CocoaPods,可以參考CocoaPods | iOS詳細使用說明這篇教程吧。請至少看完教程中初始化的步驟,這樣你才能安裝框架。
如果不想用CocoaPods,你仍然可以使用ReactiveCocoa,具體檢視Github文件中引入ReactiveCocoa的步驟描述。
這裡簡單介紹CocoaPods匯入: 鍵盤輸入 i,進入編輯模式,輸入下面程式碼
platform :ios, '8.0'
use_frameworks!
def pods
pod 'ReactiveCocoa', '2.3.1'
end
target '專案名稱' do
pods
end
複製程式碼
下載框架即可。
2.新增配置
在你的專案的Info.plist檔案中,新增許可權描述(Key Value) Privacy - Camera Usage Description 是否允許訪問相機 Privacy - Photo Library Usage Description 是否允許訪問相簿 如下圖:
3. 專案設定
-
選擇專案名字,選擇Build Settings,搜尋enable bitcode 設定為NO。
-
xcode8上邊編譯可能會遇到arm64錯誤, 選擇專案名字,選擇Build Settings,搜尋Enable Testability 設定為NO。
4.首先把demo下載下來
原始碼Demo獲取方法
關注 【網羅開發】微信公眾號,回覆【銀行卡】便可領取。
網羅天下方法,方便你我開發,所有文件會持續更新,歡迎關注一起成長!
5.開啟專案將下面的檔案拷貝到自己的工程中:
- bank_card
- BankData
6. 專案引用
在專案中需要使用的頁面,增加引用程式碼:
#import "FBYBankCardViewController.h"
複製程式碼
在點選掃描銀行卡的點選事件中,跳轉頁面:
FBYBankCardViewController *bcvc = [[FBYBankCardViewController alloc]init];
[self.navigationController pushViewController:bcvc animated:YES];
複製程式碼
到此專案就接入完成!!!
希望可以幫助大家,如有問題可加QQ技術交流群: 668562416
如果哪裡有什麼不對或者不足的地方,還望讀者多多提意見或建議
如需轉載請聯絡我,經過授權方可轉載,謝謝
本篇已同步到個人部落格:FBY展菲