iOS 指紋解鎖驗(yàn)證TouchID功能
更新時(shí)間:2017年03月08日 15:42:46 作者:鴻鵠當(dāng)高遠(yuǎn)
這篇文章主要介紹了iOS 指紋解鎖驗(yàn)證TouchID功能,非常不錯,具有參考借鑒價(jià)值,需要的朋友可以參考下
1、首先,引入依賴框架 LocalAuthentication.framework
#import <LocalAuthentication/LocalAuthentication.h>
2、然后,判斷系統(tǒng)是否為iOS8及以上
//iOS8.0后才支持指紋識別接口
if ([UIDevice currentDevice].systemVersion.floatValue < 8.0) {
return;
}
3、最后,在APP啟動時(shí)調(diào)用以下方法即可完成指紋解鎖的全部功能集成
- (void)evaluateAuthenticate
{
//創(chuàng)建LAContext
LAContext* context = [[LAContext alloc] init];
NSError* error = nil;
NSString* result = @"請驗(yàn)證已有指紋";
//首先使用canEvaluatePolicy 判斷設(shè)備支持狀態(tài)
if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {
//支持指紋驗(yàn)證
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:result reply:^(BOOL success, NSError *error) {
if (success) {
//驗(yàn)證成功,主線程處理UI
}
else
{
NSLog(@"%@",error.localizedDescription);
switch (error.code) {
case LAErrorSystemCancel:
{
//系統(tǒng)取消授權(quán),如其他APP切入
break;
}
case LAErrorUserCancel:
{
//用戶取消驗(yàn)證Touch ID
break;
}
case LAErrorAuthenticationFailed:
{
//授權(quán)失敗
break;
}
case LAErrorPasscodeNotSet:
{
//系統(tǒng)未設(shè)置密碼
break;
}
case LAErrorTouchIDNotAvailable:
{
//設(shè)備Touch ID不可用,例如未打開
break;
}
case LAErrorTouchIDNotEnrolled:
{
//設(shè)備Touch ID不可用,用戶未錄入
break;
}
case LAErrorUserFallback:
{
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
//用戶選擇輸入密碼,切換主線程處理
}];
break;
}
default:
{
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
//其他情況,切換主線程處理
}];
break;
}
}
}
}];
}
else
{
//不支持指紋識別,LOG出錯誤詳情
NSLog(@"不支持指紋識別");
switch (error.code) {
case LAErrorTouchIDNotEnrolled:
{
NSLog(@"TouchID is not enrolled");
break;
}
case LAErrorPasscodeNotSet:
{
NSLog(@"A passcode has not been set");
break;
}
default:
{
NSLog(@"TouchID not available");
break;
}
}
NSLog(@"%@",error.localizedDescription);
}
}
以上所述是小編給大家介紹的iOS 指紋解鎖驗(yàn)證TouchID功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
您可能感興趣的文章:
相關(guān)文章
IOS 基礎(chǔ)之設(shè)置 tableview 的分割線
這篇文章主要介紹了IOS 基礎(chǔ)之設(shè)置 tableview 的分割線的相關(guān)資料,需要的朋友可以參考下2017-03-03
iOS利用MJRefresh實(shí)現(xiàn)自定義刷新動畫效果
本文主要介紹iOS 利用MJRefresh實(shí)現(xiàn)自定義動畫的上拉刷新下拉加載效果,要想實(shí)現(xiàn)此功能,首先得有一套load的圖片數(shù)組。接下來通過本文給大家詳解介紹實(shí)現(xiàn)過程2017-02-02
iOS UICollectionView刷新時(shí)閃屏的解決方法
本篇文章主要介紹了iOS UICollectionView刷新時(shí)閃屏的解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-11

