如何检查Android中指纹认证的设备兼容性

2024-01-09

我正在使用 android 6.0 api 进行指纹身份验证。 我的要求是,如果当前设备支持指纹认证,那么我将进行指纹认证,否则将使用正常方式登录应用程序。

所以,任何人都可以告诉我,如何检查 Android 中指纹认证的设备兼容性。

提前致谢。


你必须使用方法isHardwareDetected on FingerprintManager class.

确定指纹硬件是否存在且功能正常。退货 如果硬件存在且正常工作,则为 true,否则为 false。

// Check if we're running on Android 6.0 (M) or higher
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
    //Fingerprint API only available on from Android 6.0 (M)
    FingerprintManager fingerprintManager = (FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE);
    if (!fingerprintManager.isHardwareDetected()) { 
        // Device doesn't support fingerprint authentication     
    } else if (!fingerprintManager.hasEnrolledFingerprints()) { 
        // User hasn't enrolled any fingerprints to authenticate with 
    } else { 
        // Everything is ready for fingerprint authentication 
    }
}

不要忘记在 AndroidManifest.xml 中添加访问指纹功能的权限。 自 API 28 起:

<uses-permission android:name=" android.permission.USE_BIOMETRIC" />

API28之前:

<uses-permission android:name="android.permission.USE_FINGERPRINT" />

带支持库

如果您不想检查Build.VERSION,也可以在低于Android 6.0的设备上使用Support Library进行检查

添加依赖:

compile "com.android.support:support-v4:23.0.0"

And use FingerprintManagerCompat类如下:

FingerprintManagerCompat fingerprintManagerCompat = FingerprintManagerCompat.from(context);

if (!fingerprintManagerCompat.isHardwareDetected()) { 
    // Device doesn't support fingerprint authentication     
} else if (!fingerprintManagerCompat.hasEnrolledFingerprints()) { 
    // User hasn't enrolled any fingerprints to authenticate with 
} else { 
    // Everything is ready for fingerprint authentication 
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查Android中指纹认证的设备兼容性 的相关文章

  • 如果我无限期地在后台运行 Android 线程会发生什么

    Android 文档表明 Oreo 对后台执行有新的限制 https developer android com about versions oreo background https developer android com abou
  • 如何设置日期选择器的日期?

    I use DatePickerDialog OnDateSetListener效果很好 我想在日期选择器中添加 120 天的日期 我的意思是 如果我添加 120 天 日期和月份将自动更改 怎么做 像这样的事情应该可以解决问题 Calend
  • 即使成功固定后,ParseQuery 在从本地数据存储查询时也给出 0 个对象

    我正在使用 parse com 的 Android SDK 并且遇到了一个特殊的问题 从片段的 onCreate 中 从服务器获取一个对象 Pin it 从本地数据存储中获取对象 以下是 onCreate 中的代码片段 ParseObjec
  • 使用 setMessage() 在 AlertDialog 中显示多行文本和变量

    我需要在警报对话框中显示多行文本 如果我使用多个 setMessage 方法 则仅显示最后一个 setMessage 如下所示 final AlertDialog alertDialog new AlertDialog Builder th
  • 浮动操作按钮动画

    当 fab 出现时 它使用动画中的比例进行动画处理 当它隐藏时 它使用向外扩展动画 因此 它是一个缩小和缩小的动画 这个动画要怎么制作呢 从 Zielony 的回答来看 我完全按照我想要的方式制作了它 下面是正确应用效果的代码 scale
  • 如何在同一个列表视图中同时实现ontouch和onfling?

    我有一个listview并实现了onclick和onfling 问题是当我进行fling 从左向右滑动 时 listview的onclick事件也被执行 如何克服这个问题 如何区分列表视图中的触摸 点击 和滑动 滑动 listClickLi
  • 如何让精灵对 cocos2d android 中的触摸做出反应?

    我有 1 支枪 当点击屏幕上的任何一点时 子弹都会发射 但根据我的要求 有 3 支枪 精灵 当触摸任何精灵时 子弹必须发射 当谷歌搜索时 我知道这可以是通过使用targetedTouchDelegate或循环所有的精灵并为每个触摸的精灵设置
  • 如何让文字发光?

    我们可以将发光效果应用于任何文本 如下所示 Updated Please also tell me what things i need to create something like this 我需要为此使用特殊字体吗 如何使用以下命令
  • 以编程方式更改小部件布局

    假设我有两个小部件布局 Layout1 和 Layout2 小部件的默认值是 Layout1 但我允许用户选择 他们希望小部件采用哪种布局 所以如果用户更改为 Layout2 如何以编程方式将布局更改为 Layout2 小部件没有像活动那样
  • Android MapView v2 黑屏

    我一直在尝试实现 android 的 MapView v2 除了这个错误之外 我让它工作得很好 This is what it looks like when I load the app from scratch 如您所见 没有任何问题
  • 我可以举一个使用 runOnUiThread 显示 toast 的示例吗?

    我搜索了很多地方 但找不到 runOnUiThread 实现的完整工作示例 我尝试了很多 但出现了很多错误 我只想显示线程中的吐司 这是最终的完整代码 感谢所有回复的人 import android app Activity import
  • 从最近打开的应用程序中打开 Android 中的旧活动?

    我有 4 个活动 Launcher MainActivity SingleTask NotificationActivity ExampleActivity 当用户点击通知时 通知活动然后打开示例活动并完成通知活动 当我按下回键时主要活动打
  • ConstraintLayout 源代码位于哪里?

    哪里可以找到android的源代码ConstraintLayout 我在支持框架存储库甚至谷歌搜索中都找不到它 它的源代码在这里 https android googlesource com platform frameworks opt
  • 如何保存/加载 BigInteger 数组

    我想保存 加载BigInteger数组传入 传出 SharedPreferences 如何做呢 例如对于以下数组 private BigInteger dataCreatedTimes new BigInteger 20 Using Gso
  • Android 应用程序中通过 VideoView 将正在播放的视频静音

    我想在我的 Android 应用程序中将 VideoView 正在播放的视频静音 我在 VideoView 类中找不到任何方法来执行此操作 知道如何做到这一点吗 我在 MediaPlayer 类中找到了一个方法 setVolume 但我无法
  • 当 SystemUI 在 Android Boot 中加载时

    如何知道系统 UI 何时加载Android启动过程 状态栏和导航栏视图到底绘制在哪里 作为SystemUI是一个特权应用程序 那么它是否在启动器应用程序 主屏幕 启动之前加载 我不知道 欢迎任何建议 下面是一系列简要解释的步骤 希望能够阐明
  • 获取定制旋转器项目

    我实现了自定义微调器 public class MyAdapter extends ArrayAdapter
  • onActivityResult() Intent 数据始终为 null

    有人可以告诉我为什么Intent data总是为空 Override protected void onActivityResult int requestCode int resultCode Intent data super onAc
  • Firebase 附加权限。是否要求用户接受

    我目前正在致力于将 Firebase Analytics 集成到我的 Android 应用程序中 我遇到的问题是 Firebase 添加了一些新权限 这些权限是 permission WAKE LOCK com google android
  • INSTALL_FAILED_NO_MATCHING_ABIS:无法提取本机库,res = -113设备

    当我在 android 8 0 设备中执行 android 项目时 我收到错误 INSTALL FAILED NO MATCHING ABIS 无法提取本机库 res 113 错误图像 https i stack imgur com 3kb

随机推荐

  • 如何使用 Symfony 和 Jquery 发出 POST Ajax 请求

    我需要在我的 symfony 项目中存储一些地图参数 为此我需要在我的视图中实现一些 Ajax 它将能够将一些信息传递给控制器 我阅读了文档 尝试编写一些代码 但我无法使其工作 而且 Ajax 调试起来确实很痛苦 这是控制器部分 Route
  • dataType 与接受 - Ajax 请求

    我试图理解 Ajax 请求中的 Accept 和 dataType 之间的区别 文件指出 文档 http api jquery com jquery ajax 接受 默认值 取决于数据类型 类型 普通对象 请求标头中发送的内容类型 告诉服务
  • VS 2012 SSDT 构建 CLR,IEnumerable 生成的语法失败

    我正在尝试重用找到的一些代码here http www pawlowski cz 2010 09 sql server 2005 and sql server 2008 regular expressions and pattern mat
  • 在 R 中绘制多元逻辑回归模型的结果

    我想绘制针对调整后的特定自变量 即独立于模型中包含的混杂因素 与结果 二元 关系的多元逻辑回归分析 GLM 的结果 我看过推荐使用以下方法的帖子predict命令后跟curve 这是一个例子 x lt data frame binary o
  • 如何使用实体框架 6 执行全文搜索

    我有疑问 var query DataContext Fotos Where x gt x Pesquisa Contais myTerm 生成的SQL是 SELECT FROM Fotos AS Extent1 WHERE Extent1
  • 在 WebClient 中接受 Cookie?

    我刚刚开始尝试 C WebClient 我所拥有的是下面的代码 它从网站获取 html 代码并将其写入 txt 文件中 我遇到的唯一问题是 某些网站要求您在使用该网站之前接受 cookie 这导致的原因是它没有将真正的网站 html 代码写
  • Sharpsign 等号阅读器宏的示例?

    我见过这个使用过一次 但无法理解它的作用 参考文献说它是 n object读取为以 object 作为其打印表示的任何对象 然而 该对象被标记为 n 这是必需的 无符号十进制整数 可通过语法 n 进行参考 标签的范围是最外层正在读取的表达式
  • 计算/异步数据获取

    我正在尝试创建简单的 Vue CouchDB 应用程序 使用 Vanilla JS 可以正常工作 但我无法通过 Promise 或异步函数从数据库获取数据到我的 vue 实例 这是我的代码 app html div table thead
  • Cassandra 中写入总是比读取快吗?

    我在听这次演讲 https www youtube com watch v zyZ35YyT 8Cassandra 中的数据建模 演讲者的总体说法是 Cassandra 中的写入速度比读取速度快 这种情况总是正确的吗 如果是这样为什么 尽管
  • Python 分布式计算(作品)

    我正在使用旧线程发布试图解决相同问题的新代码 什么构成了安全的泡菜 this http docs python org library crypto html sock py from socket import socket from s
  • _Bool 和 bool:如何解决使用 _Bool 的 C 库的问题?

    我用 C 语言编写了一系列数据结构和函数 其中一些使用 Bool 数据类型 当我开始时 该项目将是纯 C 的 现在我正在研究使用基于 C 的 GUI 工具包 并将后端代码放入库中 但是 在编译 C GUI 时 编译器会发出以下错误 ISO
  • Angular ng-submit 被调用两次

    我有一个有角度的表单 其提交方法被击中两次 我不明白为什么 我对 Angular 还很陌生 所以我可能忽略了一些相当简单的东西 Html div div
  • 如何完全禁用 WooCommerce 产品类型的运输?

    我想禁用为特定产品类型选择运输方式的要求 此处为 预订 产品类型 在结账时 因此 他们应该能够购买无需运输方式的产品 要在购物车中有特定产品类型时完全禁用运输 您将使用以下命令 add filter woocommerce cart nee
  • 自定义 Flutter Service Worker

    Flutter 自动生成 Service Workerflutter service worker js在为网络构建时 但我想为第三方路由添加我自己的获取 缓存规则 我怎样才能做到这一点 到目前为止 我发现的唯一解决方法是制作一个脚本来后处
  • JavaScript 中的“双波浪号”(~~) 运算符是什么? [复制]

    这个问题在这里已经有答案了 我在一些代码中看到了这一点 但我不知道它的作用 var jdn function y m d var tmp m lt 2 1 0 return 1461 y 4800 tmp 4 367 m 2 12 tmp
  • -Android 3 浏览器中的 webkit-tap-highlight-color

    我们有一个包含许多输入的表单 每当我点击表单时 它就会突出显示为灰色 I have webkit tap highlight color rgba 255 255 255 0 我也使用了rgba 255 255 255 0 这会在 iOS5
  • Microsoft.Graph 获取组的所有用户

    我正在使用 Microsoft Graph 我想返回特定组中所有用户的列表 我找不到任何关于此的易于理解的信息 我尝试过使用 Request Expand x gt x Members 但这只返回 20 个用户 并且它们不会被分页 参见he
  • React-bootstrap 按钮 bsStyle

    好吧 我显然错过了一些东西 但现在无法弄清楚 import React from react import Button from react bootstrap let App React createClass render funct
  • 在 Cors 中发送原始 cookie 不适用于 VideoJS

    我有以下子域 stream example com sub example com 这两个域都有 SSL 证书并且有效 我在用videoJS 7 6 6其中有http streaming https github com videojs h
  • 如何检查Android中指纹认证的设备兼容性

    我正在使用 android 6 0 api 进行指纹身份验证 我的要求是 如果当前设备支持指纹认证 那么我将进行指纹认证 否则将使用正常方式登录应用程序 所以 任何人都可以告诉我 如何检查 Android 中指纹认证的设备兼容性 提前致谢