IOS 指紋識別詳解及實例代碼
IOS 指紋識別,這里整理下項目中用的知識。
IOS 指紋識別現(xiàn)在,在要求安全與效率兼得的時候,普通密碼已不能滿足我們的要求,指紋識別就這樣誕生了。
每個人都有自己專屬的指紋,在需要支付等輸入密碼的地方,我們只需輕輕一按即可,避免了輸入密碼的繁瑣步驟,更加安全,而且媽媽再也不用擔心我們忘記密碼。
其實,聽著高大上,實現(xiàn)起來特別簡單,因為蘋果已經(jīng)幫我們封裝好了,我們只需要簡單的調(diào)用就好了。
1、首先,我們需要導入頭文件:
#import <LocalAuthentication/LocalAuthentication.h>
2、接著,我們需要判斷我們的設備是否支持指紋識別(iPhone5s+,iOS8.0+)
接下來,判斷當前用戶是否是機主即可,完事,是不是so easy啊。
- (IBAction)biologyAction:(id)sender { LAContext *context = [[LAContext alloc] init]; NSError *error = nil; NSString *reason = @"我們需要驗證您的指紋來確認您的身份"; // 判斷設置是否支持指紋識別(iPhone5s+、iOS8+支持) if([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]){ // 指紋識別只判斷當前用戶是否是機主 [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:reason reply:^(BOOL success, NSError * _Nullable error) { if(success){ NSLog(@"指紋認證成功"); } else{ NSLog(@"指紋認證失敗"); NSLog(@"錯誤碼:%zd",error.code); NSLog(@"出錯信息:%@",error); // 錯誤碼 error.code // -1: 連續(xù)三次指紋識別錯誤 // -2: 在TouchID對話框中點擊了取消按鈕 // -3: 在TouchID對話框中點擊了輸入密碼按鈕 // -4: TouchID對話框被系統(tǒng)取消,例如按下Home或者電源鍵 // -8: 連續(xù)五次指紋識別錯誤,TouchID功能被鎖定,下一次需要輸入系統(tǒng)密碼 } }]; } else{ NSLog(@"TouchID設備不可用"); NSLog(@"錯誤碼:%zd",error.code); NSLog(@"出錯信息:%@",error); } }
下面貼出Swift3.0版對應的代碼,原理就不說了,和上面的一樣,只是將OC代碼翻譯成了Swift3.0版而已。
import UIKit import LocalAuthentication class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() } @IBAction func yanzhengAction(_ sender: AnyObject) { let context = LAContext() let reason = "我們需要您的指紋來驗證您的身份" var error:NSError? if context.canEvaluatePolicy(LAPolicy.deviceOwnerAuthenticationWithBiometrics, error:&error){ context.evaluatePolicy(LAPolicy.deviceOwnerAuthenticationWithBiometrics, localizedReason: reason, reply: { (isSuc, error) in if isSuc{ print("指紋驗證成功") } else{ print("指紋驗證失敗") print("錯誤信息:\(error)") // 錯誤碼 error.code // -1: 連續(xù)三次指紋識別錯誤 // -2: 在TouchID對話框中點擊了取消按鈕 // -3: 在TouchID對話框中點擊了輸入密碼按鈕 // -4: TouchID對話框被系統(tǒng)取消,例如按下Home或者電源鍵 // -8: 連續(xù)五次指紋識別錯誤,TouchID功能被鎖定,下一次需要輸入系統(tǒng)密碼 } }) } else{ print("TouchID設置不支持") print("錯誤碼:\(error!.code)") print("錯誤信息:\(error)") } } }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
iOS利用NSAttributeString實現(xiàn)不同顏色大小顯示的方法
這篇文章主要給大家愛介紹了關于iOS利用NSAttributeString實現(xiàn)不同顏色大小顯示的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-06-06iOS NSThread和NSOperation的基本使用詳解
下面小編就為大家分享一篇iOS NSThread和NSOperation的基本使用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01iOS9蘋果將原h(huán)ttp協(xié)議改成了https協(xié)議的方法
這篇文章主要介紹了iOS9蘋果將原h(huán)ttp協(xié)議改成了https協(xié)議的方法的相關資料,需要的朋友可以參考下2016-01-01xcode8提交ipa失敗無法構(gòu)建版本問題的解決方案
xcode升級到xcode8后發(fā)現(xiàn)構(gòu)建不了新的版本。怎么解決呢?下面小編給大家?guī)砹藊code8提交ipa失敗無法構(gòu)建版本問題的解決方案,非常不錯,一起看看吧2016-10-10IOS 實現(xiàn)微信自動搶紅包(非越獄IPhone)
這篇文章主要介紹了IOS 實現(xiàn)微信自動搶紅包(非越獄IPhone)的相關資料,這里對實現(xiàn)自動搶紅包做一個詳細的實現(xiàn)步驟,需要的朋友可以參考下2016-11-11