diff --git a/.gitignore b/.gitignore
index b25f93b..9c4d513 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,4 +4,22 @@ demo/platforms/ios/DemoApp.xcodeproj/xcuserdata
demo/platforms/ios/DemoApp.xcodeproj/project.xcworkspace
demo/platforms/ios/Pods
demo/platforms/ios/Podfile.lock
-demo/platforms/ios/CordovaLib/CordovaLib.xcodeproj/xcuserdata
\ No newline at end of file
+demo/platforms/ios/CordovaLib/CordovaLib.xcodeproj/xcuserdata
+
+# Log Files
+*.log
+
+# Android Studio Navigation editor temp files
+.navigation/
+
+# Android Studio captures folder
+captures/
+
+# Intellij
+*.iml
+.idea/workspace.xml
+.idea/tasks.xml
+.idea/gradle.xml
+.idea/dictionaries
+.idea/libraries
+*.iml
\ No newline at end of file
diff --git a/README.md b/README.md
index 4eab3ed..4bf84cc 100644
--- a/README.md
+++ b/README.md
@@ -3,7 +3,11 @@
Official Jumio Mobile SDK plugin for Apache Cordova
## Compatibility
-With every release, we only ensure compatibility with the latest version of Cordova.
+With this release, we only ensure compatibility with the latest Cordova versions and plugins.
+At the time of this release, the following minimum versions are supported:
+* Cordova: 7.1.0
+* Cordova Android: 6.3.0
+* Cordova iOS: 4.5.3
## Setup
@@ -13,14 +17,14 @@ cordova create MyProject com.my.project "MyProject"
cd MyProject
cordova platform add ios
cordova platform add android
-cordova plugin add https://github.com/Jumio/mobile-cordova.git#v2.8.0
+cordova plugin add https://github.com/Jumio/mobile-cordova.git#v2.9.0
```
## Integration
### iOS
-Manual integration or dependency management via cocoapods possible, please see [the official documentation of the Jumio Mobile SDK for iOS](https://github.com/Jumio/mobile-sdk-ios/tree/v2.8.0#basic-setup)
+Manual integration or dependency management via cocoapods possible, please see [the official documentation of the Jumio Mobile SDK for iOS](https://github.com/Jumio/mobile-sdk-ios/tree/v2.9.0#basic-setup)
### Android
@@ -29,6 +33,7 @@ Add the Jumio repository:
```
repositories {
maven { url 'http://mobile-sdk.jumio.com' }
+ maven { url 'https://maven.google.com/' }
}
```
@@ -36,17 +41,26 @@ Add a parameter for your SDK_VERSION into the ext-section:
```
ext {
- SDK_VERSION = "2.8.0"
+ SDK_VERSION = "2.9.0"
}
```
-Add required permissions for the products as described in chapter [Permissions](https://github.com/Jumio/mobile-sdk-android/blob/v2.8.0/README.md#permissions)
+Add required permissions for the products as described in chapter [Permissions](https://github.com/Jumio/mobile-sdk-android/blob/v2.9.0/README.md#permissions)
Open the android project of your cordova project located in */platforms/android* and insert the dependencies from the products you require to your **build.gradle** file. (Module: android)
-* [Netverify & Fastfill](https://github.com/Jumio/mobile-sdk-android/blob/v2.8.0/docs/integration_netverify-fastfill.md#dependencies)
-* [Document Verification](https://github.com/Jumio/mobile-sdk-android/blob/v2.8.0/docs/integration_document-verification.md#dependencies)
-* [BAM Checkout](https://github.com/Jumio/mobile-sdk-android/blob/v2.8.0/docs/integration_bam-checkout.md#dependencies)
+* [Netverify & Fastfill](https://github.com/Jumio/mobile-sdk-android/blob/v2.9.0/docs/integration_netverify-fastfill.md#dependencies)
+* [Document Verification](https://github.com/Jumio/mobile-sdk-android/blob/v2.9.0/docs/integration_document-verification.md#dependencies)
+* [BAM Checkout](https://github.com/Jumio/mobile-sdk-android/blob/v2.9.0/docs/integration_bam-checkout.md#dependencies)
+
+__Note:__ If you are using Netverify, make sure to add the Google vision meta-data to you **AndroidManifest.xml** accordingly:
+
+```
+
+```
## Usage
@@ -279,7 +293,7 @@ Jumio.startBAM(function(cardInformation) {
## Customization
### Android
-The Netverify SDK can be customized to the respective needs by following this [customization chapter](https://github.com/Jumio/mobile-sdk-android/blob/v2.8.0/docs/integration_netverify-fastfill.md#customization).
+The Netverify SDK can be customized to the respective needs by following this [customization chapter](https://github.com/Jumio/mobile-sdk-android/blob/v2.9.0/docs/integration_netverify-fastfill.md#customization).
### iOS
The SDK can be customized to the respective needs. You can pass the following customization options to the initializer:
@@ -292,10 +306,12 @@ The SDK can be customized to the respective needs. You can pass the following cu
| tintColor | STRING | Change the tint color of the navigation bar |
| barTintColor | STRING | Change the bar tint color of the navigation bar |
| textTitleColor | STRING | Change the text title color of the navigation bar |
-| defaultButtonBackgroundColor | STRING | Change the background color of the default button |
-| defaultButtonTitleColor | STRING | Change the title color of the default button |
-| activeButtonBackgroundColor | STRING | Change the background color of the active button |
-| activeButtonTitleColor | STRING | Change the title color of the active button |
+| documentSelectionHeaderBackgroundColor | STRING | Change the background color of the document selection header |
+| documentSelectionHeaderTitleColor | STRING | Change the title color of the document selection header |
+| documentSelectionHeaderIconColor | STRING | Change the icon color of the document selection header |
+| documentSelectionButtonBackgroundColor | STRING | Change the background color of the document selection button |
+| documentSelectionButtonTitleColor | STRING | Change the title color of the document selection button |
+| documentSelectionButtonIconColor | STRING | Change the icon color of the document selection button |
| fallbackButtonBackgroundColor | STRING | Change the background color of the fallback button |
| fallbackButtonBorderColor | STRING | Change the border color of the fallback button |
| fallbackButtonTitleColor | STRING | Change the title color of the fallback button |
diff --git a/package.json b/package.json
index 1e69cff..7b9c7a2 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "cordova-plugin-jumio-mobilesdk",
- "version": "2.8.0",
+ "version": "2.9.0",
"description": "Jumio Mobile SDK Plugin for Cordova",
"cordova": {
"id": "cordova-plugin-jumio-mobilesdk",
diff --git a/plugin.xml b/plugin.xml
index 2491781..718496c 100644
--- a/plugin.xml
+++ b/plugin.xml
@@ -1,5 +1,5 @@
-
+JumioMobileSDK
@@ -21,11 +21,11 @@
$CAMERA_USAGE_DESCRIPTION
-
+
-
+
@@ -63,16 +63,24 @@
-keep class com.jumio.** { *; }
- -keep class net.sf.scuba.smartcards.IsoDepCardService {*;}
- -keep class org.jmrtd.** { *; }
- -keep class net.sf.scuba.** {*;}
- -keep class org.spongycastle.** {*;}
- -keep class org.ejbca.** {*;}
-
- -dontwarn java.nio.**
- -dontwarn org.codehaus.**
- -dontwarn org.ejbca.**
- -dontwarn org.spongycastle.**
+ -keep class jumio.** { *; }
+ -keep class com.samsung.** { *; }
+ -keep class com.samsung.**$* { *; }
+ -keep class com.microblink.** { *; }
+ -keep class com.microblink.**$* { *; }
+
+ -keep class net.sf.scuba.smartcards.IsoDepCardService {*;}
+ -keep class org.jmrtd.** { *; }
+ -keep class net.sf.scuba.** {*;}
+ -keep class org.spongycastle.** {*;}
+ -keep class org.ejbca.** {*;}
+
+ -dontwarn java.nio.**
+ -dontwarn org.codehaus.**
+ -dontwarn org.ejbca.**
+ -dontwarn org.spongycastle.**
+ -dontwarn com.samsung.**
+ -dontwarn com.microblink.**
diff --git a/src/android/JumioMobileSDK.java b/src/android/JumioMobileSDK.java
index b7f251d..d19be68 100644
--- a/src/android/JumioMobileSDK.java
+++ b/src/android/JumioMobileSDK.java
@@ -381,7 +381,7 @@ private void initDocumentVerification(JSONArray data) {
documentVerificationSDK.setDocumentName(options.getString(key));
} else if (key.equals("cameraPosition")) {
JumioCameraPosition cameraPosition = (options.getString(key).toLowerCase().equals("front")) ? JumioCameraPosition.FRONT : JumioCameraPosition.BACK;
- bamSDK.setCameraPosition(cameraPosition);
+ documentVerificationSDK.setCameraPosition(cameraPosition);
}
}
}
diff --git a/src/ios/JumioMobileSDK.m b/src/ios/JumioMobileSDK.m
index a9d687a..6302168 100644
--- a/src/ios/JumioMobileSDK.m
+++ b/src/ios/JumioMobileSDK.m
@@ -221,6 +221,8 @@ - (void)initNetverify:(CDVInvokedUrlCommand*)command
}
self.netverifyConfiguration.preselectedDocumentTypes = documentTypes;
+ } else if ([key isEqualToString: @"offlineToken"]) {
+ self.netverifyConfiguration.offlineToken = [options objectForKey: key];
}
}
}
@@ -244,14 +246,18 @@ - (void)initNetverify:(CDVInvokedUrlCommand*)command
[[UINavigationBar netverifyAppearance] setTitleTextAttributes: @{NSForegroundColorAttributeName: color}];
} else if ([key isEqualToString: @"foregroundColor"]) {
[[NetverifyBaseView netverifyAppearance] setForegroundColor: color];
- } else if ([key isEqualToString: @"defaultButtonBackgroundColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setBackgroundColor: color forState:UIControlStateNormal];
- } else if ([key isEqualToString: @"defaultButtonTitleColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setTitleColor: color forState:UIControlStateNormal];
- } else if ([key isEqualToString: @"activeButtonBackgroundColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setBackgroundColor: color forState:UIControlStateHighlighted];
- } else if ([key isEqualToString: @"activeButtonTitleColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setTitleColor: color forState:UIControlStateHighlighted];
+ } else if ([key isEqualToString: @"documentSelectionHeaderBackgroundColor"]) {
+ [[NetverifyDocumentSelectionHeaderView netverifyAppearance] setBackgroundColor: color];
+ } else if ([key isEqualToString: @"documentSelectionHeaderTitleColor"]) {
+ [[NetverifyDocumentSelectionHeaderView netverifyAppearance] setTitleColor: color];
+ } else if ([key isEqualToString: @"documentSelectionHeaderIconColor"]) {
+ [[NetverifyDocumentSelectionHeaderView netverifyAppearance] setIconColor: color];
+ } else if ([key isEqualToString: @"documentSelectionButtonBackgroundColor"]) {
+ [[NetverifyDocumentSelectionButton netverifyAppearance] setBackgroundColor: color forState: UIControlStateNormal];
+ } else if ([key isEqualToString: @"documentSelectionButtonTitleColor"]) {
+ [[NetverifyDocumentSelectionButton netverifyAppearance] setTitleColor: color forState: UIControlStateNormal];
+ } else if ([key isEqualToString: @"documentSelectionButtonIconColor"]) {
+ [[NetverifyDocumentSelectionButton netverifyAppearance] setIconColor: color forState: UIControlStateNormal];
} else if ([key isEqualToString: @"fallbackButtonBackgroundColor"]) {
[[NetverifyFallbackButton netverifyAppearance] setBackgroundColor: color forState:UIControlStateNormal];
} else if ([key isEqualToString: @"fallbackButtonBorderColor"]) {
@@ -367,20 +373,6 @@ - (void)initDocumentVerification:(CDVInvokedUrlCommand*)command
[[UINavigationBar netverifyAppearance] setTitleTextAttributes: @{NSForegroundColorAttributeName: color}];
} else if ([key isEqualToString: @"foregroundColor"]) {
[[NetverifyBaseView netverifyAppearance] setForegroundColor: color];
- } else if ([key isEqualToString: @"defaultButtonBackgroundColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setBackgroundColor: color forState:UIControlStateNormal];
- } else if ([key isEqualToString: @"defaultButtonTitleColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setTitleColor: color forState:UIControlStateNormal];
- } else if ([key isEqualToString: @"activeButtonBackgroundColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setBackgroundColor: color forState:UIControlStateHighlighted];
- } else if ([key isEqualToString: @"activeButtonTitleColor"]) {
- [[NetverifyScanOptionButton netverifyAppearance] setTitleColor: color forState:UIControlStateHighlighted];
- } else if ([key isEqualToString: @"fallbackButtonBackgroundColor"]) {
- [[NetverifyFallbackButton netverifyAppearance] setBackgroundColor: color forState:UIControlStateNormal];
- } else if ([key isEqualToString: @"fallbackButtonBorderColor"]) {
- [[NetverifyFallbackButton netverifyAppearance] setBorderColor: color];
- } else if ([key isEqualToString: @"fallbackButtonTitleColor"]) {
- [[NetverifyFallbackButton netverifyAppearance] setTitleColor: color forState:UIControlStateNormal];
} else if ([key isEqualToString: @"positiveButtonBackgroundColor"]) {
[[NetverifyPositiveButton netverifyAppearance] setBackgroundColor: color forState:UIControlStateNormal];
} else if ([key isEqualToString: @"positiveButtonBorderColor"]) {