- SDK Version 4.0.0 and Above
- SDK Version 3.9.2 and 4.0.0
- SDK Version 3.9.0
- SDK Version 3.8.0 and Newer
- SDK Version 3.7.x
- Miscellaneous
If build fails with error message:
2 files found with path 'lib/arm64-v8a/libc++_shared.so' from inputs ...
Please add the following packagingOptions
to the configuration in your build.gradle
file:
android{
packagingOptions {
pickFirst 'lib/armeabi-v7a/libc++_shared.so'
pickFirst 'lib/arm64-v8a/libc++_shared.so'
}
}
On some Xiaomi devices (e.g. Redmi Note 4) it can happen that picking a file from local storage for document verification fails. This boils down to a problem with Xiaomi's default file manager. To fix this, please install and use a different file manager on those devices when loading a file for document verification.
If the face scan crashes without warning on camera start and/or the following error message is displayed:
java.lang.SecurityException: To use the sampling rate of 0 microseconds, app needs to declare the normal permission HIGH_SAMPLING_RATE_SENSORS.
Please make sure to add the following permission to your AndroidManifest.xml
file:
<uses-permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS"/>
- Make sure to display the
NetverifyCustomScanView
only AFTER callingstartScan()
as done in our Sample, to ensure that the scan presenter is fully initialized and the camera callbackonNetverifyCameraAvailable()
will be fired.
If user is getting stuck indefinitely after scanning process during 'Processing documents' stage without a callback or error message, please make sure the following dependencies
classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version
apply plugin: 'kotlinx-serialization'
dependencies {
...
implementation "org.jetbrains.kotlinx:kotlinx-serialization-core:1.0.0"
implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.0.0"
...
}
have been included in your build.gradle
file. Missing Kotlin serialization will result in infinite loading without a callback.
Please also refer to the 3.8.0 "Dependency Changes" section of our transition guide and the build.gradle
(https://github.com/Jumio/mobile-sdk-android/blob/master/sample/JumioMobileSample/build.gradle) of our sample application for additional information.
In some rare cases, the iproov Token Call can take too long to complete, which means the token is not yet available when the decision for the Liveness Vendor is made. When this happens, the scan mode FACE_MANUAL
(Manual Capturing) will be used as a fallback. This also applies to Tablets and devices running on Android Version 5 ("Lollipop") or lower.
Note: This is most likely to happen for applications implementing CustomUI that start with face scanning directly.
iProov indirectly depends on okhttp 3.8.1. As of now, issues related to okhttp have been due to the use of okhttp 4.x.
This can be solved by downgrading the dependency that provides 4.x, by excluding the okhttp package from that dependency, or by a combination of both of these. (Please note that a 3.x version is not necessarily older than 4.x one.)
Please also refer to iProov FAQ for further information.
Due to a bug in the Jetifier, the Bouncycastle library needs to be added to the Jetifiers ignorelist in the gradle.properties
android.jetifier.blacklist=bcprov-jdk15on
Please note that the naming of this will change with the Android Gradle Plugin 4 release and will become android.jetifier.ignorelist
On using iProov in CustomUI, in case NetverifySDKController$retry
function is called for an error EXX0000, the SDK can fail with the following exception: java.lang.NoClassDefFoundError: Failed resolution of: Lcom/jumio/zoom/custom/ZoomCustomScanPresenter
. This issue was fixed in SDK version 3.9.0. As a workaround it is possible to only add implementation "com.jumio.android:zoom:3.8.0@aar"
to the build.gradle dependencies.
Since the Jumio SDK is partly written in Kotlin, it is necessary to add the Kotlin standard library dependency to your project, even if the project itself if written in Java.
Error message "Static interface methods are only supported with Android N" will be displayed when Java 8 compatibility is not enabled. In this case, please make sure to enable compatibility in your build.gradle
file:
android {
...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Running the SDK on API Level 21/Android Version 5 ("Lollipop") or lower, the application might crash when trying to display Jumio animations. In this case it is necessary to add the line AppCompatDelegate.setCompatVectorFromResourcesEnabled(true)
to the onCreate()
method of your application or Activity
, ideally before setContentView()
is called.
Note: Refer to required for vector drawable compat handling for further information.
Countries with documents that are MRZ-capable (which is the case for most passports) might not be available if the necessary MRZ dependency is missing. The dependency in question is:
implementation "com.jumio.android:nv-mrz:3.9.0@aar"
Countries with documents that have a barcode might not be available if the necessary MRZ dependency is missing. The dependency in question is:
implementation "com.jumio.android:nv-barcode:3.9.0@aar"
A complete list of all dependencies can be found here.
Note: Version numbers may vary.
Datadog registers a Content Receiver through its AndroidManifest. Therefore Datadog needs to be linked in the base app, otherwise the app will crash during start.
api "com.datadoghq:dd-sdk-android-rum:2.0.0"
Note: Version numbers may vary.