為 iOS APP 添加手機密碼、指紋驗證

jopen 9年前發布 | 41K 次閱讀 IOS iOS開發 移動開發

 

一、引言

iPhone5s之后,iPhone硬件上已支持進行指紋識別的功能,相應的,一些新的api也可以應用于APP中,進行用戶安全的驗證。目前,開發者可以使用的安全驗證方式有兩種,一種是通過手機密碼進行驗證,一種是通過識別指紋進行驗證。

二、為APP添加安全驗證

要使用安全驗證的相關api,我們需要引入如下頭文件:

#import <LocalAuthentication/LocalAuthentication.h>

添加手機密碼驗證:

   //創建安全驗證對象
    LAContext * con = [[LAContext alloc]init];
    NSError * error;
    //判斷是否支持密碼驗證
    /**
    *LAPolicyDeviceOwnerAuthentication 手機密碼的驗證方式
    *LAPolicyDeviceOwnerAuthenticationWithBiometrics 指紋的驗證方式
    */
    BOOL can = [con canEvaluatePolicy:LAPolicyDeviceOwnerAuthentication error:&error];
    if (can) {
        [con evaluatePolicy:LAPolicyDeviceOwnerAuthentication localizedReason:@"驗證信息" reply:^(BOOL success, NSError * _Nullable error) {
            NSLog(@"%d,%@",success,error);
        }];

    }

canEvaluatePolicy是用來判斷是否支持手機密碼驗證的,如果沒有設置手機密碼,會返回NO,如果啟用了,會出現如下界面:

為 iOS APP 添加手機密碼、指紋驗證

密碼驗證的提示信息,我們可以自定義設置。

進行指紋驗證:

LAContext * con = [[LAContext alloc]init];
    NSError * error;
    BOOL can = [con canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error];
    NSLog(@"%d",can);
    if (can) {
        [con evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"驗證指紋" reply:^(BOOL success, NSError * _Nullable error) {
            NSLog(@"%d,%@",success,error);
        }];

    }

回調中的success用來判斷是否驗證成功:

為 iOS APP 添加手機密碼、指紋驗證

通過這些驗證方式,可以使用戶的數據更加安全,在做敏感操作時,可以確保是手機的持有者。

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!