This page contains the information on Usage, Configuration, Result of OkayID Lite in Android, iOS and React-native
Usage
For Android, a valid license key is required to start the process.
Java
Config config =new Config.Builder().setExtractAddress(true).setExtractGender(true).setExtractReligion(true).build();OkayLiteActivity.startMyKadScanning(this, LICENSE_KEY, config,newOkayLiteResultListener() { @OverridepublicvoidonResultReceived(boolean isSuccess,int errorCode,MyKadResult result) {Logger.d("result => "+ result);if (isSuccess) {//do something with success result } else {//do something with error } }});
Kotlin
//By default it is trueval config = Config.Builder() .setExtractAddress(false) .setExtractReligion(false) .setExtractGender(false) .build()OkayLiteActivity.startMyKadScanning(this, LICENSE_KEY,config,{ isSuccess, errorCode, result ->if (isSuccess) {//do something with success result } else {//do something with error }})
The configurations by default are set as "true"
Result
These are the explanation of the results that the OkayID Lite will be returning as follow:
Property
Description
fullName
Full name
icNumber
IC number
gender
Gender
dob
Date of Birth
religion
Religion
address
Full address
fullDocumentPath
Path to the full document image captured
during the scanning process
Error Code
These are the error code that will be raised after each of the scanned is done.
Error Code
Constant Name
Description
-1
MyKadResult.NO_ERROR
MyKad has been successfully scanned
1
MyKadResult.ERROR_INVALID_LICENSE_KEY
The license is invalid
2
MyKadResult.ERROR_PERMISSION_DENIED
The user does not grant permission to access the camera and storage in order to do OCR
3
MyKadResult.ERROR_USER_CANCEL_ACTION
The user cancels during the scanning process (eg. user press back button)
Usage
For iOS, there are a few steps that needed to be followed as below:
Then, import "OkayIDLite" module into the swift file.
import OkayIDLite
After that, build the configuration object as follow:
Then, start the process by calling "startMyKadScanning" on the OkayIDLite class with the config object. It is also a must to pass a valid license string and a reference to the view controller. The "self" is referring to the current view controller in the example below:
Code above is an example to handle the success or failure of the MyKad scanning that the action can be customized by the user.
If it is not successful, the result will be returning nil
Result
These are the explanation of the results that the OkayID Lite will be returning as follow:
Property
Description
fullName
Full name
icNumber
IC number
gender
Gender
dob
Date of Birth
religion
Religion
address
Full address
fullDocumentPath
Path to the full document image captured
during the scanning process
Error Code
These are the error code that will be raised after each of the scanned is done.
Error Code
Constant Name
Description
-1
MyKadResult.NO_ERROR
MyKad has been successfully scanned
1
MyKadResult.ERROR_INVALID_LICENSE_KEY
The license is invalid
2
MyKadResult.ERROR_PERMISSION_DENIED
The use did not grant permission to access the camera in order to do OCR
3
MyKadResult.ERROR_USER_CANCEL_ACTION
The user cancelled during the scanning process
4
MyKadResult.ERROR_UNSUPPORTED_CAMERA_PRESET
The device's camera does not support the required preset for video OCR
Usage
For React-native, this is an example for the document capture for the custom camera UI design as following:
import RNOkayidLite from "react-native-okayid-lite"
//By default it is true
RNOkayidLite.startMykadScanning({
license: license,
extractAddress: false,
extractGender: false,
extractReligion: false
})
.then(result => {
console.log(result)
})
.catch(error => {
console.log(error)
})
Configuration
There are some configurations object to be followed in the development stage. The configurations that are going to show below can be implemented into the Usage section above.
Result
Property
Description
fullName
Full name
icNumber
IC number
gender
Gender
dob
Date of birth
religion
Religion
address
Full address
fullDocumentImage
Path to the full document image captured during the scanning process
Error Code
Error
Description
invalid license
The license is invalid
permission denied
The user did not grant permission to access the camera in order to do OCR
cancel
The user cancelled during the scanning process
failed
Unexpected error
unsupported camera preset (iOS Only)
The device's camera does not support the required preset for video OCR.