我做了什么:
我使用以下教程来掌握有关如何在Android中使用指纹身份验证的基本知识: http://joerichard.net/android/android-fingerprint-example/
我基本上遵循它,除了我添加了一个按钮,我想在点击按钮时验证用户。
所以我有以下更改
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = (Button) findViewById(R.id.button);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
authentication();
}
});
...
protected void authentication(/* Bundle savedInstanceState */) {
//super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_main);
...
我的问题:
当我点击按钮时,会调用以下通知(在#34; FingerprintHandler.java"中):
Toast.makeText(appContext,
"Authentication error\n" + errString ,
Toast.LENGTH_LONG).show();
errString是Fingerprint operation canceled.
错误消息ID为5
。
通过搜索我发现here它与FINGERPRINT_ACQUIRED_TOO_FAST
相对应,但我不明白为什么会这样。
我尝试了什么:
我试着用手指在扫描仪上点击按钮但是 通知是立即的,这使我相信它没有 甚至可以收听/扫描指纹。
我还试图让它在没有按钮的情况下工作,但在这种情况下 没有任何反应。
如果您发现可能出现的问题,或者有我可以调查的方向,请告诉我。
谢谢。
答案 0 :(得分:0)
我的传感器效果不佳。需要多次尝试才能读取(有些时候它根本不起作用)。 因此,我会通过单击导致错误的按钮重新尝试。
再次单击按钮时,该功能将无法从扫描仪读取任何内容,并显示错误FINGERPRINT_ACQUIRED_TOO_FAST
。
这个特定错误(TOO_FAST
)触发的事实对我的情况没有帮助,因为正如我解释的那样,单击按钮时会触发此错误消息。
如果有人遇到同样的问题,请让传感器有更多时间/机会识别正在阅读的手指。