一:簡介
快捷支付涉及到方方面面,同時安全問題既是用戶所關心的,也是制作者不容忽視的重要部分。比如涉及到支付和金錢的app,商戶端app等等,都需要進行實名認證,實名認證可以通過銀行卡認證和身份證認證。通常辦法是通過上傳照片,并且手動輸入基本信息進行認證,這種方法不僅操作復雜,而且容易出錯。網上很多資源,識別率低,速度慢,用戶體驗很差。今天我就和大家介紹一下我使用的方法,可以快速、高效的識別中國身份證信息。隨后會陸續更新銀行卡識別。
二:原理
經實踐發現,只要身份證號碼處于攝像頭預覽圖層中時,即不用完全對準身份證也可以讀取到身份證號碼,但此時截取到的身份證圖像并不完整。
為獲取到比較完整的身份證圖像,經多次實踐發現,當身份證人像大約位于拍攝框中的右上區域時,此時可獲取到比較完整的身份證圖像。
因此,在拍攝框中右上區域加了一個人像區域提示框,并將該區域設為掃描人臉的區域,只有該區域掃描到身份證上的人臉時(確保用戶的確將身份證人像對準了拍攝框中的人像框),才執行讀取身份證信息的操作。
三:項目展示
掃描頁面截圖
信息展示頁面
四:Demo接入流程
2.打開項目將下面的文件拷貝到自己的工程中:
libexidcard
FBYTool
FBYCategory
FBYModel
FBYView
FBYBase
3.添加配置
在你的項目的Info.plist文件中,添加權限描述(Key? ?Value)
Privacy - Camera Usage Description 是否允許訪問相機
Privacy - Photo Library Usage Description 是否允許訪問相冊
如下圖:
4. 項目設置
選擇項目名字,選擇Build Settings,搜索enable bitcode 設置為NO即可。
5. 項目引用
在項目中需要使用的頁面,增加引用代碼:
1#import"ViewController.h"
在點擊掃描身份證的點擊事件中,跳轉頁面:
ViewController?*vc?=?[[ViewController?alloc]init];
[self.navigationController?pushViewController:vc?animated:YES];
到此項目就接入完成!!!