Set IDV Database
API: setIDVDatabaseID
📌 Overview
The setIDVDatabaseID API is used to set a specific document database in the REL-ID IDV SDK. It must be used before initiating document scan operation, when useDefaultDatabase is set to false either from the Gateway Manager or via the setIDVConfig API. On invocation, the SDK downloads the selected database (if not already downloaded) and uses it for document scanning.
⚙️ Behavior
- Must be called before document scan initialization if not using default database.
- The selected database is downloaded in the background.
- Progress of download is reported via
onDatabaseDownloadProgressevent. - If the provided database ID is invalid or not in the config, a sync error will be returned.
🧑💻 Method Signatures
| Platform | Signature |
|---|---|
| React Native | RdnaClient.setIDVDatabaseID(databaseID, callback) |
| Flutter | rdna.setIDVDatabaseID(databaseID) |
| Cordova | com.uniken.rdnaplugin.RdnaClient.setIDVDatabaseID(successCallback, errorCallback, [databaseID]) |
| Native Android | RDNAError setIDVDatabaseID(String databaseID) |
| Native iOS | - (RDNAError *)setIDVDatabaseID:(NSString *)databaseID; |
📥 Parameters
| Name | Type | Description |
|---|---|---|
databaseID | string | Unique identifier of the target document database (e.g., "India", "Jordan", "FullDB") |
📤 Response
Returns a standard RDNAError JSON object:
{
"shortErrorCode": 0,
"longErrorCode": 0,
"errorString": "Success"
}📄 Sample Code
React Native
const dbId = "India";
RdnaClient.setIDVDatabaseID(dbId, (result) => {
if (result.shortErrorCode === 0) {
console.log("Database ID set successfully");
} else {
console.error("Error:", result.errorString);
}
});Flutter
const dbId = "India";
rdna.setIDVDatabaseID(dbId).then((result) {
if (result["shortErrorCode"] == 0) {
print("Database set successfully");
} else {
print("Error: ${result["errorString"]}");
}
});Cordova
const dbId = "India";
com.uniken.rdnaplugin.RdnaClient.setIDVDatabaseID(
function(result) {
console.log("Success:", result);
},
function(error) {
console.error("Error:", error);
},
[dbId]
);Native Android
String dbId = "India";
RDNA.RDNAError result = rdnaClient.setIDVDatabaseID(dbId);
if (result.getShortErrorCode() == 0) {
Log.d("IDV", "Database set successfully");
} else {
Log.e("IDV", result.getErrorString());
}Native iOS
NSString *dbId = @"India";
RDNAError *result = [self.rdnaClient setIDVDatabaseID:dbId];
if (result.shortErrorCode == 0) {
NSLog(@"Database set successfully");
} else {
NSLog(@"Error: %@", result.errorString);
}Updated about 2 months ago
