zoukankan      html  css  js  c++  java
  • anroid平台指纹方案

    神盾的FingerPrint方案

     

    在Java层,神盾主要提供如下几个包:

     

    egistec.fingerauth.api.FPAuthListeners;

    egistec.fingerauth.api.FPAuthListeners.EnrollListener;

    egistec.fingerauth.api.FPAuthListeners.EnrollMapProgressListener;

    egistec.fingerauth.api.FPAuthListeners.StatusListener;

    egistec.fingerauth.api.SettingLib;

     

    具体使用方式,

     

    1) 通过生成SettingLib对象来外提供指纹相关功能

     

    mLib = new SettingLib(Context);

     

    2) 设置3个常用的Listener,

     

    FPAuthListeners.EnrollListener // 指纹录入阶段得到notify,其中的方法会被回调

     

    FPAuthListeners.StatusListener // 当指纹传感器的状态发生改变,会被notify

     

    FPAuthListeners.EnrollMapProgressListener // 指纹录入(这里分10个阶段),每个阶段录入完成会调用一次

     

    具体如下:

     

    FPAuthListeners.EnrollListener() {

    public void onFail() {

    }

     

    public void onProgress() {

    }

     

    public void onDoubleCheckedFail() {

    }

     

    public void onSuccess() {

    }

     

    }

     

    FPAuthListeners.StatusListener() {

    public void onBadImage(int status) {

    }

     

    public void onFingerFetch() {

    }

     

    public void onFingerImageGetted() {

    }

     

    public void onServiceConnected() {

    }

     

    public void onServiceDisConnected() {

    }

     

    public void onStatus(int status) {

    }

     

    public void onUserAbort() {

    }

     

    }

     

    FPAuthListeners.EnrollMapProgressListener() {

    public void onEnrollMapProgress(int progress) {

    }

     

    }

     

    3) 绑定到 SettingLib,mLib.bind();

    4) 结束服务:

    mLib.abort();

    mLib.disconnectDevice();

    mLib.cleanListeners();

    mLib.unbind();

     

    5)典型的功能调用:

    A. enroll fingerprint:指纹录入

    mLib.setStatusListener(new FPAuthListeners.StatusListener() {

    public void onServiceConnected() {

    mLib.enroll("FP_0" + mFingerIndex);

    }

    });

    lib.bind();

     

    B. delete fingerprint:删除指纹模板

    lib.setStatusListener(new FPAuthListeners.StatusListener() {

    public void onServiceConnected() {

    boolean result = lib.deleteFeature(uid);

    }

    });

    lib.bind();

     

    C. remove Calibration:指纹校准

    lib.setStatusListener(new FPAuthListeners.StatusListener() {

    public void onServiceConnected() {

    lib.connectDevice();

    lib.removeCalibration();

    lib.disconnectDevice();

    }

    });

    lib.bind();

     

    6. 对于指纹数据的保存,由神盾完成,我们无法看到数据的采集保存过程;我们只在Settings.System中保存了以 fingerprint_* 为key的一行记录,值为1表示DATA_EXSIT = 1,数据存在。

    指纹的名称类似: fingerprint_title*

  • 相关阅读:
    1. centos7 的安装
    编写java 程序与Linux进行远程连接并运行linux下的脚本
    java 利用辗除法求两个整数的最大公约数和最小公倍数
    java 给不同成绩分等级
    java 分解质因数
    java中导入 导出
    Mysql 常用命令
    mysql 创建联合主键
    mysql注释
    mysql管理工具navicat的快捷键
  • 原文地址:https://www.cnblogs.com/caidi/p/4982181.html
Copyright © 2011-2022 走看看