| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
jopen
9年前发布

为 iOS APP 添加手机密码、指纹验证

原文  http://my.oschina.net/u/2340880/blog/542221?fromerr=fpdpdLPK
 

一、引言

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 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1449881732426.html
IOS iOS开发 移动开发