美文网首页
安卓指纹识别

安卓指纹识别

作者: 贝贝ovo | 来源:发表于2017-10-26 18:00 被阅读99次

    http://blog.csdn.net/leafact/article/details/53791647
    http://blog.csdn.net/createchance/article/details/51991764

    http://blog.csdn.net/wl9739/article/details/52444671

    项目可能用到指纹识别,此为调研总结

    简易总思路
    1.首先声明指纹识别权限:
    <uses-permission android:name="android.permission.USE_FINGERPRINT"/>

    2.申明权限之后,设备条件判断
    1.设备是否支持指纹识别
    2.设备是否处于安全保护中(有指纹识别的手机,在使用指纹识别的时候,还需要强制设置密码或者图案解锁,如果未设置的话是不许使用指纹识别的)
    3.设备是否已经注册过指纹(如果用户未使用过这个指纹技术,那么只能提示用户到系统设置里面去设置)

    3.指纹识别API调用 获得FingerprintManager的对象引用
    接下来就是调用指纹识别的API了,因为指纹识别是6.0系统才有的(当然不排除有些厂商定制系统的时候加入这些API,这里暂不考虑)。
    有两种方式:
    //这种使用的是v4的兼容包,推荐使用这种
    FingerprintManagerCompat managerCompat = FingerprintManagerCompat.from(this);
    //这种是使用系统服务,但是必须要在sdk为23以上版本才行
    FingerprintManager fingerprintManager = (FingerprintManager)getSystemService(Context.FINGERPRINT_SERVICE);

    4.调用 managerCompat.authenticate方式实现指纹识别,这个方法有5个参数,其中第三个是CancellationSignal,调用cancel 可以取消指纹识别。第四个为AuthenticationCallback,

    Android M中的指纹识别接口

    所有的指纹识别接口全部在android.hardware.fingerprint(https://developer.android.google.cn/reference/android/hardware/fingerprint/package-summary.html)这个包下,这个包中的类不是很多,如下:

    fingerprint.png
    上面的图中,我们看到这个包中总共有4个类,下面我们简要介绍一下他们:
    1.FingerprintManager:主要用来协调管理和访问指纹识别硬件设备
    2.FingerprintManager.AuthenticationCallback这个一个callback接口,当指纹认证后系统会回调这个接口通知app认证的结果是什么
    3.FingerprintManager.AuthenticationResult这是一个表示认证结果的类,会在回调接口中以参数给出
    4.FingerprintManager.CryptoObject这是一个加密的对象类,用来保证认证的安全性,

    http://blog.csdn.net/pf_1308108803/article/details/67656887
    http://blog.csdn.net/qq_37293612/article/details/54598302

    相关文章

      网友评论

          本文标题:安卓指纹识别

          本文链接:https://www.haomeiwen.com/subject/wpsxpxtx.html