You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MAUI能否在用户未开启设备生物识别时触发录入流程?

MAUI中生物识别录入流程的触发问题

首先直接给结论:Plugin.Fingerprint 本身不支持直接触发生物识别的录入流程——因为生物识别的设置是系统级权限,第三方APP没法直接跳转或启动录入向导,只能引导用户自己去系统设置里开启并完成录入。

分平台的具体实现方式:

  • Android端:你可以通过调用Android原生的Intent,引导用户跳转到生物识别设置页面。MAUI里的实现代码大概是这样:

    #if ANDROID
    var enrollIntent = new Android.Content.Intent(Android.Provider.Settings.ActionFingerprintEnroll);
    enrollIntent.AddFlags(Android.Content.ActivityFlags.NewTask);
    Android.App.Application.Context.StartActivity(enrollIntent);
    #endif
    

    注意:不同Android版本的设置入口可能有区别,部分新版本可能需要用Settings.ActionBiometricEnroll替代上面的ActionFingerprintEnroll。

  • iOS端:同样没法直接启动录入流程,只能引导用户到系统的“面容ID与密码”或“Touch ID与密码”页面。可以通过系统的URL Scheme来跳转:

    #if IOS
    var settingsUrl = new Foundation.NSUrl("App-Prefs:root=TOUCHID_PASSCODE");
    if (UIKit.UIApplication.SharedApplication.CanOpenUrl(settingsUrl))
    {
        UIKit.UIApplication.SharedApplication.OpenUrl(settingsUrl);
    }
    #endif
    

    提醒:iOS的URL Scheme可能随系统版本更新变化,实际使用时要针对目标版本做测试。

结合Plugin.Fingerprint的使用逻辑:

在调用生物识别认证前,先调用await CrossFingerprint.Current.IsAvailableAsync()检查可用性。如果返回false(比如用户未开启生物识别),就弹个提示告诉用户需要去系统设置开启,然后执行上面的跳转代码即可。

简单说:第三方APP只能引导用户去系统设置完成生物识别的录入,Plugin.Fingerprint只负责已经开启生物识别后的认证工作。

内容的提问来源于stack exchange,提问作者SJaka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 20:54:56