react-native-idnow
React Native IDnow binding for iOS/Android platforms.
Installation
Using npm:
npm install --save react-native-idnow
or using yarn:
yarn add react-native-idnow
Linking
Automatic
⚠️ Only follow this step if you are using react-native <= 0.59 as react-native >= 0.60 is using auto-linking.
react-native link react-native-idnow
Manual
iOS
- See "Additional required steps"
- In XCode, in the project navigator, right click
Libraries
➜ Add Files to [your project's name]
- Go to
node_modules
➜ react-native-idnow
and add RNIdnow.xcodeproj
- In XCode, in the project navigator, select your project. Add
libRNIdnow.a
to your project's Build Phases
➜ Link Binary With Libraries
- Run your project (
Cmd+R
)
Android
- Open up
android/app/src/main/java/[...]/MainActivity.java
- Add
import com.bitwala.idnow.RNIdnowPackage;
to the imports at the top of the file - Add
new RNIdnowPackage()
to the list returned by the getPackages()
method
- Append the following lines to
android/settings.gradle
:
include ':react-native-idnow'
project(':react-native-idnow').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-idnow/android')
- Insert the following lines inside the dependencies block in
android/app/build.gradle
:
compile project(':react-native-idnow')
also in dependencies
implementation 'de.idnow.android.sdk:idnow-platform:4.12.0'
- Add the following to
repositories
in android/build.gradle
:
maven {
url "https://raw.githubusercontent.com/idnow/de.idnow.android.sdk/master"
}
maven {
url "https://raw.githubusercontent.com/idnow/de.idnow.android/de.idnow.android-5.0.12.1"
}
Additional required steps:
Android
-
Update android/app/src/AndroidManifest.xml
:
add xmlns:tools="http://schemas.android.com/tools"
to the manifest
tag
add tools:replace="android:icon,android:theme,android:allowBackup"
to the application
tag
-
See IDnow AndroidManifest section
-
(not required) To change colors, update colors.xml
(see /demo/ReactNativeIDnowSample/android/app/src/main/res/values/colors.xml
)
iOS
- Add the following pod dependencies to your podfile:
use_frameworks! :linkage => :static
pod 'IDnowSDK', '5.0.12'
- Then, run the following command:
pod install --repo-update
or
pod install
- Add following to Info.plist:
<key>NSCameraUsageDescription</key>
<string>Need camera access for video streaming and identification</string>
<key>NSMicrophoneUsageDescription</key>
<string>Need microphone access for video identification</string>
- Add
RNIdnow.h
and RNIdnow.m
files to the ios project(see demo app)
Usage
import { IDnowManager } from 'react-native-idnow';
try {
await IDnowManager.startVideoIdent({
transactionToken: 'TST-XXXXX',
});
} catch (e) {
...
}