无法识别安卓指纹扫描仪



我有一个在主页按钮上有一个指纹传感器的设备。其他应用程序似乎可以识别并正确处理它,但是我正在构建的应用程序在几个步骤中失败:

我正在使用android.support.v4.hardware.fingerprint.FingerprintManagerCompat

// at this point isHardwareDetected returns false
val fingerprintManager = FingerprintManagerCompat.from(context)
if (!fingerprintManager.isHardwareDetected) {
return false
}

如果我跳过硬件检测步骤,它仍然失败

// hasEnrolledFingerprints returns false even tough there 
// are couple of fingerprints registered
if (!fingerprintManager.hasEnrolledFingerprints()) {
return false
}

该设备是UMI Plus E Android 6.0.1

它能有什么问题?

此外,这是我关于指纹的清单:

<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<uses-feature android:name="android.hardware.fingerprint" android:required="false" />

编辑

我通过使用重印库解决了这个问题:https://github.com/ajalt/reprint

似乎更像是硬件问题,

  • 尝试删除所有指纹并添加新指纹,如果在添加新指纹(如Hardware not ready等(时出错,则表示硬件传感器有问题。
  • 您也可以尝试在设备上拨打*#808#,然后转到指纹测试。并进行指纹自动测试,它将为您提供硬件传感器的简要诊断报告。

我记得很久以前,我遇到了同样的问题。这是支持库中FingerprintManagerCompat类的问题。尝试使用平台中的FingerprintManager类或更新到最新版本的支持库。

这是 Github 中指纹认证的简单示例,请检查并查看结果:

指纹认证

您还可以将此帮助程序方法用于进一步的用法:

public static boolean isFingerprintDefined(@NonNull Context context) {
return FingerprintManagerCompat.from(context).isHardwareDetected() && FingerprintManagerCompat.from(context).hasEnrolledFingerprints();
}

相关内容

  • 没有找到相关文章

最新更新