xamarin - 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 包中定义的方法在哪里(或者根本不支持)?
解决方案
setAllowedAuthenticators
在API 级别 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调用正确的函数
推荐阅读
- docker - 在 kafka-topics-ui 中检索主题消息时出错(HTTP 415 不受支持的媒体类型)
- c++ - 模板类和自由函数命名空间的实现问题
- spring - Spring Data JPA (JPQL) 问题:在 JPA 查询中使用 TIMESTAMPDIFF 函数
- javascript - 有没有办法用javascript清除页面?
- python - @property 和 @value.setter 的用法
- python-3.x - Selenium 只是弹出一个空白窗口(它不加载网页),怎么会?
- android - 小部件问题:BroadcastQueue:不允许后台执行:接收 Intent
- elasticsearch - 动态场弹性搜索的问题
- javascript - 在 Array.prototype.map 中退一步迭代
- android - 在 Kotlin 中固定 List 大小的最佳方法是什么