React Native IDnow binding for iOS/Android platforms.
yarn add react-native-idnow
⚠️ 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
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 addRNIdnow.xcodeproj
- In XCode, in the project navigator, select your project. Add
libRNIdnow.a
to your project'sBuild 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 thegetPackages()
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')
- Add the following to
repositories
inandroid/build.gradle
:maven { url "https://raw.githubusercontent.com/idnow/de.idnow.android/master" }
-
Update
android/app/src/AndroidManifest.xml
: addxmlns:tools="http://schemas.android.com/tools"
to themanifest
tag addtools:replace="android:icon,android:theme,android:allowBackup"
to theapplication
tag -
See IDnow AndroidManifest section
-
Update
colors.xml
(see/demo/ReactNativeIDnowSample/android/app/src/main/res/values/colors.xml
)
- Add the following pod dependencies to your podfile:
pod 'IDnowSDK'
- Then, run the following command:
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
andRNIdnow.m
files from theios
folder in the demo app to the ios project
import { IDnowManager } from 'react-native-idnow';
try {
await IDnowManager.startVideoIdent({
transactionToken: 'TST-XXXXX',
});
} catch (e) {
...
}