This plugin provides a single and simple interface for accessing fingerprint APIs on both Android 6+ and iOS.
- Check if fingerprint scanner is available
- Fingerprint authentication
- Ionic Native support
- ngCordova support
- Fallback options
- Now with FaceID on iPhone X
- Android
- iOS - XCode 8 or higher required, plugin uses Swift 3
- If you are using XCode 9, please set
<preference name="UseSwiftLanguageVersion" value="3.2" />
in your config.xml
- If you are using XCode 9, please set
Tutorial about using this plugin with Ionic thanks to Paul Halliday
Install from NPM
cordova plugin add cordova-plugin-fingerprint-aio --save
If you want to set a FaceID description use:
cordova plugin add cordova-plugin-fingerprint-aio --variable FACEID_USAGE_DESCRIPTION="Login now...."
or use this Github repo
Fingerprint.isAvailable(isAvailableSuccess, isAvailableError);
function isAvailableSuccess(result) {
/*
result depends on device and os.
iPhone X will return 'face' other Android or iOS devices will return 'finger'
*/
alert("Fingerprint available");
}
function isAvailableError(message) {
alert(message);
}
Fingerprint.show({
clientId: "Fingerprint-Demo",
clientSecret: "password" //Only necessary for Android
}, successCallback, errorCallback);
function successCallback(){
alert("Authentication successfull");
}
function errorCallback(err){
alert("Authentication invalid " + err);
}
Optional parameters
- disableBackup: If true remove backup option on authentication dialogue for Android. Default false.
- localizedFallbackTitle (iOS only): Title of fallback button.
- localizedReason (iOS only): Description in authentication dialogue.
Some code is refactored from their projects and I learned how to make Cordova plugins from their great plugins:
@EddyVerbruggen and @mjwheatley
- Project and iOS source -> MIT
- Android source -> MIT and Apache 2.0