我想检查 API 级别为 28+ 的 Android 设备支持哪些生物识别技术,以便能够向用户显示相关文本。例如。 “指纹登录”、“人脸登录”、“虹膜登录”、“启用指纹登录”、“启用人脸登录”等。

我正在使用 BiometricManager.canAuthenticate() 来确定是否可以使用生物识别技术。对于早于 28 BiometricManager 的版本,FingerprintManagerCompat 在内部使用 BIOMETRIC_SUCCESS,所以我知道如果结果是 ojit_code,则设备使用指纹。

有没有办法知道支持哪些生物识别技术 - 指纹、面部、虹膜?也许某些设备可以支持多个。

最佳答案

只有具有 API29 的设备才能提供比指纹更多的生物识别选项。

通过检查 android.hardware.biometrics.BiometricManager.hasBiometrics() (API29),您可以了解如何检查可用的生物识别信息:

final PackageManager pm = context.getPackageManager();
        return pm.hasSystemFeature(PackageManager.FEATURE_FINGERPRINT)
                || pm.hasSystemFeature(PackageManager.FEATURE_IRIS)
                || pm.hasSystemFeature(PackageManager.FEATURE_FACE);

关于android - 如何检查 API 级别 28+ 支持哪些生物识别技术?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58621003/

10-12 05:52