{"id":45975,"date":"2025-12-05T19:12:41","date_gmt":"2025-12-05T13:42:41","guid":{"rendered":"https:\/\/mobisoftinfotech.com\/resources\/?p=45975"},"modified":"2025-12-08T10:30:06","modified_gmt":"2025-12-08T05:00:06","slug":"secure-flutter-biometric-authentication-fingerprint-face-id","status":"publish","type":"post","link":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id","title":{"rendered":"Secure Biometric Authentication in Flutter: Fingerprint &amp; Face ID Login Tutorial"},"content":{"rendered":"<p>Biometric authentication has become a standard feature in modern mobile applications, providing users with a secure and convenient way to access their accounts. This authentication method uses unique biological characteristics such as fingerprints, facial recognition, or iris scans to verify a user&#8217;s identity. In Flutter applications, implementing biometric authentication enhances security and improves user experience by eliminating the need to remember complex passwords. This guide will walk you through the complete implementation process, from setting up dependencies to creating a fully functional login page with biometric login support.&nbsp;<\/p>\n\n\n\n<p>Explore more advanced Flutter development approaches by learning from our <a href=\"https:\/\/mobisoftinfotech.com\/services\/flutter-app-development-company?utm_source=blog&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><strong>Flutter app development company<\/strong><\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Why Biometric Authentication Matters?<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"855\" height=\"359\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-authentication-architecture-diagram.png\" alt=\"Architecture diagram showing Flutter biometric authentication workflow with local_auth plugin\" class=\"wp-image-46035\" title=\"Flutter Biometric Authentication Architecture Diagram\"><\/noscript><img decoding=\"async\" width=\"855\" height=\"359\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20855%20359%22%3E%3C%2Fsvg%3E\" alt=\"Architecture diagram showing Flutter biometric authentication workflow with local_auth plugin\" class=\"wp-image-46035 lazyload\" title=\"Flutter Biometric Authentication Architecture Diagram\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-authentication-architecture-diagram.png\"><\/figure>\n\n\n\n<p>Biometric authentication offers several significant advantages over traditional password-based systems. First, it provides enhanced security since biometric data is unique to each individual and cannot be easily replicated or stolen like passwords. Second, it offers a superior user experience by allowing quick and seamless access to applications with just a touch or glance, making it easier to incorporate options such as biometric verification when needed. Third, it reduces the risk of password-related security breaches, as users don&#8217;t need to store or remember passwords. Finally, it helps applications comply with modern security standards and user expectations, making your app more competitive in today&#8217;s market. By implementing biometric authentication, you&#8217;re not just adding a feature, you&#8217;re investing in your application&#8217;s security and user satisfaction.<\/p>\n\n\n\n<p>If you&#8217;re building secure mobile workflows, our <a href=\"https:\/\/mobisoftinfotech.com\/services\/mobile-app-development-company?utm_source=blog&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><strong>mobile app development company<\/strong> <\/a>insights can guide your architecture choices.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/mobisoftinfotech.com\/services\/flutter-consulting-development?utm_source=blog-cta&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><noscript><img decoding=\"async\" width=\"855\" height=\"363\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-cross-platform-strategy.png\" alt=\"Cross-platform app development CTA for Flutter consulting and development services\" class=\"wp-image-46037\" title=\"Elevate Your Cross-Platform Strategy with Flutter\"><\/noscript><img decoding=\"async\" width=\"855\" height=\"363\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20855%20363%22%3E%3C%2Fsvg%3E\" alt=\"Cross-platform app development CTA for Flutter consulting and development services\" class=\"wp-image-46037 lazyload\" title=\"Elevate Your Cross-Platform Strategy with Flutter\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-cross-platform-strategy.png\"><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 1: Setting Up the Project<\/strong><\/h3>\n\n\n\n<p>Before we begin implementing biometric authentication, we need to set up a Flutter project and add the necessary dependencies commonly used in Flutter biometric authentication workflows. If you haven&#8217;t created a Flutter project yet, you can do so using the Flutter CLI:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-string\">``<\/span><span class=\"hljs-string\">`bash\nflutter create biometrics_poc\ncd biometrics_poc\n`<\/span><span class=\"hljs-string\">``<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 2: Adding the Required Dependency<\/strong><\/h3>\n\n\n\n<p>The first step in implementing biometric authentication is to add the local_auth package to your project. This enables fingerprint and facial recognition integration, including support for Flutter fingerprint login where available.&nbsp; This package provides the necessary APIs to interact with the device&#8217;s biometric authentication system.<\/p>\n\n\n\n<p>Open your <code>pubspec.yaml<\/code> file and add the <code>`local_auth`<\/code> dependency under the dependencies section:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-string\">``<\/span><span class=\"hljs-string\">`\n local_auth: ^3.0.0\n`<\/span><span class=\"hljs-string\">``<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>After adding the dependency, run the following command to install it:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-string\">``<\/span><span class=\"hljs-string\">`\nflutter pub get\n`<\/span><span class=\"hljs-string\">``<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The <code>local_auth<\/code> package is an official Flutter plugin that provides a simple API for authenticating users using biometrics on both Android and iOS platforms. You can strengthen your architecture by partnering with an experienced <a href=\"https:\/\/mobisoftinfotech.com\/services\/software-development-company?utm_source=blog&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><strong>software development company<\/strong><\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 3: Configuring Android Permissions<\/strong><\/h3>\n\n\n\n<p>For Android devices, we need to add the necessary permissions to the <code>AndroidManifest.xml<\/code> file. These permissions allow the app to use biometric authentication features.<\/p>\n\n\n\n<p>Navigate to <code>android\/app\/src\/main\/AndroidManifest.xml<\/code> and add the following permissions inside the <code>`&lt;manifest&gt;`<\/code> tag:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml\">```xml\n<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">uses-permission<\/span> <span class=\"hljs-attr\">android:name<\/span>=<span class=\"hljs-string\">\"android.permission.USE_BIOMETRIC\"<\/span> \/&gt;<\/span>\n<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">uses-permission<\/span> <span class=\"hljs-attr\">android:name<\/span>=<span class=\"hljs-string\">\"android.permission.USE_FINGERPRINT\"<\/span> \/&gt;<\/span>\n<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">uses-feature<\/span> <span class=\"hljs-attr\">android:name<\/span>=<span class=\"hljs-string\">\"android.hardware.fingerprint\"<\/span> <span class=\"hljs-attr\">android:required<\/span>=<span class=\"hljs-string\">\"false\"<\/span> \/&gt;<\/span>\n```<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The first permission (`USE_BIOMETRIC`) is for modern biometric authentication methods, while the second (`USE_FINGERPRINT`) is for older fingerprint-based authentication. The `uses-feature` tag indicates that the fingerprint hardware is optional, meaning your app will still work on devices without fingerprint sensors.&nbsp;<\/p>\n\n\n\n<p>If you\u2019re integrating additional features, check our guide on <a href=\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/flutter-bluetooth-ble-integration-guide?utm_source=blog&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><strong>Flutter Bluetooth BLE integration<\/strong>.<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 4: Configuring iOS Permissions<\/strong><\/h3>\n\n\n\n<p>For iOS devices, we need to add a usage description for Face ID or Touch ID in the Info.plist file. This ensures consistent behavior when implementing Face authentication Flutter for supported devices. This description is shown to users when the app requests biometric authentication permission. Navigate to `ios\/Runner\/Info.plist` and add the following key-value pair:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"HTML, XML\" data-shcb-language-slug=\"xml\"><span><code class=\"hljs language-xml\">```xml\n<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">key<\/span>&gt;<\/span>NSFaceIDUsageDescription<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">key<\/span>&gt;<\/span>\n<span class=\"hljs-tag\">&lt;<span class=\"hljs-name\">string<\/span>&gt;<\/span>Authenticate to continue.<span class=\"hljs-tag\">&lt;\/<span class=\"hljs-name\">string<\/span>&gt;<\/span>\n```<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">HTML, XML<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">xml<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This description will be displayed to users when they first use biometric authentication, explaining why your app needs access to Face ID or Touch ID.&nbsp; To streamline user flows on iOS, explore our <a href=\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/flutter-deep-linking-guide?utm_source=blog&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><strong>Flutter deep linking tutorial<\/strong><\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 5: Creating the Biometric Helper Class<\/strong><\/h3>\n\n\n\n<p>Create a new file <code>lib\/helpers\/biometric_helper.dart<\/code> to encapsulate all biometric-related functionality. This helper class will handle device capability checks, biometric type detection, and authentication.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">```dart\nimport <span class=\"hljs-string\">'package:local_auth\/local_auth.dart'<\/span>;\n\n<span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">BiometricHelper<\/span> <\/span>{\n <span class=\"hljs-keyword\">final<\/span> LocalAuthentication _localAuth = LocalAuthentication();\n\n Future&lt;bool&gt; isDeviceCapable() async {\n   <span class=\"hljs-keyword\">try<\/span> {\n     <span class=\"hljs-keyword\">return<\/span> await _localAuth.isDeviceSupported();\n   } <span class=\"hljs-keyword\">catch<\/span> (e) {\n     <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">false<\/span>;\n   }\n }\n\n Future&lt;bool&gt; isBiometricEnabled() async {\n   <span class=\"hljs-keyword\">try<\/span> {\n     <span class=\"hljs-keyword\">final<\/span> availableBiometrics = await _localAuth.getAvailableBiometrics();\n     <span class=\"hljs-keyword\">return<\/span> availableBiometrics.isNotEmpty;\n   } <span class=\"hljs-keyword\">catch<\/span> (e) {\n     <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">false<\/span>;\n   }\n }\n\n Future&lt;String<span class=\"hljs-meta\">?&gt;<\/span> getBiometricType() async {\n   <span class=\"hljs-keyword\">try<\/span> {\n     <span class=\"hljs-keyword\">final<\/span> availableBiometrics = await _localAuth.getAvailableBiometrics();\n     <span class=\"hljs-keyword\">if<\/span> (availableBiometrics.isEmpty) <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">null<\/span>;\n    \n     <span class=\"hljs-keyword\">if<\/span> (availableBiometrics.contains(BiometricType.face)) {\n       <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-string\">'Face ID'<\/span>;\n     } <span class=\"hljs-keyword\">else<\/span> <span class=\"hljs-keyword\">if<\/span> (availableBiometrics.contains(BiometricType.fingerprint)) {\n       <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-string\">'Touch ID'<\/span>;\n     }\n     <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">null<\/span>;\n   } <span class=\"hljs-keyword\">catch<\/span> (e) {\n     <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">null<\/span>;\n   }\n }\n\n Future&lt;bool&gt; authenticate(String reason) async {\n   <span class=\"hljs-keyword\">try<\/span> {\n     <span class=\"hljs-keyword\">return<\/span> await _localAuth.authenticate(\n       localizedReason: reason,\n     );\n   } <span class=\"hljs-keyword\">catch<\/span> (e) {\n     <span class=\"hljs-keyword\">return<\/span> <span class=\"hljs-keyword\">false<\/span>;\n   }\n }\n}\n```<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h4 class=\"wp-block-heading\"><strong>Let&#8217;s break down each method:<\/strong><\/h4>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"855\" height=\"368\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-options-overview.png\" alt=\"Flutter biometric options including fingerprint authentication Flutter and Face ID Flutter\" class=\"wp-image-46043\" title=\"Flutter Biometric Options Overview\"><\/noscript><img decoding=\"async\" width=\"855\" height=\"368\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20855%20368%22%3E%3C%2Fsvg%3E\" alt=\"Flutter biometric options including fingerprint authentication Flutter and Face ID Flutter\" class=\"wp-image-46043 lazyload\" title=\"Flutter Biometric Options Overview\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-options-overview.png\"><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>isDeviceCapable()<\/strong>: This method checks if the device hardware supports biometric authentication. It returns `true` if the device has the necessary hardware, regardless of whether biometrics are set up.<\/li>\n\n\n\n<li><strong>isBiometricEnabled(): <\/strong>This method checks if biometric authentication is actually enabled and configured on the device. A device might support biometric authentication, but the user might not have set it up yet.<\/li>\n\n\n\n<li><strong>getBiometricType()<\/strong>: This method identifies which type of biometric authentication is available on the device. It returns &#8216;Face ID&#8217; for facial recognition or &#8216;Touch ID&#8217; for devices with fingerprint sensors, which is useful when testing Flutter biometric auth Android iOS compatibility.<\/li>\n\n\n\n<li><strong>authenticate(): <\/strong>This method triggers the actual biometric authentication process. It displays the system&#8217;s biometric prompt and returns `true` if authentication is successful, `false` otherwise.<\/li>\n<\/ul>\n\n\n\n<p>&nbsp;If you need expert guidance on structuring secure and scalable Flutter authentication flows, our <a href=\"https:\/\/mobisoftinfotech.com\/services\/flutter-consulting-development?utm_source=blog&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><strong>Flutter consulting services<\/strong><\/a> can help you plan the right implementation approach.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 6: Integrating Biometric Authentication in Your UI<\/strong><\/h3>\n\n\n\n<p>Now that we have the <code>BiometricHelper<\/code> class, we need to integrate it into your login page, making it possible to offer a familiar Flutter biometric login option to users. Here are the key points for using the biometric helper class in your UI:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>1. Initialize the BiometricHelper:<\/strong><\/h4>\n\n\n\n<p>Create an instance of the <code>`BiometricHelper`<\/code> class in your widget&#8217;s state:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-7\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-string\">``<\/span><span class=\"hljs-string\">`dart\nfinal _biometricHelper = BiometricHelper();\n`<\/span><span class=\"hljs-string\">``<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-7\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h4 class=\"wp-block-heading\"><strong>2. Check Biometric Status on Page Load:<\/strong><\/h4>\n\n\n\n<p>In your <code>`initState()`<\/code> method, check the device&#8217;s biometric capabilities:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-8\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-string\">``<\/span><span class=\"hljs-string\">`dart\nFuture&lt;void&gt; _checkBiometricStatus() async {\n final isCapable = await _biometricHelper.isDeviceCapable();\n final isEnabled = await _biometricHelper.isBiometricEnabled();\n final biometricType = await _biometricHelper.getBiometricType();\n\n setState(() {\n   _isDeviceCapable = isCapable;\n   _isBiometricEnabled = isEnabled;\n   _biometricType = biometricType;\n });\n}\n`<\/span><span class=\"hljs-string\">``<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-8\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This method calls all three helper methods to determine if biometric authentication can be used. Store these values in your state variables to control the UI display.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>3. Handle Biometric Authentication:<\/strong><\/h4>\n\n\n\n<p>When the user taps the authentication button, call the <code>`authenticate()`<\/code> method:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-9\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">```dart\nFuture&lt;void&gt; _handleBiometricLogin() async {\n <span class=\"hljs-keyword\">final<\/span> result = await _biometricHelper.authenticate(<span class=\"hljs-string\">'Authenticate to login'<\/span>);\n\n <span class=\"hljs-keyword\">if<\/span> (result) {\n   <span class=\"hljs-comment\">\/\/ Authentication successful<\/span>\n } <span class=\"hljs-keyword\">else<\/span> {\n   <span class=\"hljs-comment\">\/\/ Authentication failed<\/span>\n }\n}\n```<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-9\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>The <code>`authenticate()`<\/code> method returns `true` if authentication succeeds and `false` if it fails or is cancelled by the user.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>4. Determine Button Visibility:<\/strong><\/h4>\n\n\n\n<p>Use the capability and enabled status to conditionally show the authentication button:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-10\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-string\">``<\/span><span class=\"hljs-string\">`dart\nfinal canUseBiometric = _isDeviceCapable &amp;&amp; _isBiometricEnabled;\n`<\/span><span class=\"hljs-string\">``<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-10\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>&nbsp;Only show the biometric authentication button when both conditions are true. Otherwise, display an appropriate error message to the user.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>5. Display Biometric Type:<\/strong><\/h4>\n\n\n\n<p>Use the <code>`_biometricType`<\/code> value returned from <code>`getBiometricType()`<\/code> to customize your button text:<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-11\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\"><span class=\"hljs-string\">``<\/span><span class=\"hljs-string\">`dart\nText(_biometricType != null\n   ? 'Use $_biometricType for Authentication'\n   : 'Use Biometric for Authentication')\n`<\/span><span class=\"hljs-string\">``<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-11\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>This ensures users see the correct biometric type (Face ID or Touch ID) on their device<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 7: Setting Up the Main App<\/strong><\/h3>\n\n\n\n<p>Ensure your <code>`main.dart`<\/code> file is configured to use the page where you&#8217;ve integrated biometric authentication. This is a standard Flutter app setup &#8211; simply set your page with biometric authentication as the home screen in your <code>`MaterialApp`<\/code> widget.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 8: Testing the Implementation<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><noscript><img decoding=\"async\" width=\"855\" height=\"440\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-authentication-shield.png\" alt=\"Security shield illustration representing Flutter secure biometric authentication\" class=\"wp-image-46045\" title=\"Flutter Secure Biometric Authentication Security Shield\"><\/noscript><img decoding=\"async\" width=\"855\" height=\"440\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20855%20440%22%3E%3C%2Fsvg%3E\" alt=\"Security shield illustration representing Flutter secure biometric authentication\" class=\"wp-image-46045 lazyload\" title=\"Flutter Secure Biometric Authentication Security Shield\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-authentication-shield.png\"><\/figure>\n\n\n\n<p><strong>To test your biometric authentication implementation:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>On Android<\/strong><br>Run the app on a physical device with fingerprint or face unlock enabled. The biometric login button should appear, and tapping it should show the system&#8217;s biometric authentication dialog, a common requirement when building Flutter secure login biometrics features.<\/li>\n\n\n\n<li><strong>On iO<\/strong>S<br>Run the app on a physical device with Face ID or Touch ID set up. The biometric login button should appear, and tapping it should trigger Face ID or Touch ID authentication.<\/li>\n\n\n\n<li><strong>On Emulator\/Simulator<\/strong><br>Biometric authentication may not work on emulators or simulators. For best results, test on physical devices.<\/li>\n<\/ul>\n\n\n\n<p>You can refine your testing workflow with our <a href=\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/flutter-unit-widget-integration-testing-guide?utm_source=blog&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><strong>Flutter unit and integration testing<\/strong><\/a> guide<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Summary<\/strong><\/h2>\n\n\n\n<p>In this guide, we&#8217;ve successfully implemented biometric authentication in a Flutter application. The implementation follows a simple and clean architecture with a helper class that handles all biometric-related operations. Here&#8217;s what we accomplished:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Added the `local_auth` package to handle biometric authentication across platforms<\/li>\n\n\n\n<li>Configured platform-specific permissions for both Android and iOS<\/li>\n\n\n\n<li>Created a `BiometricHelper` class that encapsulates biometric checking and authentication logic<\/li>\n\n\n\n<li>Built a LoginPage that integrates biometric authentication seamlessly with traditional login methods<\/li>\n\n\n\n<li>Implemented proper error handling and user feedback through loading states and success\/failure messages<\/li>\n<\/ul>\n\n\n\n<p>The final implementation provides a user-friendly experience where biometric authentication is automatically detected and offered as an option when available. The code is clean, maintainable, and follows Flutter best practices. Users can now enjoy the convenience of quick biometric login while maintaining the option to use traditional email and password authentication.<\/p>\n\n\n\n<p>This implementation can be easily extended to include additional features such as storing authentication tokens after successful biometric login, implementing biometric authentication for other sensitive operations in your app, or adding fallback authentication methods. The modular design of the helper class makes it easy to reuse the biometric authentication logic throughout your application, supporting more advanced flows such as integrating flutter app fingerprint lock where appropriate.<\/p>\n\n\n\n<p>You can explore the complete source code for this biometric authentication demo in our <a href=\"https:\/\/github.com\/mobisoftinfotech\/mobisoft-programming-blogs-examples\/tree\/main\/mobile\/biometrics_poc\"><strong>GitHub repository<\/strong><\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/mobisoftinfotech.com\/contact-us?utm_source=linkedin&amp;utm_source=blog-cta&amp;utm_campaign=secure-flutter-biometric-authentication-fingerprint-face-id\"><noscript><img decoding=\"async\" width=\"855\" height=\"363\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-app-development.png\" alt=\"CTA to build mobile apps with Flutter secure biometric authentication features\" class=\"wp-image-46047\" title=\"Your Next Big Idea Needs the Right Tech. Let\u2019s Build It!\"><\/noscript><img decoding=\"async\" width=\"855\" height=\"363\" src=\"data:image\/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20855%20363%22%3E%3C%2Fsvg%3E\" alt=\"CTA to build mobile apps with Flutter secure biometric authentication features\" class=\"wp-image-46047 lazyload\" title=\"Your Next Big Idea Needs the Right Tech. Let\u2019s Build It!\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-app-development.png\"><\/a><\/figure>\n\n\n<div class=\"modern-author-card\">\n    <div class=\"author-card-content\">\n        <div class=\"author-info-section\">\n            <div class=\"author-avatar\">\n                <noscript><img decoding=\"async\" src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/03\/tushar.png\" alt=\"Tushar Jadhav\"><\/noscript><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\" alt=\"Tushar Jadhav\" data-src=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/03\/tushar.png\" class=\" lazyload\">\n            <\/div>\n            <div class=\"author-details\">\n                <h3 class=\"author-name\">Tushar Jadhav<\/h3>\n                <p class=\"author-title\">Principal Software Engineer<\/p>\n                <a href=\"javascript:void(0);\" class=\"read-more-link read-more-btn\" onclick=\"toggleAuthorBio(this); return false;\">Read more <noscript><img decoding=\"async\" src=\"\/assets\/images\/blog\/Vector.png\" alt=\"expand\" class=\"read-more-arrow down-arrow\"><\/noscript><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\" alt=\"expand\" class=\"read-more-arrow down-arrow lazyload\" data-src=\"\/assets\/images\/blog\/Vector.png\"><\/a>\n                <div class=\"author-bio-expanded\">\n                    <p>Tushar Jadhav is a seasoned Mobile Technology expert with 14 years of extensive experience, currently working in <a href=\"https:\/\/mobisoftinfotech.com\">Mobisoft Infotech<\/a> as Principal Software Engineer. His expertise spans across diverse platforms, where he has successfully designed and implemented user-centric applications that enhance user engagement and drive business growth. Committed to staying ahead of industry trends, he thrives on transforming ideas into impactful mobile experiences that resonate with users.<\/p>\n                    <div class=\"author-social-links\"><div class=\"social-icon\"><a href=\"https:\/\/www.linkedin.com\/in\/tushar-jadhav-16b14239\/\" target=\"_blank\" rel=\"nofollow noopener\"><i class=\"icon-sprite linkedin\"><\/i><\/a><\/div><\/div>\n                    <a href=\"javascript:void(0);\" class=\"read-more-link read-less-btn\" onclick=\"toggleAuthorBio(this); return false;\" style=\"display: none;\">Read less <noscript><img decoding=\"async\" src=\"\/assets\/images\/blog\/Vector.png\" alt=\"collapse\" class=\"read-more-arrow up-arrow\"><\/noscript><img decoding=\"async\" src=\"data:image\/gif;base64,R0lGODlhAQABAIAAAAAAAP\/\/\/yH5BAEAAAAALAAAAAABAAEAAAIBRAA7\" alt=\"collapse\" class=\"read-more-arrow up-arrow lazyload\" data-src=\"\/assets\/images\/blog\/Vector.png\"><\/a>\n                <\/div>\n            <\/div>\n        <\/div>\n        <div class=\"share-section\">\n            <span class=\"share-label\">Share Article<\/span>\n            <div class=\"social-share-buttons\">\n                <a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fmobisoftinfotech.com%2Fresources%2Fblog%2Fflutter-development%2Fsecure-flutter-biometric-authentication-fingerprint-face-id\" target=\"_blank\" class=\"share-btn facebook-share\"><i class=\"fa fa-facebook-f\"><\/i><\/a>\n                <a href=\"https:\/\/www.linkedin.com\/sharing\/share-offsite\/?url=https%3A%2F%2Fmobisoftinfotech.com%2Fresources%2Fblog%2Fflutter-development%2Fsecure-flutter-biometric-authentication-fingerprint-face-id\" target=\"_blank\" class=\"share-btn linkedin-share\"><i class=\"fa fa-linkedin\"><\/i><\/a>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n\n\n<style>\n.post-content li:before{top:8px;}\n.post-details-title{font-size:42px}\nh6.wp-block-heading {\n    line-height: 2;\n}\n.social-icon{\ntext-align:left;\n}\nspan.bullet{\nposition: relative;\npadding-left:20px;\n}\n.ta-l,.post-content .auth-name{\ntext-align:left;\n}\nspan.bullet:before {\n    content: '';\n    width: 9px;\n    height: 9px;\n    background-color: #0d265c;\n    border-radius: 50%;\n    position: absolute;\n    left: 0px;\n    top: 3px;\n}\n.post-content p{\n    margin: 20px 0 20px;\n}\n.image-container{\n    margin: 0 auto;\n    width: 50%;\n}\nh5.wp-block-heading{\nfont-size:18px;\nposition: relative;\n\n}\nh4.wp-block-heading{\nfont-size:20px;\nposition: relative;\n\n}\nh3.wp-block-heading{\nfont-size:22px;\nposition: relative;\n\n}\n.para-after-small-heading {\n    margin-left: 40px !important;\n}\nh4.wp-block-heading.h4-list, h5.wp-block-heading.h5-list{ padding-left: 20px; margin-left:20px;}\nh3.wp-block-heading.h3-list {\n    position: relative;\nfont-size:20px;\n    margin-left: 20px;\n    padding-left: 20px;\n}\n\nh3.wp-block-heading.h3-list:before, h4.wp-block-heading.h4-list:before, h5.wp-block-heading.h5-list:before {\n    position: absolute;\n    content: '';\n    background: #0d265c;\n    height: 9px;\n    width: 9px;\n    left: 0;\n    border-radius: 50px;\n    top: 8px;\n}\n@media only screen and (max-width: 991px) {\nul.wp-block-list.step-9-ul {\n    margin-left: 0px;\n}\n.step-9-h4{padding-left:0px;}\n    .post-content li {\n       padding-left: 25px;\n    }\n    .post-content li:before {\n        content: '';\n         width: 9px;\n        height: 9px;\n        background-color: #0d265c;\n        border-radius: 50%;\n        position: absolute;\n        left: 0px;\n        top: 8px;\n    }\n}\n@media (max-width:767px) {\n  .image-container{\n    width:90% !important;\n  }\n  \n}\n<\/style>\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"Article\",\n  \"mainEntityOfPage\": {\n    \"@type\": \"WebPage\",\n    \"@id\": \"https:\/\/mobisoftinfotech.com\/resources\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\"\n  },\n  \"headline\": \"Secure Biometric Authentication in Flutter: Fingerprint & Face ID Login Tutorial\",\n  \"description\": \"Learn how to build secure biometric authentication in Flutter using fingerprint and Face ID. A practical step-by-step guide with local_auth examples and best practices.\",\n  \"image\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id\",\n  \"author\": {\n    \"@type\": \"Person\",\n    \"name\": \"Tushar Jadhav\",\n    \"description\": \"Tushar Jadhav is a seasoned Mobile Technology expert with 14 years of extensive experience, currently working in Mobisoft Infotech as Principal Software Engineer. His expertise spans across diverse platforms, where he has successfully designed and implemented user-centric applications that enhance user engagement and drive business growth. Committed to staying ahead of industry trends, he thrives on transforming ideas into impactful mobile experiences that resonate with users.\"\n  },\n  \"publisher\": {\n    \"@type\": \"Organization\",\n    \"name\": \"Mobisoft Infotech\",\n    \"logo\": {\n      \"@type\": \"ImageObject\",\n      \"url\": \"https:\/\/mobisoftinfotech.com\/assets\/images\/mshomepage\/MI_Logo-white.svg\",\n      \"width\": 600,\n      \"height\": 600\n    }\n  },\n  \"datePublished\": \"2025-12-05\",\n  \"dateModified\": \"2025-12-05\"\n}\n<\/script>\n <script type=\"application\/ld+json\">\n{\n    \"@context\": \"https:\/\/schema.org\",\n    \"@type\": \"LocalBusiness\",\n    \"name\": \"Mobisoft Infotech\",\n    \"url\": \"https:\/\/mobisoftinfotech.com\",\n    \"logo\": \"https:\/\/mobisoftinfotech.com\/assets\/images\/mshomepage\/MI_Logo-white.svg\",\n    \"description\": \"Mobisoft Infotech specializes in custom software development and digital solutions.\",\n    \"address\": {\n        \"@type\": \"PostalAddress\",\n        \"streetAddress\": \"5718 Westheimer Rd Suite 1000\",\n        \"addressLocality\": \"Houston\",\n        \"addressRegion\": \"TX\",\n        \"postalCode\": \"77057\",\n        \"addressCountry\": \"USA\"\n    },\n    \"contactPoint\": [{\n        \"@type\": \"ContactPoint\",\n        \"telephone\": \"+1-855-572-2777\",\n        \"contactType\": \"Customer Service\",\n        \"areaServed\": [\"USA\", \"Worldwide\"],\n        \"availableLanguage\": [\"English\"]\n    }],\n    \"sameAs\": [\n        \"https:\/\/www.facebook.com\/pages\/Mobisoft-Infotech\/131035500270720\",\n        \"https:\/\/x.com\/MobisoftInfo\",\n        \"https:\/\/www.linkedin.com\/company\/mobisoft-infotech\",\n        \"https:\/\/in.pinterest.com\/mobisoftinfotech\/\",\n        \"https:\/\/www.instagram.com\/mobisoftinfotech\/\",\n        \"https:\/\/github.com\/MobisoftInfotech\",\n        \"https:\/\/www.behance.net\/MobisoftInfotech\",\n        \"https:\/\/www.youtube.com\/@MobisoftinfotechHouston\"\n    ]\n}\n<\/script>\n<script type=\"application\/ld+json\">\n    [\n        {\n            \"@context\": \"https:\/\/schema.org\",\n            \"@type\": \"ImageObject\",\n            \"contentUrl\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png\",\n            \"url\": \"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\n            \"name\": \"Secure Biometric Authentication in Flutter: Fingerprint & Face ID Login Tutorial\",\n            \"caption\": \"Secure Biometric Authentication in Flutter: Fingerprint & Face ID Login Tutorial \",\n            \"description\": \"This banner illustrates secure biometric authentication in Flutter, highlighting fingerprint login, Face ID integration, and a smooth biometric verification experience for mobile apps.\",\n            \"license\": \"https:\/\/mobisoftinfotech.com\/terms\",\n            \"acquireLicensePage\": \"https:\/\/mobisoftinfotech.com\/acquire-license\",\n            \"creditText\": \"Mobisoft Infotech\",\n            \"copyrightNotice\": \"Mobisoft Infotech\",\n            \"creator\": {\n                \"@type\": \"Organization\",\n                \"name\": \"Mobisoft Infotech\"\n            },\n            \"thumbnail\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png\"\n        },\n        {\n            \"@context\": \"https:\/\/schema.org\",\n            \"@type\": \"ImageObject\",\n            \"contentUrl\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-cross-platform-strategy.png\",\n            \"url\": \"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\n            \"name\": \"Elevate Your Cross-Platform Strategy with Flutter\",\n            \"caption\": \"Take your cross-platform mobile strategy further with Flutter development expertise.\",\n            \"description\": \"This CTA encourages businesses to strengthen their cross-platform app strategy using Flutter\u2019s ecosystem, including secure biometric authentication and modern UI components.\",\n            \"license\": \"https:\/\/mobisoftinfotech.com\/terms\",\n            \"acquireLicensePage\": \"https:\/\/mobisoftinfotech.com\/acquire-license\",\n            \"creditText\": \"Mobisoft Infotech\",\n            \"copyrightNotice\": \"Mobisoft Infotech\",\n            \"creator\": {\n                \"@type\": \"Organization\",\n                \"name\": \"Mobisoft Infotech\"\n            },\n            \"thumbnail\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-cross-platform-strategy.png\"\n        },\n        {\n            \"@context\": \"https:\/\/schema.org\",\n            \"@type\": \"ImageObject\",\n            \"contentUrl\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-app-development.png\",\n            \"url\": \"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\n            \"name\": \"Your Next Big Idea Needs the Right Tech. Let\u2019s Build It!\",\n            \"caption\": \"Bring your next app idea to life with scalable Flutter development solutions.\",\n            \"description\": \"This CTA promotes building robust mobile applications with Flutter, including secure biometric login, fingerprint authentication, and Face ID support.\",\n            \"license\": \"https:\/\/mobisoftinfotech.com\/terms\",\n            \"acquireLicensePage\": \"https:\/\/mobisoftinfotech.com\/acquire-license\",\n            \"creditText\": \"Mobisoft Infotech\",\n            \"copyrightNotice\": \"Mobisoft Infotech\",\n            \"creator\": {\n                \"@type\": \"Organization\",\n                \"name\": \"Mobisoft Infotech\"\n            },\n            \"thumbnail\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-app-development.png\"\n        },\n        {\n            \"@context\": \"https:\/\/schema.org\",\n            \"@type\": \"ImageObject\",\n            \"contentUrl\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-authentication-architecture-diagram.png\",\n            \"url\": \"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\n            \"name\": \"Flutter Biometric Authentication Architecture Diagram\",\n            \"caption\": \"How the biometric authentication architecture works in Flutter using local_auth.\",\n            \"description\": \"A detailed architecture diagram showcasing how Flutter handles biometric authentication, including fingerprint login, Face ID, secure verification flows, and the local_auth plugin structure.\",\n            \"license\": \"https:\/\/mobisoftinfotech.com\/terms\",\n            \"acquireLicensePage\": \"https:\/\/mobisoftinfotech.com\/acquire-license\",\n            \"creditText\": \"Mobisoft Infotech\",\n            \"copyrightNotice\": \"Mobisoft Infotech\",\n            \"creator\": {\n                \"@type\": \"Organization\",\n                \"name\": \"Mobisoft Infotech\"\n            },\n            \"thumbnail\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-authentication-architecture-diagram.png\"\n        },\n        {\n            \"@context\": \"https:\/\/schema.org\",\n            \"@type\": \"ImageObject\",\n            \"contentUrl\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-options-overview.png\",\n            \"url\": \"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\n            \"name\": \"Flutter Biometric Options Overview\",\n            \"caption\": \"Available biometric authentication methods supported in Flutter apps.\",\n            \"description\": \"An illustrated overview of biometric authentication options in Flutter, covering fingerprint login, Face ID authentication, biometric verification, and secure login practices for Android and iOS.\",\n            \"license\": \"https:\/\/mobisoftinfotech.com\/terms\",\n            \"acquireLicensePage\": \"https:\/\/mobisoftinfotech.com\/acquire-license\",\n            \"creditText\": \"Mobisoft Infotech\",\n            \"copyrightNotice\": \"Mobisoft Infotech\",\n            \"creator\": {\n                \"@type\": \"Organization\",\n                \"name\": \"Mobisoft Infotech\"\n            },\n            \"thumbnail\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-biometric-options-overview.png\"\n        },\n        {\n            \"@context\": \"https:\/\/schema.org\",\n            \"@type\": \"ImageObject\",\n            \"contentUrl\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-authentication-shield.png\",\n            \"url\": \"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\n            \"name\": \"Flutter Secure Biometric Authentication Security Shield\",\n            \"caption\": \"Symbolic representation of Flutter\u2019s strong security measures for biometric login.\",\n            \"description\": \"A security shield illustration highlighting Flutter\u2019s secure biometric authentication approach, supporting fingerprint login, Face ID verification, and best practices for protecting sensitive user data.\",\n            \"license\": \"https:\/\/mobisoftinfotech.com\/terms\",\n            \"acquireLicensePage\": \"https:\/\/mobisoftinfotech.com\/acquire-license\",\n            \"creditText\": \"Mobisoft Infotech\",\n            \"copyrightNotice\": \"Mobisoft Infotech\",\n            \"creator\": {\n                \"@type\": \"Organization\",\n                \"name\": \"Mobisoft Infotech\"\n            },\n            \"thumbnail\": \"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/flutter-secure-biometric-authentication-shield.png\"\n        }  \n    ]\n<\/script>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Biometric authentication has become a standard feature in modern mobile applications, providing users with a secure and convenient way to access their accounts. This authentication method uses unique biological characteristics such as fingerprints, facial recognition, or iris scans to verify a user&#8217;s identity. In Flutter applications, implementing biometric authentication enhances security and improves user experience [&hellip;]<\/p>\n","protected":false},"author":106,"featured_media":46033,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_s2mail":"","footnotes":""},"categories":[4945],"tags":[8598,8608,8600,8610,8609,8602,8622,8617,8601,8620,8611,8618,8623,8614,8612,8615,8605,8619,8613,8616,8621],"class_list":["post-45975","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-flutter-development","tag-biometric-authentication","tag-biometric-login","tag-biometric-verification","tag-face-authentication-flutter","tag-face-id-flutter","tag-fingerprint-authentication-flutter","tag-flutter-app-fingerprint-lock","tag-flutter-biometric-auth-android-ios","tag-flutter-biometric-authentication","tag-flutter-biometric-authentication-best-practices","tag-flutter-biometric-login","tag-flutter-biometric-unlock-app","tag-flutter-face-recognition-login","tag-flutter-fingerprint-face-id-authentication","tag-flutter-fingerprint-login","tag-flutter-local-authentication-plugin","tag-flutter-local_auth-tutorial","tag-flutter-secure-login-biometrics","tag-how-to-implement-biometric-authentication-flutter","tag-local_auth-flutter-example","tag-secure-biometric-authentication-flutter"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Secure Biometric Authentication in Flutter Guide<\/title>\n<meta name=\"description\" content=\"Learn how to build secure biometric authentication in Flutter using fingerprint and Face ID. A practical step-by-step guide with local_auth examples and best practices.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Secure Biometric Authentication in Flutter Guide\" \/>\n<meta property=\"og:description\" content=\"Learn how to build secure biometric authentication in Flutter using fingerprint and Face ID. A practical step-by-step guide with local_auth examples and best practices.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\" \/>\n<meta property=\"og:site_name\" content=\"Mobisoft Infotech\" \/>\n<meta property=\"article:published_time\" content=\"2025-12-05T13:42:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-08T05:00:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/og-Secure-Biometric-Authentication-in-Flutter.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"525\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tushar Jadhav\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tushar Jadhav\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#article\",\"isPartOf\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\"},\"author\":{\"name\":\"Tushar Jadhav\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/ca10bd14793ab67b15bee1d9d767bb53\"},\"headline\":\"Secure Biometric Authentication in Flutter: Fingerprint &amp; Face ID Login Tutorial\",\"datePublished\":\"2025-12-05T13:42:41+00:00\",\"dateModified\":\"2025-12-08T05:00:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\"},\"wordCount\":1390,\"image\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage\"},\"thumbnailUrl\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png\",\"keywords\":[\"biometric authentication\",\"biometric login\",\"biometric verification\",\"Face authentication Flutter\",\"Face ID Flutter\",\"Fingerprint authentication Flutter\",\"flutter app fingerprint lock\",\"Flutter biometric auth Android iOS\",\"Flutter biometric authentication\",\"flutter biometric authentication best practices\",\"Flutter biometric login\",\"Flutter biometric unlock app\",\"flutter face recognition login\",\"Flutter fingerprint &amp; Face ID authentication\",\"Flutter fingerprint login\",\"Flutter local authentication plugin\",\"Flutter local_auth tutorial\",\"Flutter secure login biometrics\",\"How to implement biometric authentication Flutter\",\"local_auth Flutter example\",\"secure biometric authentication flutter\"],\"articleSection\":[\"Flutter Development\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\"url\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\",\"name\":\"Secure Biometric Authentication in Flutter Guide\",\"isPartOf\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage\"},\"image\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage\"},\"thumbnailUrl\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png\",\"datePublished\":\"2025-12-05T13:42:41+00:00\",\"dateModified\":\"2025-12-08T05:00:06+00:00\",\"author\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/ca10bd14793ab67b15bee1d9d767bb53\"},\"description\":\"Learn how to build secure biometric authentication in Flutter using fingerprint and Face ID. A practical step-by-step guide with local_auth examples and best practices.\",\"breadcrumb\":{\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage\",\"url\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png\",\"contentUrl\":\"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png\",\"width\":855,\"height\":392,\"caption\":\"Secure biometric authentication in Flutter with fingerprint and Face ID login\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/mobisoftinfotech.com\/resources\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Secure Biometric Authentication in Flutter: Fingerprint &amp; Face ID Login Tutorial\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#website\",\"url\":\"https:\/\/mobisoftinfotech.com\/resources\/\",\"name\":\"Mobisoft Infotech\",\"description\":\"Discover Mobility\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/mobisoftinfotech.com\/resources\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/ca10bd14793ab67b15bee1d9d767bb53\",\"name\":\"Tushar Jadhav\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/8194610e91b8f4846df49942da9a03621b8083844f590cdc8d733a0a83ce1191?s=96&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8194610e91b8f4846df49942da9a03621b8083844f590cdc8d733a0a83ce1191?s=96&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8194610e91b8f4846df49942da9a03621b8083844f590cdc8d733a0a83ce1191?s=96&r=g\",\"caption\":\"Tushar Jadhav\"},\"sameAs\":[\"https:\/\/mobisoftinfotech.com\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Secure Biometric Authentication in Flutter Guide","description":"Learn how to build secure biometric authentication in Flutter using fingerprint and Face ID. A practical step-by-step guide with local_auth examples and best practices.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id","og_locale":"en_US","og_type":"article","og_title":"Secure Biometric Authentication in Flutter Guide","og_description":"Learn how to build secure biometric authentication in Flutter using fingerprint and Face ID. A practical step-by-step guide with local_auth examples and best practices.","og_url":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id","og_site_name":"Mobisoft Infotech","article_published_time":"2025-12-05T13:42:41+00:00","article_modified_time":"2025-12-08T05:00:06+00:00","og_image":[{"width":1000,"height":525,"url":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/og-Secure-Biometric-Authentication-in-Flutter.png","type":"image\/png"}],"author":"Tushar Jadhav","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Tushar Jadhav","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#article","isPartOf":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id"},"author":{"name":"Tushar Jadhav","@id":"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/ca10bd14793ab67b15bee1d9d767bb53"},"headline":"Secure Biometric Authentication in Flutter: Fingerprint &amp; Face ID Login Tutorial","datePublished":"2025-12-05T13:42:41+00:00","dateModified":"2025-12-08T05:00:06+00:00","mainEntityOfPage":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id"},"wordCount":1390,"image":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage"},"thumbnailUrl":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png","keywords":["biometric authentication","biometric login","biometric verification","Face authentication Flutter","Face ID Flutter","Fingerprint authentication Flutter","flutter app fingerprint lock","Flutter biometric auth Android iOS","Flutter biometric authentication","flutter biometric authentication best practices","Flutter biometric login","Flutter biometric unlock app","flutter face recognition login","Flutter fingerprint &amp; Face ID authentication","Flutter fingerprint login","Flutter local authentication plugin","Flutter local_auth tutorial","Flutter secure login biometrics","How to implement biometric authentication Flutter","local_auth Flutter example","secure biometric authentication flutter"],"articleSection":["Flutter Development"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id","url":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id","name":"Secure Biometric Authentication in Flutter Guide","isPartOf":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/#website"},"primaryImageOfPage":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage"},"image":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage"},"thumbnailUrl":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png","datePublished":"2025-12-05T13:42:41+00:00","dateModified":"2025-12-08T05:00:06+00:00","author":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/ca10bd14793ab67b15bee1d9d767bb53"},"description":"Learn how to build secure biometric authentication in Flutter using fingerprint and Face ID. A practical step-by-step guide with local_auth examples and best practices.","breadcrumb":{"@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#primaryimage","url":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png","contentUrl":"https:\/\/mobisoftinfotech.com\/resources\/wp-content\/uploads\/2025\/12\/secure-flutter-biometric-authentication-fingerprint-face-id.png","width":855,"height":392,"caption":"Secure biometric authentication in Flutter with fingerprint and Face ID login"},{"@type":"BreadcrumbList","@id":"https:\/\/mobisoftinfotech.com\/resources\/blog\/flutter-development\/secure-flutter-biometric-authentication-fingerprint-face-id#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/mobisoftinfotech.com\/resources\/"},{"@type":"ListItem","position":2,"name":"Secure Biometric Authentication in Flutter: Fingerprint &amp; Face ID Login Tutorial"}]},{"@type":"WebSite","@id":"https:\/\/mobisoftinfotech.com\/resources\/#website","url":"https:\/\/mobisoftinfotech.com\/resources\/","name":"Mobisoft Infotech","description":"Discover Mobility","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/mobisoftinfotech.com\/resources\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/mobisoftinfotech.com\/resources\/#\/schema\/person\/ca10bd14793ab67b15bee1d9d767bb53","name":"Tushar Jadhav","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/8194610e91b8f4846df49942da9a03621b8083844f590cdc8d733a0a83ce1191?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/8194610e91b8f4846df49942da9a03621b8083844f590cdc8d733a0a83ce1191?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8194610e91b8f4846df49942da9a03621b8083844f590cdc8d733a0a83ce1191?s=96&r=g","caption":"Tushar Jadhav"},"sameAs":["https:\/\/mobisoftinfotech.com"]}]}},"_links":{"self":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts\/45975","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/users\/106"}],"replies":[{"embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/comments?post=45975"}],"version-history":[{"count":63,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts\/45975\/revisions"}],"predecessor-version":[{"id":46092,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/posts\/45975\/revisions\/46092"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/media\/46033"}],"wp:attachment":[{"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/media?parent=45975"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/categories?post=45975"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mobisoftinfotech.com\/resources\/wp-json\/wp\/v2\/tags?post=45975"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}