ios TouchID的使用

iOS 调用TouchID 身份验证 iOS8后苹果开放了Touch ID的API给开发者,这也给我们的app带来了新的体验。开发者们可使用向第三方应用开放了Touch ID权限的API,以便他们在应用中使用指纹认证来完成用户认证或支付购买。本文主要介绍如何在应用中集成Touch ID来校验用户的身份和注意事项。 支持系统和机型 iOS系统的指纹识别功能最低支持的机型为iPhone 5s,最低支持系统为iOS 8,虽然安装iO 阅读详情

TouchID主要使用到LocalAuthentication框架,用于判断是否可以使用指纹解锁、是否录入了指纹,指纹是否正确。

下面主要讲封装一个工具类有两个方法,可以简单为你的APP加上TouchID这个功能。

检测TouchID是否可用,iPhone6之后才可使用

主要使用LAContext类,调用canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics方法判断是否支持TouchID,error用来返回不可用的原因。

+ (BOOL)isDeviceSupportTouchID
{
    LAContext *context = [[LAContext alloc] init];
    NSError *contextError = nil;
    BOOL  isSupport = [context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&contextError];
    
    if (isSupport) {
        return YES;
    }
    else {
        
        switch (contextError.code) {
            case LAErrorTouchIDNotEnrolled:
            {
                //设备Touch ID不可用,用户未录入
                NSLog(@"TouchID is not enrolled");
                return NO;
                break;
            }
            case LAErrorPasscodeNotSet:
            {
                //系统未设置密码
                NSLog(@"A passcode has not been set");
                return NO;
                break;
            }
            default:
            {
                //TouchID 不可用,无指纹解锁功能
                NSLog(@"TouchID not available");
                return NO;
                break;
            }
        }
    }
}


开始调用指纹解锁的方法,replySuccess中进行成功的操作,failure中进行失败的操作。

+ (void)showTouchIDReplySuccess:(void(^)())replySuccess failure:(void(^)(NSError *error))failure
{
    if([[[UIDevice currentDevice] systemVersion] floatValue] < 8){
        failure(nil);
    }
    LAContext *context = [[LAContext alloc] init];
    context.localizedFallbackTitle = @"验证登录密码";
    
    //TODO:TOUCHID是否存在
    NSError *contextError = nil;
    if ([manger <span style="font-family: Arial, Helvetica, sans-serif;">isDeviceSupportTouchID</span>]) {
        
        //TODO:TOUCHID开始运作
        [context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics localizedReason:@"通过Home键验证已有指纹" reply:^(BOOL succes, NSError *error){
            if(succes){
                replySuccess();
            }else{
                failure(error);
                
                DDLogError(@"识别错误:%@",error);
                
            }
         }];
    }else{
        failure(contextError);
    }
    [context release];
}




指纹验证touchid 简单的指纹验证demo,也大家分享下,陆续还会上传其他个demo 立即下载

相关推荐

目标检测: 一文读懂 YOLOX

论文:YOLOX: Exceeding YOLO Series in 2021 论文链接:https://arxiv.org/pdf/2107.08430.pdf 代码链接:https://github.com/Megvii-BaseDetection/YOLOX. 文章目录1 为什么提出YOLOX2 YOLOX 网络架构3 YOLOX 实施细节3.1 backbone3.2 neck3.3 Head3.3.1 Decoupled Head3.3.2 Anchor-free3.4 如何计算Loss3.5 如

weixin_46142822的博客 3万+

iOS开发中 Touch ID的使用

背景:有个朋友说有没有办法把iPhone上的相册、备忘录加密(现在的备忘录是苹果已经加入了加密功能),于是想了下要怎么实现保存的数据实现访问加密、解密功能。 要提高逼格肯定是使用指纹识别,于是在苹果提供的文档里面搜索了“Touch ID”(没看之前以为会很难的)。、 苹果没有过多的介绍这个功能,提供了一个关于钥匙串存储密码和Touch ID 验证的Demo,然后就是

漂流少年的博客 3494

IAP板卡远程升级(串口网口都可)+Ymodem+AES对bin文件加密+pc软件+板卡相互烧录

还是决定记录一下,毕竟这个东西我也搞了挺久的,遇到一些棘手的,或者是因为我很粗心遇到的问题也和大家分享一下,。 板卡核心是 STM32F103RCT6,256kflash 前言 开始看这个远程升级的时候,我是一头雾水的,原子哥的教程里面也有说到过iap,有了一个大概的了解,我想不明白的是,通过串口下载的方式把hex文件下载到flash,和把bin文件下载到flash难道不是拉一根线,下载一个文件嘛,(初入职场的我并没有考虑到安全这个问题)如果直接将hex文件给到客户那边,风险是非常大...

那可真是太开心了的博客 5370

iOS TouchID和FaceID登录验证 简单使用

新入职公司 还是接受了之前的项目 提出新的需求 用指纹和面部进行安全验证和登录 涉及到TouchID和FaceID相关技术知识点 查找资料后简单了解并实现功能 先来点直观的图 指纹识别和面部识别公用一个库即可,系统会自动判断当前设备支持指纹识别还是面部识别 1.导入框架 #import <LocalAuthentication/LocalAuthentication.h...

iOS开发程序媛 9435

ENVI5.6 批量处理GF-2/GF-6/GF-7:从安装到融合的完整自动化流程

本文详细介绍了ENVI5.6环境下批量处理GF-2/GF-6/GF-7卫星数据的完整自动化流程,包括环境配置、工具安装、正射校正、图像融合等关键步骤。通过实战案例和优化技巧,帮助用户高效完成高分卫星影像处理,提升工作效率。特别针对GF-6和GF-7的特殊处理要点进行了深入解析。

weixin_42546392的博客 179

ENVI遥感技术

记录2024.03.06所遇到的遥感问题

qq_44453923的博客 4330

iOS Touch ID

// 导入头文件 #import <LocalAuthentication/LocalAuthentication.h> - (void)userFigerprintAuthenticationTipsStr:(NSString *)tipsStr{ //初始化上下文对象 LAContext *context = [[LAContext alloc] init]; ...

weixin_33872660的博客 264

【异常检测】新版异常检测库anomalib的使用

异常检测库anomalib的使用。

胡侃有料的博客 4388

iOS TouchID的使用

上一篇说了一下KeyChain 这次来说一下 TouchID,灰常简单。     iOS系统的指纹识别功能最低支持的机型为iPhone 5s,最低支持系统为iOS 8,虽然安装iOS 7系统的5s机型可以使用系统提供的指纹解锁功能,但由于API并未开放,所以理论上第三方软件不可使用。     需要包含类库   LocalAuthentication.framework      下

darkmengqi的专栏 905

通过轻量级图像增强Transformer (IAT) 提升YOLOv8在低光环境下的检测性能

随着深度学习和计算机视觉的快速发展,目标检测模型在各个领域中的应用不断扩展,特别是在低照度环境下的视觉任务。YOLOv8作为当前最先进的目标检测模型之一,在高亮度和良好照明条件下表现出色,但在低照度环境下的性能存在一定的不足。为了解决这一问题,我们提出了一种轻量级的低照度图像增强网络(IAT)来改进YOLOv8的暗光检测能力。本篇文章将深入探讨这一创新改进,并附带代码实现,帮助大家更好地理解这一技术的应用和效果。

博客 1214

【AI大模型应用开发】【LangChain系列】实战案例6:利用大模型进行文本总结的方法探索,文本Token超限怎么办?

假设有一组文档(PDF、Notion页面、客户问题等),你想要总结内容。可以利用大模型来帮你。今天来系统看下利用大模型来对文本进行总结的方法,以LangChain的使用为例。

同学小张的博客 3749

IOS8 TouchID使用介绍

本文转载至http://blog.youkuaiyun.com/jinkaiouyang/article/details/35555123 IOS8将指纹识别技术开放出来了。我们能够利用用户设置的touch ID来进行用户鉴权。 TouchID的API主要集成在LocalAuthentication.framework中。将改framework加入到工程中,并且需要iPhon...

a1311010193的博客 195

堆一呼一吸之间:动态扩缩容引发JVM堆内存震荡的伸缩算法、代际传导与容器定容解析

Kubernetes扩容后,新Java实例的GC频率常比老实例高出数倍,堆容量反复伸缩。本文从一次支付系统的GC陡增出发,结合HotSpot源码与JDK 8实测,拆解堆伸缩的记账规则:期望容量以GC后已用量为基数、以Xms为下限,按空闲比例判断扩缩,收缩只在老年代回收后按0%、10%、40%、100%步进;再剖析年轻代随老年代联动、晋升风暴与元空间触发线,对比Parallel、G1、ZGC等收集器及JDK 26的变化,讨论容器分账、HPA共振与原地扩缩容,最后给出分级定容、预热与监控的方案。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 15万+

iOS8使用TouchID

iOS8使用TouchID

SoulHao的专栏 1533

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

iOS TouchID验证和Keychain结合使用

1.TouchID的简单实现首先先导入LocalAuthentication/LocalAuthentication.h头文件 使用TouchID前先检测TouchID是否可用,然后再调用LAContext *context = [[LAContext alloc] init]; BOOL success = [context canEvaluatePolicy:LAPolicyDeviceOwn

xinxisxx的专栏 1545

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

iOS 使用touchID和FaceID操作

//判断版本 if (NSFoundationVersionNumber < NSFoundationVersionNumber_iOS_8_0) { NSLog(@"系统不支持TouchID"); } LAContext *context = [[LAContext alloc]init]; // 这个属性是设置指纹输入失败之...

ForeverMyheart的博客 796

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

ios使用touchId

  #import &lt;LocalAuthentication/LAContext.h&gt;               LAContext *myContext = [[LAContext alloc] init]; NSError *authError = nil; NSString *myLocalizedReasonS...

jimmychan的博客 1603

iOS开发使用TouchID验证登录踩过的一些坑(同时更新FaceID使用方法)

FaceID iPhoneX 提供的刷脸功能与之前的设备的TouchID类似,都是属于生物验证的范畴。苹果爸爸也是为了照顾开发者,这两个功能对应的API基本相同,对于之前支持TouchID的APP其实可以在不做任何修改的基础上兼容FaceID,只是在一些UI样式上需要修改。 biometryType iOS11之后LAContext新增biometryType属性,调用时候可以根据这个属...

坤宇的博客 5225

iOS TouchID 使用注意事项

LAPolicy 区别 LAPolicyDeviceOwnerAuthenticationWithBiometrics 和LAPolicyDeviceOwnerAuthentication 参考:http://www.jianshu.com/p/22b1458d4559(iOS指纹/密...

chuitetuo3901的博客 470

iOS_使用LAContext实现TouchID(指纹识别)的使用

在iPhone5s问世后,苹果的后续移动设备相继添加了指纹功能,从实际使用中还是相当方便的,比如快捷支付、快捷登录等应用场景,系统也提供给了我们相关的操作框架:LocalAuthentication,使用LAContext对象即可完成指纹识别,由于指纹识别时遇到的情况也比较多,所以我做了相应的封装,代码具体如下: LM_TouchID.h 内容: // // LM_TouchID

守候可爱多的博客 955

iOS TouchID

+ (void)fingerVerify:(void(^)(BOOL result))completion { LAContext *context = [[LAContext alloc] init]; NSError *err = nil; if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthentication...

长沙火山 659
上一篇: iOS 对于邮箱、电话号码、身份证等检查
下一篇: iOS 判断首次启动
winterLiao
博客等级 码龄10年 5粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值