React native module for framework for identification documents reading and validation
npm install react-native-regula-testreact-native init MySample
cd MySample
npm install react-native-regula-test --save
npm install react-native-core-NAMEOFCORE-test --save
npm install react-native-fs --save (optional, used to load license file from file system)
react-native link
Names of cores can be found at https://github.com/regulaforensics/DocumentReader-Android/wiki/Core
npm install react-native-fs --save
npm install react-native-regula-test --save
#### Android:
android/app/src/main/java/[...]/MainApplication.java:
```
import com.regula.documentreader.RNRegulaDocumentReaderPackage;
import com.rnfs.RNFSPackage;
...
getPackages(){
...,
new RNFSPackage(),
new RNRegulaDocumentReaderPackage()
}
android/settings.gradle:
``
...
include ':react-native-fs'
project(':react-native-fs').projectDir = new File(settingsDir, '../node_modules/react-native-fs/android')
include ':react-native-regula-test'
project(':react-native-regula-test').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-regula-test/android')
android/app/build.gradle:
``
dependencies {
...
implementation project(':react-native-fs')
implementation project(':react-native-regula-test')
}
android/app/src/main/AndroidManifest.xml:
android:allowBackup="true"android:supportsRtl="true" to display rfid reading correctly
android/build.gradle:
``
minSdkVersion = 19 (or higher)
...
allprojects {
repositories {
...
maven {
url "http://maven.regulaforensics.com/RegulaDocumentReader"
}
maven {
url "http://maven.regulaforensics.com/RegulaDocumentReader/Beta"
}
}
}
important: the urls above have to be in separate __maven{}__ blocks
get regula.license here: https://licensing.regulaforensics.com/
put regula.license here: android\app\src\main\assets\
Navigate to yourproject/ios and open yourproject.xcodeproj
Go to TARGETS(project navigator->your project->targets->project name->general->embedded binaries) settings and find the section Embedded Binaries. Then add DocumentReader.framework and DocumentReaderCore.framework (situated in node_modules/react-native-regula-test/ios and node_modules/react-native-core-NAMEOFCORE-test/ios respectively) to Embedded Binaries
Go to TARGETS build settings and set always embed swift standart libraries to YES.
In Build settings add ${PROJECT_DIR}/../node_modules/react-native-regula-test/ios to Framework search paths(you can copy this from header search paths)
Get regula.license here: https://licensing.regulaforensics.com/
Xcode->project navigator-> your project->folder named as your project->rightclick this folder->add files to...->select your regula.license file
Add Privacy - Camera Usage Description and Privacy - Photo Library Usage Description to Information property list of your info.plist
On the first launch connect to the internet and wait until the database is downloaded(You will get toast "init complete")
Adding the following to App.js will show download progress in console:
`javascript``
const eventManager = new NativeEventEmitter(RNRegulaDocumentReader);
eventManager.addListener(
'prepareDatabaseProgressChangeEvent',
e => console.log(e["msg"])
);
Get App.js sample from https://github.com/DmitrySmolyakov/react-native-document-reader-example-demo