热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

Android添加指纹解锁功能的实现代码

当开发的APP需要加密验证时可以考虑添加系统指纹解锁功能。这篇文章主要介绍了Android添加指纹解锁功能的实现代码,需要的朋友可以参考下

前言

指纹解锁技术成为当前验证用户信息的重要手段,基本上当前手机都配置了指纹解锁。当开发的APP需要加密验证时可以考虑添加系统指纹解锁功能。

添加指纹解锁功能步骤很简单,大致过程如下:

1 添加权限

在Manifest.xml文件中添加访问用户指纹的权限。

 

2 声明系统提供的指纹管理类对象

private FingerprintManagerCompat manager;

3 获取指纹管理类对象

 manager = FingerprintManagerCompat.from(this);

4 执行验证过程

 manager.authenticate(null, 0, null, new FingerAuthenticateCallBack(), null);

5 监听指纹验证结果

指纹验证结果通过回调方式传递给开发者,需要开发者继承AuthenticationCallback类。具体方式如下:

 public class FingerAuthenticateCallBack extends FingerprintManagerCompat.AuthenticationCallback {
  private static final String TAG = "FingerAuthenticateCallBack";
  // 当出现错误的时候回调此函数,比如多次尝试都失败了的时候,errString是错误信息
  @Override
  public void onAuthenticationError(int errMsgId, CharSequence errString) {
   Log.e(TAG, "onAuthenticationError: " + errString);
  }
  // 当指纹验证失败的时候会回调此函数,失败之后允许多次尝试,失败次数过多会停止响应一段时间然后再停止sensor的工作
  @Override
  public void onAuthenticationFailed() {
   Log.d(TAG, "onAuthenticationFailed: " + "验证失败");
  }
  @Override
  public void onAuthenticationHelp(int helpMsgId, CharSequence helpString) {
   Log.e(TAG, "onAuthenticationHelp: " + helpString);
  }
  // 当验证的指纹成功时会回调此函数,然后不再监听指纹sensor
  @Override
  public void onAuthenticationSucceeded(FingerprintManagerCompat.AuthenticationResult
              result) {
   Log.e(TAG, "onAuthenticationSucceeded: " + "验证成功");
  }
 }

总结

以上所述是小编给大家介绍的Android添加指纹解锁功能的实现代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


推荐阅读
  • 本文介绍了如何通过自定义View中的declare-styleable属性创建枚举类型,并在代码中访问这些枚举值的方法。 ... [详细]
  • 使用MonkeyTalk实现Android自动化测试的Agent配置
    本文详细介绍了在MonkeyTalk框架下设置Android Agent的具体步骤,包括如何将Android项目转换为AspectJ项目,以及如何正确配置和集成MonkeyTalk的Agent库。 ... [详细]
  • 如何在Android项目中使用Framework.jar或其他系统Jar包
    本文介绍了一种方法,通过创建自定义库目录来集成系统的Jar包,以避免方法数限制,并确保项目的顺利编译。首先,需要在项目的src同级目录下创建一个专门用于存放系统Jar包的目录。 ... [详细]
  • 本文介绍如何通过自定义控件LoadLayout实现ListView的上拉加载更多和下拉刷新功能。LoadLayout支持上拉加载,而下拉刷新则利用了android.support.v4.widget.SwipeRefreshLayout组件。 ... [详细]
  • Android 手机安全应用首屏布局设计
    本文详细介绍了如何构建一个功能丰富的手机安全应用的首个导航界面布局。通过实例代码和效果展示,帮助开发者快速理解和实现相关功能。 ... [详细]
  • 本文介绍了Android中常见的动画类型及其应用场景,通过具体的代码示例展示了如何在Activity跳转时添加平滑过渡效果,提升用户体验。 ... [详细]
  • 解决fetch上传图片至微信公众号H5页面的问题
    在近期的一个项目需求中,需要在微信公众号内嵌入H5页面,并实现用户通过该页面上传图片的功能,包括拍摄新照片或从已有相册中选择。前端开发中采用了fetch API进行接口调用,但遇到了上传图片时数据无法正确传递的问题。 ... [详细]
  • 解决Android开发中的TextView难题
    探讨了在Android开发过程中遇到的关于TextView组件的常见问题,特别是如何实现多行文字的跑马灯效果,并提供了初步的解决方案和参考资料。 ... [详细]
  • Only2 Labs 是一家专注于视觉设计的工作室,如果您对当前的设计感到不满,或者急需寻找一个可靠的设计合作伙伴,甚至是您的团队项目需要专业指导,Only2 Labs 都将竭诚为您提供帮助。 ... [详细]
  • 本文探讨了Windows Presentation Foundation (WPF)如何通过扩展Microsoft Build Engine (MSBuild)来增强其构建能力,特别是在处理WPF特有的任务时。 ... [详细]
  • CGroups: 资源管理和控制
    CGroups(Control Groups)是Linux内核提供的一个功能,旨在限制、记录和隔离进程组使用的物理资源,如CPU、内存和I/O等。它通过精细的资源管理,支持现代容器技术如Docker的资源限制需求。 ... [详细]
  • 深入解析Java中的锁类型及其应用场景
    本文详细介绍了Java中常见的锁类型,包括乐观锁与悲观锁、独占锁与共享锁、互斥锁与读写锁、可重入锁、公平锁与非公平锁、分段锁、偏向锁、轻量级锁、重量级锁以及自旋锁。每种锁的特性、作用及适用场景均有所涉及。 ... [详细]
  • 本文探讨了HDU 4035的问题,涉及一个由n个房间组成的迷宫,这些房间通过n-1条隧道相互连接,形成一棵树结构。任务是从起点1号房间出发,计算到达出口所需经过的平均隧道数量,考虑了在每个房间中可能发生的三种情况及其相应概率。 ... [详细]
  • 本文介绍如何利用Python中的Epoll机制构建一个高效的Web服务器,该服务器能够处理多个并发连接,并向每个连接的客户端返回预定义的响应文本。通过使用Epoll,服务器可以实现高性能的I/O多路复用。 ... [详细]
  • KKCMS代码审计初探
    本文主要介绍了KKCMS的安装过程及其基本功能,重点分析了该系统中存在的验证码重用、SQL注入及XSS等安全问题。适合初学者作为入门指南。 ... [详细]
author-avatar
日后再曰
这个家伙很懒,
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有