美文网首页Ios@IONIC
app高大上的指纹识别登陆

app高大上的指纹识别登陆

作者: Funnyer | 来源:发表于2016-05-30 13:04 被阅读858次

iOS 8 SDK向开发者公开了Touch ID指纹识别功能,允许App对用户身份进行本地验证。使用Touch ID非常简单,只需要2步即可:

  1. 检查Touch ID是否可用。
  2. 获得指纹验证结果。

首先需要添加LocalAuthentication.framework库,注意只有真机才有这个库,模拟器没有。

#import <LocalAuthentication/LocalAuthentication.h>

    LAContext *ctx = [[LAContext alloc] init];
    NSError *error = nil;
    NSString *myLocalizedReasonString = @"请输入指纹";
    // 判断设备是否支持指纹识别
    if ([ctx canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {
        NSLog(@"支持");
        //提示:指纹识别只是判断当前用户是否是手机的主人!
        [ctx evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:myLocalizedReasonString reply:^(BOOL success, NSError *error) {
            error = error;
            NSLog(@"%d %@", success, error);
            if (success) {
                // 登录成功
                NSLog(@"登陆成功");
            }else{
            
                NSLog(@"%@",error.localizedDescription);
                switch (error.code) {
                    case LAErrorSystemCancel:
                    {
                        NSLog(@"Authentication was cancelled by the system");
                        //切换到其他APP,系统取消验证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;
                    }
                    default:
                    {
                        [[NSOperationQueue mainQueue] addOperationWithBlock:^{
                            //其他情况,切换主线程处理
                        }];
                        break;
                    }
                }
            }
        }];
    } else {
        NSLog(@"不支持");
        //不支持指纹识别,LOG出错误详情
        
        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);
    
    }

指纹识别登陆就是这么简单。虽然本人尚未在项目中使用这个功能,但是在我实际开发过程中遇到过机器注册大量刷单的情况,个人觉得在账号密码登录之后需要指纹识别登陆,能有效防止机器刷单。

相关文章

  • app高大上的指纹识别登陆

    iOS 8 SDK向开发者公开了Touch ID指纹识别功能,允许App对用户身份进行本地验证。使用Touch I...

  • iOS 指纹识别

    指纹识别: iPhone5S开始,推出指纹识别 iOS8.0之后苹果允许第三方 App 使用 Touch ID进行...

  • 隐藏式指纹识别靠谱吗?

    很多网友希望手机上可以有隐藏式指纹识别,实际上目前已有技术上可行的隐藏式指纹识别方案,但是为什么要上隐藏式指纹识别...

  • iOS-少用的知识点、功能点相关

    包括iOS 指纹识别等了流程,底磁感应,App的版本更新,蓝牙. 1.iOS指纹识别登录流程及实现2.多层pres...

  • 使用Touch Id验证

    在新版支付宝和新版QQ中都加入了指纹识别功能,这么高大上的功能自然要学学怎么使用了。 像这种调用系统功能的,自然要...

  • 学生党常用的“高大上”APP推荐

    写在前面:轻度APP控,andriod,实用主义者APP使用心得:APP只是工具,它只是帮助你达到某种目的的手段,...

  • iOS 指纹识别的一点封装(转自icoder )

    iOS 指纹识别的一点封装 字数173 阅读20 评论0 喜欢0 指纹识别现在很多带账户安全信息的app 都有,下...

  • 高大上?

    LOFTER上有个『我用VSCO修片』,就是這个⋯

  • 高大上

    忍不住想起小时候的我,是如何年纪轻轻懂得说话高大上的。初一语文课,老师问看过骆驼祥子的举手。我和另外一个女生举手了...

  • 高大上

    我大襄阳现在真的是越来越高大上了啊! 你看:应急指挥、应急供水、应急医疗救护、应急灭火器、应急厕所、应急停车场、应...

网友评论

    本文标题:app高大上的指纹识别登陆

    本文链接:https://www.haomeiwen.com/subject/cnzqdttx.html