首页 > 解决方案 > Xamarin.Android (BiometricPrompt):缺少 setAllowedAuthenticators() 方法

问题描述

我已经使用Microsoft成功发布的 Nuget 包实现了 BiometricPrompt 进行生物识别登录。

我希望我的应用程序只允许强大的(3 类)生物识别硬件。本机文档声明我应该调用setAllowedAuthenticators()作为标志传递BIOMETRIC_STRONG。但是,我无法在 PromptInfo 构建器类中找到此方法。我的构建器代码目前看起来像这样。

  var builder = new BiometricPrompt.PromptInfo.Builder()
                    .SetTitle(Alerts.AndroidFingerPrintDialog_SignIn)
                    .SetDescription(Alerts.AndroidFingerPrintDialog_FingerPrintPrompt)
                    .SetConfirmationRequired(false);

Nuget 包中定义的方法在哪里(或者根本不支持)?

标签: xamarinxamarin.androidandroidxandroid-biometric-promptandroid-biometric

解决方案


setAllowedAuthenticatorsAPI 级别 30中添加。

因此,您需要使用 Xamarin.Android 11.0 及更高版本作为应用程序的编译目标才能访问该功能。

2020 年 8 月 5 日 — Xamarin.Android 11.0.0.3

  • 此版本包含在 Visual Studio 2019 版本 16.7 和 Visual Studio 2019 for Mac 版本 8.7 中。

回复:https ://docs.microsoft.com/en-us/xamarin/android/release-notes/11/11.0

注意:您需要使用Android 版本的运行时检查来BiometricPrompt.Builder为不同的 API调用正确的函数


推荐阅读