检测像素4xl上的生物特征识别码会返回BIOMETRIC_ERROR_HW_UNAVAILABLE

时间:2019-12-20 01:32:48

标签: java android

在像素4XL(Android Q)上进行生物识别测试失败,无法返回BIOMETRIC_ERROR_HW_UNAVAILABLE

我已经设置了人脸识别

Android清单文件

<uses-permission android:name="android.permission.USE_BIOMETRIC" />

等级依赖性

dependencies {
    implementation "androidx.biometric:biometric:1.0.1"
}

测试代码

private boolean setBIOSetup()
{
    BiometricManager biometricManager = BiometricManager.from(getActivity());
    switch (biometricManager.canAuthenticate())
    {
        case BiometricManager.BIOMETRIC_SUCCESS:
            return true; 
        case BiometricManager.BIOMETRIC_ERROR_NO_HARDWARE:
            Toast.makeText(getActivity(), "No biometric hardware installed", 
                           Toast.LENGTH_LONG).show(); 
         case BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE: 
             Toast.makeText(getActivity(), "Biometric hardware unavailable.", 
                            Toast.LENGTH_LONG).show();
              break; 
         case BiometricManager.BIOMETRIC_ERROR_NONE_ENROLLED: 
             Toast.makeText(getActivity(), "No biometrics enrolled", Toast.LENGTH_LONG).show(); 
             break;
    } 
    return false; 
}

在2XL像素上,它返回BIOMETRIC_SUCCESS用于指纹生物识别 但对于 Pixel 4XL返回BIOMETRIC_ERROR_HW_UNAVAILABLE

任何帮助将不胜感激

谢谢

1 个答案:

答案 0 :(得分:1)

Pixel 4和4 XL不具有任何指纹传感器,而仅具有面部解锁功能。

您已经针对该库提交了错误,请参见问题#146978096
并且您应该遵循他们的建议来运行adb bugreport foo.zip

BiometricManager .canAuthenticate()至少说明了三个先决条件:

确定是否可以使用生物识别技术,或者等效地确定是否可以显示BiometricPrompt。

  • 可用的硬件
  • 已注册的模板
  • 用户启用

如果确实是一个错误,则必须等到androidx.biometric:biometric:1.0.2被发布。