iOS Touch ID 使用詳情

簡單介紹

支持系統(tǒng)和機型

iOS系統(tǒng)的指紋識別功能最低支持的機型為iPhone 5s暑脆,最低支持系統(tǒng)為iOS 8,雖然安裝iOS 7系統(tǒng)的5s機型可以使用系統(tǒng)提供的指紋解鎖功能捡鱼,但由于API并未開放,所以理論上第三方軟件不可使用。

依賴框架
LocalAuthentication.framework
import <LocalAuthentication/LocalAuthentication.h>

注意事項
做iOS 8以下版本適配時相嵌,務(wù)必進行API驗證屎暇,避免調(diào)用相關(guān)API引起崩潰承桥。

使用類
LAContext指紋驗證操作對象

代碼實現(xiàn)


//初始化上下文對象

    LAContext* context = [[LAContext alloc] init];    //錯誤對象
    NSError  * error = nil;
    NSString * result = @"驗證";
    context.localizedFallbackTitle = @"123";   

    //判斷設(shè)備是否支持touchID
    BOOL isSupport = [context canEvaluatePolicy:
    LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error];
    if (isSupport) {
        //指紋識別函數(shù)
        [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics 
        localizedReason:@"用 Touch ID 登錄" 
        reply:^(BOOL success, NSError *error) {
            
            
          //如果成功
            if (success) {
                NSLog(@"驗證成功");
            }else{
                switch (error.code) {
                    case LAErrorSystemCancel:
                    {
                        NSLog(@"Authentication was cancelled by the system");
                        //切換到其他APP,系統(tǒng)取消驗證Touch ID
                        break;
                    }
                    case LAErrorUserCancel:
                    {
                        NSLog(@"Authentication was cancelled by the user");
                        //用戶取消驗證Touch ID
                        break;
                    }
                    case LAErrorUserFallback:
                    {
                        NSLog(@"User selected to enter custom password");
                        [[NSOperationQueue mainQueue] addOperationWithBlock:^{
                            //用戶選擇輸入密碼根悼,切換主線程處理
                        }];
                        break;
                    }
                }
            }
        }];

} else {
  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);
}
    

下面是LAError中每個枚舉對應(yīng)的含義

typedef NS_ENUM(NSInteger, LAError){
      
 //授權(quán)失敗    
    LAErrorAuthenticationFailed = kLAErrorAuthenticationFailed,         
//用戶取消Touch ID授權(quán)   
    LAErrorUserCancel           = kLAErrorUserCancel,         
//用戶選擇輸入密碼     
    LAErrorUserFallback         = kLAErrorUserFallback,        
 //系統(tǒng)取消授權(quán)(例如其他APP切入)    
    LAErrorSystemCancel         = kLAErrorSystemCancel,         
//系統(tǒng)未設(shè)置密碼   
     LAErrorPasscodeNotSet       = kLAErrorPasscodeNotSet,         
//設(shè)備Touch ID不可用凶异,例如未打開
     LAErrorTouchIDNotAvailable  = kLAErrorTouchIDNotAvailable,         
//設(shè)備Touch ID不可用蜀撑,用戶未錄入
     LAErrorTouchIDNotEnrolled   = kLAErrorTouchIDNotEnrolled,
  
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市唠帝,隨后出現(xiàn)的幾起案子屯掖,更是在濱河造成了極大的恐慌,老刑警劉巖襟衰,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贴铜,死亡現(xiàn)場離奇詭異,居然都是意外死亡瀑晒,警方通過查閱死者的電腦和手機绍坝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來苔悦,“玉大人轩褐,你說我怎么就攤上這事【料辏” “怎么了把介?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蟋座。 經(jīng)常有香客問我拗踢,道長,這世上最難降的妖魔是什么向臀? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任巢墅,我火速辦了婚禮,結(jié)果婚禮上券膀,老公的妹妹穿的比我還像新娘君纫。我一直安慰自己,他們只是感情好芹彬,可當我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布蓄髓。 她就那樣靜靜地躺著,像睡著了一般舒帮。 火紅的嫁衣襯著肌膚如雪双吆。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天会前,我揣著相機與錄音好乐,去河邊找鬼。 笑死瓦宜,一個胖子當著我的面吹牛蔚万,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播临庇,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼反璃,長吁一口氣:“原來是場噩夢啊……” “哼昵慌!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起淮蜈,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤斋攀,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后梧田,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體淳蔼,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年裁眯,在試婚紗的時候發(fā)現(xiàn)自己被綠了鹉梨。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡穿稳,死狀恐怖存皂,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情逢艘,我是刑警寧澤旦袋,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站它改,受9級特大地震影響疤孕,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜搔课,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一胰柑、第九天 我趴在偏房一處隱蔽的房頂上張望截亦。 院中可真熱鬧爬泥,春花似錦、人聲如沸崩瓤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽却桶。三九已至境输,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間颖系,已是汗流浹背嗅剖。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留嘁扼,地道東北人信粮。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像趁啸,于是被迫代替她去往敵國和親强缘。 傳聞我的和親對象是個殘疾皇子督惰,可洞房花燭夜當晚...
    茶點故事閱讀 45,092評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,190評論 25 707
  • 成長是什么?是一場冒險旅掂,是一場豪賭赏胚。 有人賭的贏,有人輸?shù)囊粩⊥康厣膛埃腥司踉模瑴啘嗀桓蚁伦ⅲ鲆矝]剩下剩下什么称龙。...
    Hardwood閱讀 175評論 0 0
  • 那年鲫尊,一個人獨自旅行痴柔,為了那段抹不去的傷悲,忘不了的痛徹心扉疫向。當最后一份守望隨那年的雨消蝕殆盡的時候...
    北堂書抄閱讀 427評論 6 8
  • 話術(shù)板塊 歡迎加入內(nèi)部交流圈子QQ群【225332768】(驗證:jx)更多干貨分享 1搔驼、賣服務(wù):態(tài)...
    勁祥閱讀 5,035評論 0 3