- Notifications
You must be signed in to change notification settings - Fork19
simple interface to verify user authenticity
License
smallcase/react-native-simple-biometrics
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
React Native Simple Biometrics is a straightforward and minimalistic React Native package designed to provide developers with an API for implementing user authentication using on-device biometrics. This library facilitates the quick verification of the app's user, ensuring that sensitive information is only accessible to authorized individuals, such as the phone owner or a trustee.
To get started with React Native Simple Biometrics, you can add it to your project using Yarn:
$ yarn add react-native-simple-biometrics
- iOS target:
10.0 - Android minSdkVersion:
21
To utilize the Face ID system on iOS devices, it is mandatory to include an entry in your iOS app'sinfo.plist, explaining the valid reason for using biometrics:
<key>NSFaceIDUsageDescription</key><string>a valid reason to use biometrics</string>
When you call theauthenticate function, iOS users will be automatically prompted for permission. For more granular control over when to request permissions, you can utilize thereact-native-permissions package.
React Native Simple Biometrics offers two main methods:
canAuthenticate(options?: Options): Checks whether the device supports biometric authentication. Returnstrueif the hardware is available or if permission for Face ID (iOS) was granted.
Parameters
options(optional): An object containing configuration optionsallowDeviceCredentials(boolean, default: true): Whether to allow device credentials (passcode/password) as a fallback when biometric authentication is not available
Return Value
Returns a Promise that resolves to:
- true if authentication is possible with the specified options
- false if authentication is not possible
requestBioAuth(promptTitle: string, promptMessage: string, options?: Options): Initiates the biometric authentication process, displaying a user-friendly prompt with the specified title and message. This function can be used for user authentication.
Required Parameters
promptTitle(string): The title displayed in the authentication dialogMust be a non-empty stringThrows an error if not provided or emptypromptMessage(string): The subtitle/reason for requesting authenticationMust be a non-empty stringThrows an error if not provided or emptyDisplays in the authentication dialog to explain why authentication is needed
Optional Parameters
options(object, optional): Configuration optionsallowDeviceCredentials(boolean, default: true): Whether to allow device credentials (passcode/password) as a fallback when biometric authentication is not available
Return Value
Returns a Promise that:
- Resolves to true when authentication is successful
- Rejects with an error when authentication fails or is cancelled
Here's a code snippet demonstrating how to use these methods:
importRNBiometricsfrom'react-native-simple-biometrics';// Check if biometric authentication is available, will fallback to device passcode by default if notconstcan=awaitRNBiometrics.canAuthenticate();if(can){try{awaitRNBiometrics.requestBioAuth('prompt-title','prompt-message');// Code to execute when authenticated// ...}catch(error){// Code to handle authentication failure// ...}}
React Native Simple Biometrics is a simplified version ofreact-native-biometrics. If you require advanced features such as key generation, signatures, and more, consider using react-native-biometrics.
About
simple interface to verify user authenticity
Topics
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors5
Uh oh!
There was an error while loading.Please reload this page.
