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*

posted @ 2015-11-25 19:43  hunterDing  阅读(256)  评论(0编辑  收藏  举报