Plugin.Maui.Spine.Biometrics
0.1.37
dotnet add package Plugin.Maui.Spine.Biometrics --version 0.1.37
NuGet\Install-Package Plugin.Maui.Spine.Biometrics -Version 0.1.37
<PackageReference Include="Plugin.Maui.Spine.Biometrics" Version="0.1.37" />
<PackageVersion Include="Plugin.Maui.Spine.Biometrics" Version="0.1.37" />
<PackageReference Include="Plugin.Maui.Spine.Biometrics" />
paket add Plugin.Maui.Spine.Biometrics --version 0.1.37
#r "nuget: Plugin.Maui.Spine.Biometrics, 0.1.37"
#:package Plugin.Maui.Spine.Biometrics@0.1.37
#addin nuget:?package=Plugin.Maui.Spine.Biometrics&version=0.1.37
#tool nuget:?package=Plugin.Maui.Spine.Biometrics&version=0.1.37
Plugin.Maui.Spine.Biometrics
Face ID, Touch ID, Android biometrics and Windows Hello for .NET MAUI. [RequiresUnlock] on a Spine page or command asks the user to unlock before the page opens or the command runs. One unlock counts for a minute, and the app forgets it when it goes to the background. An app lock covers the whole app at launch and on return, and [PrivacyShield] keeps a page out of screenshots and the app switcher where the platform allows it.
dotnet add package Plugin.Maui.Spine.Biometrics
builder.UseSpine(options => options.AddAssembly(typeof(MauiProgram).Assembly)); // registers Biometrics too
// builder.UseSpineBiometrics(o => o.UnlockValidFor = TimeSpan.FromMinutes(5)); // only to change the options
[NavigableRegion(Title = "PIN"), RequiresUnlock("Show the PIN")]
public partial class PinPage { … }
[PageAction(Svg = "delete.svg"), RequiresUnlock("Delete the account", Fresh = true)]
[RelayCommand]
private Task DeleteAccountAsync() { … }
if (await unlock.RequireAsync("Show the PIN")) { … } // IUnlock, in code
[NavigableRegion(Title = "Statement"), PrivacyShield, RequiresUnlock("Show the statement", Relock = true)]
public partial class StatementPage { … }
builder.UseSpineBiometrics(o => o.AppLock(a => a.LockAfter = TimeSpan.FromMinutes(5)));
iOS cannot block screenshots. [PrivacyShield] covers the app-switcher snapshot there. Android blocks capture with FLAG_SECURE, and Windows excludes the window from capture.
<Button Text="Show the code" Unlock.Command="{Binding ShowCodeCommand}" Unlock.Reason="Show the code" />
Face ID usage text: an iOS app needs NSFaceIDUsageDescription in its Info.plist. The build stops with a message until it is there.
Documentation
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0-android36.0 is compatible. net10.0-ios26.0 is compatible. net10.0-maccatalyst26.0 is compatible. net10.0-windows10.0.19041 is compatible. |
-
net10.0-android36.0
- AsyncAwaitBestPractices (>= 10.0.0)
- Microsoft.Maui.Controls (>= 10.0.50)
- Plugin.Maui.Spine (>= 0.1.37)
- Plugin.Maui.Spine.Common (>= 0.1.37)
- Xamarin.AndroidX.Biometric (>= 1.1.0.30)
-
net10.0-ios26.0
- AsyncAwaitBestPractices (>= 10.0.0)
- Microsoft.Maui.Controls (>= 10.0.50)
- Plugin.Maui.Spine (>= 0.1.37)
- Plugin.Maui.Spine.Common (>= 0.1.37)
-
net10.0-maccatalyst26.0
- AsyncAwaitBestPractices (>= 10.0.0)
- Microsoft.Maui.Controls (>= 10.0.50)
- Plugin.Maui.Spine (>= 0.1.37)
- Plugin.Maui.Spine.Common (>= 0.1.37)
-
net10.0-windows10.0.19041
- AsyncAwaitBestPractices (>= 10.0.0)
- Microsoft.Maui.Controls (>= 10.0.50)
- Plugin.Maui.Spine (>= 0.1.37)
- Plugin.Maui.Spine.Common (>= 0.1.37)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.37 | 35 | 10/30/2026 |
| 0.1.36 | 87 | 10/27/2026 |
| 0.1.35 | 77 | 10/27/2026 |
| 0.1.34 | 80 | 10/27/2026 |
| 0.1.33 | 71 | 10/27/2026 |
| 0.1.32 | 79 | 10/27/2026 |
| 0.1.31 | 76 | 10/27/2026 |
| 0.1.30 | 76 | 10/27/2026 |
| 0.1.29 | 82 | 10/26/2026 |
| 0.1.28 | 83 | 10/26/2026 |
| 0.1.27 | 87 | 10/26/2026 |
| 0.1.26 | 88 | 10/24/2026 |
| 0.1.25 | 86 | 10/24/2026 |
| 0.1.24 | 86 | 10/23/2026 |
| 0.1.23 | 86 | 10/23/2026 |
| 0.1.22 | 92 | 10/23/2026 |
| 0.1.21 | 84 | 10/23/2026 |
| 0.1.20 | 89 | 10/23/2026 |
| 0.1.19 | 88 | 10/22/2026 |
| 0.1.18 | 86 | 10/21/2026 |