如果我的设备在颤振中支持面部和指纹认证,local_auth 默认会选择啥?

Posted

技术标签:

【中文标题】如果我的设备在颤振中支持面部和指纹认证,local_auth 默认会选择啥?【英文标题】:What will local_auth choose by default if my device support face and fingerprint auth in flutter?如果我的设备在颤振中支持面部和指纹认证,local_auth 默认会选择什么? 【发布时间】:2020-07-04 06:40:25 【问题描述】:

目前,在我的应用程序中,我必须提供生物特征身份验证才能登录,但本地说只有生物特征类型的手指可用。

我使用的是三星 m31,在 Kotak Mahindra 银行应用程序中,它们允许我使用手指和面部选项。

为什么 local_auth 不给面子选项?

如果任何设备同时具有面部和手指选项,它会默认选择什么?

【问题讨论】:

【参考方案1】:

您可以使用以下代码为手机获取可用的生物特征检查

List<BiometricType> availableBiometrics = await auth.getAvailableBiometrics();

android local_auth 使用BiometricPrompt,它在Android 9 中不支持人脸解锁。您可以阅读更多相关信息here 您可以使用sensitiveTransaction 参数设置在Android 中处理setConfirmationRequired() 的事务的敏感度,以便为支持的设备启用人脸锁定。你可以阅读它here Kotak Bank 应用程序是一个原生应用程序,它提供 android SDK 功能以直接访问所有可用的生物识别锁,但在 Flutter 的情况下,开发人员依赖于插件的实现。您可能可以根据您的要求增强实施。

【讨论】:

我在三星 S10 (Android 11) 上遇到了类似的指纹和面部识别问题。可用,但插件仅返回指纹作为可用选项。您提到了sensitiveTransaction,但这只能与auth.authenticate() 一起使用,auth.getAvailableBiometrics() 没有解决方法

以上是关于如果我的设备在颤振中支持面部和指纹认证,local_auth 默认会选择啥?的主要内容,如果未能解决你的问题,请参考以下文章

检测设备是用针锁或面部锁的指纹锁保护的吗?

Windows Hello 可绕过漏洞进行身份认证

如何从 Android KeyGuardmanager 中删除指纹认证?

苹果复活Touch ID!全屏指纹体验秒杀安卓

甲骨文形式的指纹或面部扫描仪

flutter android指纹集成