9

问题

  • 生物特征认证虹膜和面部检测不提示 biometricPrompt.authenticate(**crypto**, promptInfo)呼叫。

来源参考:

用于测试的设备:

  • 三星 S8(安卓操作系统 9)

我正在遵循的身份验证步骤:

  • val biometricPrompt = BiometricPrompt(...)
  • val promptInfo = BiometricPrompt.PromptInfo.Builder()...
  • 生物识别提示。验证(promptInfo)(PFA:选项A,B

还有另一种身份验证方法采用密码对象来确保

在新旧 API 设备支持下,一切都按预期工作。除非实现对其他生物特征认证选项虹膜和使用面部检测的测试应用。

如果我跟随

  • 生物识别提示。验证(promptInfo),然后应用程序只需根据用户偏好显示身份验证选项,他必须从设备设置 -> 生物特征偏好中选择。并独立进行身份验证。(PFA:选项A、B

  • 但如果使用biometricPrompt.**authenticate**(crypto, promptInfo),那么它只显示指纹认证选项。对于其他偏好选项 iris 和 face-detection,它不会在authenticate(..)方法调用上显示任何内容。(PFA:选项C

问题

  • 为什么其他生物识别身份验证不提示加密对象身份验证。

在此处输入图像描述

4

1 回答 1

2

有些设备只有一种外形尺寸,有些则有多种外形尺寸。您的应用最终使用哪种外形并不取决于您。这取决于 OEM 实施。正如这篇博文中所解释的,外形尺寸是还是并不取决于您的代码——OEM 决定。但是,您可以通过在调用时指定 a来请求设备对您的应用程序使用身份验证。CryptoObjectauthenticate()

您所遇到的是,您设备的 OEM 决定将指纹设置为强生物识别的默认设置。因此,当您传入这些设备时,会CryptoObjectauthenticate()用户显示指纹的 UI。

于 2019-12-18T18:18:27.350 回答