Giter Club home page Giter Club logo

flutter_biometrics's Introduction

flutter_biometrics

Documentation is under contruction.

Flutter plugin which lets you to generate key pair and do cryptographic signing using biometric authentication.

Heavily influenced by local_auth

Usage in Dart

Import the relevant file:

import 'package:flutter_biometrics/flutter_biometrics.dart';

Available methods:

bool authAvailable =
    await FlutterBiometrics().authAvailable();
List<BiometricType> getAvailableBiometricTypes =
    await FlutterBiometrics().getAvailableBiometricTypes();
String publicKeyAsBase64 =
    await FlutterBiometrics().createKeys(reason: 'Please authenticate to generate keys');
bool signedPayloadAsBase64 =
    await FlutterBiometrics().sign(payload: 'base64string', reason: 'Please authenticate to sign payload');

Android Integration (taken from local_auth)

Note that local_auth plugin requires the use of a FragmentActivity as opposed to Activity. This can be easily done by switching to use FlutterFragmentActivity as opposed to FlutterActivity in your manifest (or your own Activity class if you are extending the base class).

Update your project's AndroidManifest.xml file to include the USE_FINGERPRINT permissions:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.app">
  <uses-permission android:name="android.permission.USE_FINGERPRINT"/>
<manifest>

Getting Started

For help getting started with Flutter, view Flutter online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

flutter_biometrics's People

Contributors

lukas-travelunion avatar remarcus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

flutter_biometrics's Issues

sign_error_key

When call
String signature = await FlutterBiometrics().sign(
payload: 'test',
reason: 'Please');

Is broken and print

[ERROR:flutter/lib/ui/ui_dart_state.cc(213)] Unhandled Exception: PlatformException(sign_error_key, Error retrieving keys: Supplied key (null) is not a RSAPrivateKey instance, null, null)

E/flutter (32570): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:597:7)
E/flutter (32570): #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:156:18)
E/flutter (32570):
E/flutter (32570): #2 FlutterBiometrics.sign (package:flutter_biometrics/flutter_biometrics.dart:75:12)
E/flutter (32570):

Error with local_auth

Error: 'BiometricType' is imported from both 'package:local_auth/local_auth.dart' and 'package:flutter_biometrics/flutter_biometrics.dart'.
import 'package:flutter_biometrics/flutter_biometrics.dart';

Flutter 2.8 Depreciated Version

The plugin flutter_biometrics uses a deprecated version of the Android embedding.
To avoid unexpected runtime failures, or future build failures, try to see if this plugin supports the Android V2 embedding. Otherwise, consider removing it since a future release of Flutter will remove these deprecated APIs.

add support notify the exception when a new finger is enrolled

thanks for your create this plugin

if you have time please add support notify the exception when a new finger is enrolled when calling the sign method
by pass optional named parameter to enable/disable this feature in dart code.

in native android code set setInvalidatedByBiometricEnrollment(true) Minimum API version is 24 but in ios swift code I don't have the experience to develop native ios app

thanks for your advance

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.