Android M 开始,系统中加入了指纹相关功能.

主要用到的类为:FingerprintManager

只提供三个方法:

返回值

方法签名

说明

void

authenticate(FingerprintManager.CryptoObject crypto, CancellationSignal cancel, int flags, FingerprintManager.AuthenticationCallback callback, Handler handler)

用于指纹验证

boolean

确定是否至少有一个指纹登记。

boolean

确定指纹硬件是否存在并且功能正常。

那么有了以上方法,就可以很简单的判断手机是否支持指纹,以及是否有指纹录入.以下为代码实现:

/**

* 检查指纹

*

* @param context

* @return

*/

public static rx.Observable checkFingerprint(final Context context) {

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {

return //请求指纹权限

new RxPermissions(context)

.request(Manifest.permission.USE_FINGERPRINT)

.map(new Func1() {

@TargetApi(Build.VERSION_CODES.M)

@Override

public Boolean call(Boolean aBoolean) {

if (aBoolean) {

FingerprintManager fingerprintManager =

(FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE);

//确定是否指纹硬件存在和功能

return fingerprintManager.isHardwareDetected() && fingerprintManager.hasEnrolledFingerprints();

}

return false;

}

});

} else {

return rx.Observable.create(new Observable.OnSubscribe() {

@Override

public void call(Subscriber super Boolean> subscriber) {

subscriber.onNext(false);

}

});

}

}

android 指纹是否设置,检查Android是否支持指纹识别以及是否已经录入指纹相关推荐

  1. android 如何动态设置margin,Android 动态设置margin

    android的view中有setPadding,但是没有直接的setMargin方法.如果要在代码中设置该怎么做呢? 可以通过设置view里面的LayoutParams 设置,而这个LayoutPa ...

  2. android 恢复出厂设置 时间,Android 恢复出厂设置后,时间不能恢复替:2013年1月1日...

    Android 恢复出厂设置后,时间不能恢复为:2013年1月1日 前言         欢迎大家我分享和推荐好用的代码段~~声明         欢迎转载,但请保留文章原始出处: CSDN:http ...

  3. android studio自动设置权限,android studio打包,安装后权限都没有默认打开,如何设置打开?...

    android studio打包,安装后权限都没有默认打开,如何设置打开?以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! ...

  4. Android为spinner设置适配器,Android Spinner与适配器模式详解及实例代码

    最近做项目对Android Spinner 使用,这里简单写个小例子,来测试如何使用. Spinner 是一个下拉列表,往安卓界面中拖拽一个Spinner控件,在属性中设置Android:entrie ...

  5. android studio 快捷键设置大全,Android studio 快捷键设置

    习惯了eclipse的快捷键,转到Studio的时候可能一时接受不了Studio的快捷键,如果还想接着使用eclipse的快捷键怎么办. 虽然Studio已经为我们提供了可以导入eclipse的快捷键 ...

  6. android播放器设置中文,Android 视频播放器 (一):使用VideoView播放视频

    一.简介 作为Android开发,我们不可避免的会接触到视频播放,VideoView做为最简单的播放器,我们是不应该不会的. 下面简单介绍一下VideoView: •  VideoView是使用Med ...

  7. android的pptp设置方法,Android系统如何配置PPTP 客户端拨号

    什么是PPTP? PPTP(Point to Point Tunneling Protocol),即点对点隧道协议.该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网(), ...

  8. android studio debug设置,在Android Studio中使用Flutter进行调试时如何“设置值...”

    问题 使用"New Flutter Project"创建Flutter App时,以下图像和代码是默认设置 . import 'package:flutter/material.d ...

  9. android 代码布局设置wrap_content,android ScrollView布局(wrap_content,最大大小)

    我最后编写了自己的类,扩展了ScrollView 既然你问--这是代码.可能不是最干净但它做我想要的. 请注意,它期望在创建视图时设置layout_weight,并且不应在父LinearLayout中 ...

  10. android打开蓝牙设置界面,Android 点击跳转到蓝牙设置界面

    基于H5的微信支付开发详解 这次总结一下用户在微信内打开网页时,可以调用微信支付完成下单功能的模块开发,也就是在微信内的H5页面通过jsApi接口实现支付功能.当然了,微信官网上的微信支付开发文档也讲 ...

最新文章

  1. 如何找回RAID1丢失的数据
  2. [C#基础]Func和Action学习
  3. 【 C 】用链表实现堆栈
  4. hp compaq presarop v3009笔记本重新启动蓝屏!
  5. jquery mobile快速入门_【K些项目】学透jquery,11个国内最新项目资料
  6. ALV复制内容到剪贴板
  7. 分析Linux内核5.0系统调用处理过程
  8. tensorflow2安装时候的一个dll找不到的错误
  9. 怎么判断一个字符串的最长回文子串是否在头尾_【Leetcode每日打卡】最长回文串...
  10. java匿名对象 回收_Java 匿名对象
  11. fork的写时复制1
  12. 一个免费功能强大的谷歌翻译api
  13. 主机信息采集(域名、网站备案等)初学者指南
  14. pytorch实现自己制作训练集和测试集
  15. java开发聚合支付系统源码可支撑百万级并发
  16. 大学生简历计算机专业模板,计算机专业大学生简历模板
  17. R 绘制带有数字标签的多分类柱状图
  18. 使用weixin-java-miniapp实现微信小程序登录接口
  19. 芯片引脚断了,没关系,剥开去盖后飞线还能用......
  20. 戴尔7040linux改装win7,戴尔OptiPlex 3060台式机win10改win7系统(完美支持usb)

热门文章

  1. 进阶的阿牛哥之pandas透视表pivot_table的使用
  2. 如何在vue中插入语音提示
  3. js实现房贷月供计算还款状况(贷款计算功能)
  4. Docker容器访问外部世界
  5. 【飞思卡尔】飞思卡尔摄像头算法基本方法
  6. FoveaBox(Beyond Anchor-based Object Detector) 学习笔记
  7. Android Q+ 新特性 Settings Panel
  8. windows10开机时出现你的设备遇到问题,需要重启
  9. 入侵mssql2000
  10. Latex 中的空格汇总