• 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*

  • 相关阅读:
    第二周作业
    查找整数
    第八周作业
    第七周作业
    第六周作业
    第五周作业
    第四周作业
    第三周作业
    第二周作业
    7-2求最大值及其下标
  • 原文地址:https://www.cnblogs.com/caidi/p/4982181.html
Copyright © 2020-2023  润新知