我希望用户使用指纹身份验证,以允许他们在我的应用中执行操作。我已经进行了必要的检查,硬件是否存在,指纹注册等,当他们说他们想要使用指纹身份验证时。
当用户需要使用指纹进行身份验证时,当前会打开alertdialog。我想知道是否有可能通过alertdialog捕获指纹,而alertdialog afaik只有正面和负面的按钮输入选项。
如果无法通过alertdialog执行此操作,那么我们将非常感谢正确方向上的一点。
编辑:为了清楚起见,我并不是指将屏幕用作指纹传感器。
答案 0 :(得分:2)
您可以使用此FingerprintDialog库。然后它就像这样:
FingerprintDialog.initialize(this)
.title(R.string.title)
.message(R.string.message)
.callback(new FingerprintCallback({
@Override
public void onAuthenticationSuccess() {
// Fingerprint recognized
}
@Override
public void onAuthenticationCancel() {
// User pressed cancel button
}
}))
.show();
否则,您只需创建自定义xml布局,使用LayoutInflater
获取视图并在对话框中调用setView(view)
。 Google it
答案 1 :(得分:0)
目前这是不可能的。或者如果是,我真的很怀疑。大多数触摸屏手机都使用电容式触控。这意味着,由于我们的手指导电,我们会扰乱电话屏幕前方的电场。虽然它确实支持多点触控,但我真的怀疑它是如此精确以至于它能够检测到手指上的脊。
您需要更多的热敏触摸屏。我不认为他们会在大多数新一代触摸屏中使用它。
因此,您可以使用此API https://developer.android.com/reference/android/hardware/fingerprint/FingerprintManager.html,但仅限于包含指纹扫描的设备,绝对不能通过设备的屏幕。