如何在 android x 中使用生物识别提示实现人脸认证?

How can i implement face authentication using biometric prompt in android x?

但是我可以在我的应用程序中使用生物识别提示或任何其他 android api 来实现面部身份验证吗? 如果没有,是否有任何 sdk 可用于在我的应用程序中实现此功能?

您可以使用 BiometricPrompt class 创建一个仅使用 任何 用户已初始化的生物特征凭据(例如指纹和面部)的提示对话框。 您可以通过以下步骤创建身份验证对话框:

第 1 步:将依赖项添加到 app/

中的 build.gradle 文件
dependencies {
    implementation 'androidx.biometric:biometric:1.0.1'
}

第二步:显示认证提示

private Executor executor;
private BiometricPrompt biometricPrompt;
private BiometricPrompt.PromptInfo promptInfo;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);
    executor = ContextCompat.getMainExecutor(this);
    biometricPrompt = new BiometricPrompt(MainActivity.this,
            executor, new BiometricPrompt.AuthenticationCallback() {
            
        @Override
        public void onAuthenticationSucceeded(
                @NonNull BiometricPrompt.AuthenticationResult result) {
            super.onAuthenticationSucceeded(result);
            // authenticated
        }

        @Override
        public void onAuthenticationFailed() {
            super.onAuthenticationFailed();
            // authentication failed
        }
    });

    promptInfo = new BiometricPrompt.PromptInfo.Builder()
            .setTitle("Biometric Authentication")
            .setSubtitle("Log in with your biometric credentials")
            .build();
}

调用此方法将显示对话框:

biometricPrompt.authenticate(promptInfo);

查看 the android doc 了解更多信息。