这篇文章主要为大家详细介绍了iOS Touch ID指纹识别技术,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Touch ID简介:
苹果公司在iPhone 5S手机中推出了指纹识别功能,提高手机安全性的同时也方便了用户操作。其功能是通过Touch ID实现的,从iOS 8系统开始,苹果开发一些Touch ID的API使得开发人员可以在自己的应用程序中调用指纹识别功能。
Touch ID功能就是指纹识别密码。使用指纹识别功能需要先进入设置—Touch ID 与密码中根据提示添加指纹。
从iOS 8系统开始开放了Touch ID的验证接口功能,在应用程序中可以判断输入的Touch ID是否设置持有者的Touch ID。
Touch ID使用:
创建一个iOS工程项目。
打开工程的General — Linked Frameworks and Libraries面板,单机“+”按钮添加“LocalAuthentication.framework”框架,如图26-1所示。
编写程序时导入“LocalAuthentication.framework”框架的头文件:
#import <LocalAuthentication/LocalAuthentication.h>。
写了一个简单的测试Touch ID的例子,效果图如下:(若图片不清楚可右键将图片保存本地再放大看)
下面贴上代码:
#import <UIKit/UIKit.h>
@interface HWTouchIDTestVC : UIViewController
@end
#import "HWTouchIDTestVC.h"
#import <LocalAuthentication/LocalAuthentication.h>
@interface HWTouchIDTestVC ()
@property (nonatomic, weak) UILabel *label;
@end
@implementation HWTouchIDTestVC
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor blackColor];
//创建控件
[self creatControl];
}
- (void)creatControl
{
//测试按钮
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(50, 200, 120, 50)];
btn.backgroundColor = [UIColor orangeColor];
[btn setTitle:@"测试按钮" forState:UIControlStateNormal];
[btn addTarget:self action:@selector(btnOnClick) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btn];
//提示标签
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(220, 200, 120, 50)];
label.text = @"测试标签";
label.textAlignment = NSTextAlignmentCenter;
label.backgroundColor = [UIColor yellowColor];
[self.view addSubview:label];
self.label = label;
}
- (void)btnOnClick
{
//初始化
LAContext *context = [[LAContext alloc] init];
NSError *error = nil;
//显示的文字
NSString *str = @"指纹验证";
//判断是否能进行验证
if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:str reply:^(BOOL success, NSError * _Nullable error) {
if (success) {
NSLog(@"验证成功");
dispatch_async(dispatch_get_main_queue(), ^{
self.label.text = @"验证成功";
self.label.backgroundColor = [UIColor greenColor];
});
}else {
NSLog(@"验证失败,error:%@", error);
dispatch_async(dispatch_get_main_queue(), ^{
self.label.text = @"验证失败";
self.label.backgroundColor = [UIColor redColor];
});
}
}];
}else {
NSLog(@"无法验证指纹,error: %@", error);
self.label.text = @"无法验证";
}
}
@end
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程学习网。
本文标题为:iOS Touch ID指纹识别技术简介
基础教程推荐
- iOS中如何判断当前网络环境是2G/3G/4G/5G/WiFi 2023-06-18
- Android实现短信验证码输入框 2023-04-29
- iOS Crash常规跟踪方法及Bugly集成运用详细介绍 2023-01-18
- iOS开发使用XML解析网络数据 2022-11-12
- Flutter进阶之实现动画效果(三) 2022-10-28
- iOS开发 全机型适配解决方法 2023-01-14
- MVVMLight项目Model View结构及全局视图模型注入器 2023-05-07
- IOS获取系统相册中照片的示例代码 2023-01-03
- Android开发Compose集成高德地图实例 2023-06-15
- Android Compose自定义TextField实现自定义的输入框 2023-05-13