Xamarin Forms Android生物人脸识别



我想在我的应用程序中包含一个生物识别登录系统,允许用户使用他们的脸登录,类似于你如何在iPhone上使用FaceID登录。我正在使用插件。指纹NuGet包来实现这一点。虽然我能让它在安卓系统上使用指纹识别,但我似乎不能让它在安卓系统上使用人脸识别,而在iOS系统上,它会弹出FaceID

提示符我错过了一个权限,或者只是不可能在android上实现这一点?

以下代码:

public async void BiometricClicked()
{
if (!bioOn)
{
var request = new AuthenticationRequestConfiguration("Biometric Setup.", "Setup Biometric Login");
var result = await CrossFingerprint.Current.AuthenticateAsync(request);
if (result.Authenticated)
{
bioOn = true;
Preferences.Set("BioLogin", DealerName);
Preferences.Set("BioPass", dealerPass);
Preferences.Set("BioOn", bioOn);
UserDialogs.Instance.Alert("Biometric Login successfully activated.", "Biometric", "Ok");
}
else
{
UserDialogs.Instance.Alert("Cannot setup biometric.", "Biometric", "Ok");

}
}
else
{
var prompt = await UserDialogs.Instance.ConfirmAsync("Do you wish to turn off biometric login?", "Biometric", "Yes", "No");
if (prompt)
{
Preferences.Remove("BioLogin");
Preferences.Remove("BioPass");
bioOn = false;
Preferences.Set("BioOn", bioOn);
UserDialogs.Instance.Alert("Biometric login deactivated.", "Biometric", "Ok");
}
}
}
Android.manifest中的权限:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.USE_FINGERPRINT" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.USE_BIOMETRIC" />

MainActivity.cs:

protected override void OnCreate(Bundle savedInstanceState)
{


base.OnCreate(savedInstanceState);


CrossFingerprint.SetCurrentActivityResolver(() => Xamarin.Essentials.Platform.CurrentActivity);

Xamarin.Essentials.Platform.Init(this, savedInstanceState);
global::Xamarin.Forms.Forms.Init(this, savedInstanceState);

LoadApplication(new App());
}

我能够在三星Galaxy Note 8上启用面部解锁,方法是注册指纹和面部识别,然后将首选生物识别设置为面部识别