
Transition Guide for Android SDK
This section covers all technical changes that should be considered when updating from previous versions, including, but not exclusively: API breaking changes or new functionality in the public API, major dependency changes, attribute changes, deprecation notices.
- When updating your SDK version, all changes/updates made in in the meantime have to be taken into account and applied if necessary.
- Example: If you're updating from SDK version 3.7.2 to 3.9.2, the changes outlined in 3.8.0, 3.9.0 and 3.9.1 are still relevant.
4.15.0
Deprecation Notice
⚠️ The iProov dependency com.jumio.android:iproov is deprecated and will be removed in SDK v4.16.0.
Minimum SDK Version Changes
- minSdkVersion has been increased to 23. The SDK can still be integrated in Apps that support lower minSdkVersions - check if the platform is supported before initializing the JumioSDK, otherwise it will throw a PlatformNotSupportedException. The minSdkVersion change also internally changes how the apk is compressed which results in bigger apk files. Please see the FAQ for that.
New SDK Localizations Added
The following keys have been added:
jumio_nfc_error_description_idjumio_nfc_error_description_otherjumio_nfc_error_description_us
Customization Changes
- The following customization color attributes have been added:
<item name="jumio_nfc_phone_screen"><item name="jumio_nfc_phone_notch"><item name="jumio_nfc_chip_primary"><item name="jumio_nfc_chip_secondary"><item name="jumio_nfc_chip_glow"><item name="jumio_nfc_pulse">
jumio_nfc_id_foregroundcustomization color attribute has been removed.
Dependency Updates
⚠️ Please note that the Android Gradle Plugin update is officially recommended to fully support Android 16.
| Name | Jumio Module | Dependency | old version | new version |
|---|---|---|---|---|
| Gradle Wrapper | all | 8.9 | 8.11.1 | |
| Android Gradle Plugin | all | "com.android.library" | 8.7.3 | 8.9.3 |
| Appcompat | all | "androidx.appcompat:appcompat" | 1.7.0 | 1.7.1 |
| Coroutines | core | "org.jetbrains.kotlinx:kotlinx-coroutines-android" | 1.8.1 | 1.10.2 |
| Concurrent | core | "androidx.concurrent:concurrent-futures" | 1.2.0 | 1.3.0 |
| Material | core | "com.google.android.material:material" | 1.12.0 | 1.13.0 |
| LibYUV | core | "io.github.crow-misia.libyuv:libyuv-android" | 0.36.0 | 0.43.2 |
| Constraint Layout | core, defaultui | "androidx.constraintlayout:constraintlayout" | 2.2.0 | 2.2.1 |
| Lifecycle Viewmodel | defaultui | "androidx.lifecycle:lifecycle-viewmodel-ktx" | 2.8.7 | 2.9.3 |
| Lifecycle Savedstate | defaultui | "androidx.lifecycle:lifecycle-viewmodel-savedstate" | 2.8.7 | 2.9.3 |
| Lifecycle Livedata | defaultui | "androidx.lifecycle:lifecycle-livedata-ktx" | 2.8.7 | 2.9.3 |
| Lifecycle Runtime Android | defaultui | "androidx.lifecycle:lifecycle-runtime-android" | ADDED | 2.9.3 |
| Lifecycle Runtime Ktx | defaultui | "androidx.lifecycle:lifecycle-runtime-Ktx" | ADDED | 2.9.3 |
| Navigation UI | defaultui | "androidx.navigation:navigation-ui-ktx" | 2.8.5 | 2.9.3 |
| Navigation Fragment | defaultui | "androidx.navigation:navigation-fragment-ktx" | 2.8.5 | 2.9.3 |
| Browser | digital-identity | "androidx.browser:browser" | 1.8.0 | 1.9.0 |
| AndroidX Core KTX | docfinder | "androidx.core:core-ktx" | 1.15.0 | 1.17.0 |
| JMRTD | nfc | "org.jmrtd:jmrtd" | 0.7.42 | 0.8.2 |
| BouncyCastle | nfc | "org.bouncycastle:bcprov-jdk18on" | 1.78.1 | 1.81 |
4.14.0
Deprecation Notice
⚠️ SDK 4.14.0 will be the last SDK version supporting Android 5 (API level 21). All subsequent SDK versions will require at least Android 6.0 "Marshmallow" (API level 23).
General
- Added support for Android 16.
LiteRT Notice
JumioSDK bundles LiteRT Version 1.0.1 which supports 16kb page size for ARM64-v8 but not x86_64. This is fine for the JumioSDK as only ARM cpus are supported. An update to 1.4.0 is currently not possible because the min API level of LiteRT 1.4.0 (25) exceeds the min API level of the Jumio SDK (21). If you don't use LiteRT elsewhere in the code you can remove the x86 and x86_64 libraries by excluding them in the packagingOptions:
android {
...
packagingOptions {
...
it.excludes.add("lib/x86_64/libtensorflowlite_jni.so")
it.excludes.add("lib/x86/libtensorflowlite_jni.so")
}
}
If your apps min API level is at least 25 then the LiteRT dependency can be overridden:
implementation ("com.jumio.android:docfinder:4.14.0") {
exclude group: 'com.google.ai.edge.litert', module: 'litert'
exclude group: 'com.google.ai.edge.litert', module: 'litert-metadata'
}
implementation ("com.jumio.android:liveness:4.14.0") {
exclude group: 'com.google.ai.edge.litert', module: 'litert'
}
implementation 'com.google.ai.edge.litert:litert:1.4.0'
implementation 'com.google.ai.edge.litert:litert-support:1.4.0'
Public API Changes
- Unused
JumioFallbackReason.NO_DETECTIONhas been removed. IMAGE_ANALYSIShas been added toJumioScanUpdate- Property
SCANNING_ERRORhas been added toJumioFallbackReason. - The data parameter of
JumioScanStep.ADDON_SCAN_PARTnow containsJumioDocumentInfo. JumioDocumentInfocontains the issuing country and theJumioDocumentTypeof the initially scanned document .- Function
getHelpAnimation()has been deprecated inJumioScanPart.
Android Manifest Changes
The following optional permission can be declared in the AndroidManifest.xml file, in order to improve fraud prevention:
<uses-permission android:name="android.permission.HIGH_SAMPLING_RATE_SENSORS" />
New SDK Localizations Added
The following keys have been added:
jumio_id_scan_hint_error_fallbackjumio_eidas_descriptionjumio_eidas_login_headerjumio_button_continuejumio_switched_to_back_camerajumio_switched_to_front_camerajumio_search_completed_for_countryjumio_search_barjumio_no_results_foundjumio_clear_searchjumio_current_issuing_countryjumio_buttonjumio_accessibility_camera_switch_to_backjumio_accessibility_camera_switch_to_frontjumio_selectjumio_change_issuing_countryjumio_current_issuing_countryjumio_accessibility_scan_back
The following keys have been removed:
jumio_nfc_retry_error_generaliproov__prompt_pitch_too_highiproov__prompt_pitch_too_lowiproov__prompt_roll_too_highiproov__prompt_roll_too_lowiproov__prompt_yaw_too_highiproov__prompt_yaw_too_low
Dependency Updates
| Name | Jumio Module | Dependency | old version | new version |
|---|---|---|---|---|
| Concurrent | core | "androidx.concurrent:concurrent-futures" | ADDED | 1.2.0 |
| CameraX Core | camerax | "androidx.camera:camera-core" | 1.4.1 | 1.4.2 |
| CameraX Lifecycle | camerax | "androidx.camera:camera-lifecycle" | 1.4.1 | 1.4.2 |
| CameraX View | camerax | "androidx.camera:camera-view" | 1.4.1 | 1.4.2 |
4.13.0
Public API Changes
- The data parameter of
JumioScanStep.ADDON_SCAN_PARTnow containsJumioDocumentInfo JumioDocumentInfocontains the issuing country and theJumioDocumentTypeof the initially scanned document- Function
getHelpAnimation()has been deprecated inJumioScanPart
New SDK Localizations Added
The following keys have been added:
jumio_nfc_id_retry_tag_lostjumio_nfc_id_descriptionjumio_nfc_id_header_start
Dependency Updates
| Name | Jumio Module | Dependency | old version | new version |
|---|---|---|---|---|
| Gradle Wrapper | all | 8.7 | 8.9 | |
| Android Gradle Plugin | all | "com.android.library" | 8.6.1 | 8.7.3 |
| Kotlin Plugin | all | "org.jetbrains.kotlin.android" | 2.0.0 | 2.1.0 |
| Kotlin Stdlib | all | "org.jetbrains.kotlin:kotlin-stdlib-jdk8" | 2.0.0 | 2.1.0 |
| Annotation | core | "androidx.annotation:annotation-jvm" | 1.8.2 | 1.9.1 |
| Navigation UI | core | "androidx.navigation:navigation-ui-ktx" | 2.8.1 | 2.8.5 |
| Navigation Fragment | core | "androidx.navigation:navigation-fragment-ktx" | 2.8.1 | 2.8.5 |
| Constraint Layout | core, defaultui | "androidx.constraintlayout:constraintlayout" | 2.1.4 | 2.2.0 |
| CameraX Core | camerax | "androidx.camera:camera-core" | 1.3.4 | 1.4.1 |
| CameraX Lifecycle | camerax | "androidx.camera:camera-lifecycle" | 1.3.4 | 1.4.1 |
| CameraX View | camerax | "androidx.camera:camera-view" | 1.3.4 | 1.4.1 |
| AndroidX Core KTX | docfinder | "androidx.core:core-ktx" | 1.13.1 | 1.15.0 |
| CameraX Camera2 | camerax | "androidx.camera:camera-camera2" | 1.3.4 | 1.4.1 |
| Lifecycle Viewmodel | defaultui | "androidx.lifecycle:lifecycle-viewmodel-ktx" | 2.8.6 | 2.8.7 |
| Lifecycle Savedstate | defaultui | "androidx.lifecycle:lifecycle-viewmodel-savedstate" | 2.8.6 | 2.8.7 |
| Lifecycle Livedata | defaultui | "androidx.lifecycle:lifecycle-livedata-ktx" | 2.8.6 | 2.8.7 |
| Datadog | datadog | "com.jumio.android:datadog" | 4.12.1 | REMOVED |
Dependency Management
- Bill of Material (BOM) support for simplified dependency management and versioning has been added.
dependencies {
implementation platform("com.jumio.android:bom:4.13.0")
implementation "com.jumio.android:core"
implementation "com.jumio.android:barcode-mlkit"
implementation "com.jumio.android:camerax"
implementation "com.jumio.android:defaultui"
implementation "com.jumio.android:digital-identity"
implementation "com.jumio.android:docfinder"
implementation "com.jumio.android:iproov"
implementation "com.jumio.android:liveness"
implementation "com.jumio.android:nfc"
}
Customization Changes
- Custom NFC parent theme has been renamed from
toNfc.CustomizationJumio.Nfc.Customization - The following customization color attributes have been renamed:
to<item name="nfc_passport_cover"><item name="jumio_nfc_passport_cover">to<item name="nfc_passport_page_dark"><item name="jumio_nfc_passport_page_dark">to<item name="nfc_passport_page_light"><item name="jumio_nfc_passport_page_light">to<item name="nfc_passport_foreground"><item name="jumio_nfc_passport_foreground">to<item name="nfc_phone_background"><item name="jumio_nfc_phone_background">
4.12.1
No backward incompatible changes
4.12.0
This version adds support for Android 15 and 16KB page size for native libraries.
Public API Changes
- Property
LINEFINDERwas unused and has been removed fromJumioScanMode - Property
JUMIO_PREMIUMhas been added toJumioScanMode - Optional parameter
urlhas been added toJumioDigitalDocument INVALID_CERTIFICATEhas been added toJumioRejectReason- Function
detach()has been added toJumioScanView
Dependency Updates
- Tensorflow Lite dependencies have been updated to LiteRT - see https://developers.googleblog.com/en/tensorflow-lite-is-now-litert/ for more infos.
| Name | Jumio Module | Dependency | old version | new version |
|---|---|---|---|---|
| Android Gradle Plugin | all | "com.android.library" | 8.2.2 | 8.6.1 |
| Kotlin Plugin | all | "org.jetbrains.kotlin.android" | 1.9.24 | 2.0.0 |
| Kotlin Stdlib | all | "org.jetbrains.kotlin:kotlin-stdlib-jdk8" | 1.9.24 | 2.0.0 |
| Annotation | core | "androidx.annotation:annotation-jvm" | 1.8.0 | 1.8.2 |
| Navigation UI | core | "androidx.navigation:navigation-ui-ktx" | 2.7.7 | 2.8.1 |
| Navigation Fragment | core | "androidx.navigation:navigation-fragment-ktx" | 2.7.7 | 2.8.1 |
| LibYUV | core | "io.github.crow-misia.libyuv:libyuv-android" | 0.34.0 | 0.36.0 |
| CameraX Core | camerax | "androidx.camera:camera-core" | 1.3.3 | 1.3.4 |
| CameraX Lifecycle | camerax | "androidx.camera:camera-lifecycle" | 1.3.3 | 1.3.4 |
| CameraX View | camerax | "androidx.camera:camera-view" | 1.3.3 | 1.3.4 |
| CameraX Camera2 | camerax | "androidx.camera:camera-camera2" | 1.3.3 | 1.3.4 |
| Lifecycle Viewmodel | defaultui | "androidx.lifecycle:lifecycle-viewmodel-ktx" | 2.8.1 | 2.8.6 |
| Lifecycle Savedstate | defaultui | "androidx.lifecycle:lifecycle-viewmodel-savedstate" | 2.8.1 | 2.8.6 |
| Lifecycle Livedata | defaultui | "androidx.lifecycle:lifecycle-livedata-ktx" | 2.8.1 | 2.8.6 |
| Tensorflow Lite | docfinder, liveness | "org.tensorflow:tensorflow-lite" | 2.16.1 | REMOVED |
| LiteRT | docfinder, liveness | "com.google.ai.edge.litert:litert" | ADDED | 1.0.1 |
| Tensorflow Lite Metadata | docfinder | "org.tensorflow:tensorflow-lite-metadata" | 0.4.4 | REMOVED |
| LiteRT Metadata | docfinder | "com.google.ai.edge.litert:litert-metadata" | ADDED | 1.0.1 |
| IProov | iproov | "com.iproov.sdk:iproov" | 9.1.1 | 9.1.2 |
| JMRTD | nfc | "org.jmrtd:jmrtd" | 0.7.41 | 0.7.42 |
| Scube | nfc | "net.sf.scuba:scuba-sc-android" | 0.0.25 | 0.0.26 |
| BouncyCastle | nfc | "org.bouncycastle:bcprov-jdk18on" | 1.77 | 1.78.1 |
| MLKit Barcode | barcode-mlkit | "com.google.android.gms:play-services-mlkit-barcode-scanning" | 18.3.0 | 18.3.1 |
Packaging Options
Multiple third party android libraries include the same meta files which will result in duplicates files during the build. Please see the FAQ section for that.
SDK Localizations Changes
New strings
| new |
|---|
jumio_liveness_prompt_keep_centered |
jumio_liveness_prompt_keep_still |
jumio_liveness_prompt_keep_upright |
jumio_liveness_prompt_tilt_down |
jumio_liveness_prompt_tilt_left |
jumio_liveness_prompt_tilt_right |
jumio_liveness_prompt_tilt_up |
jumio_liveness_scanning_completed |
Renamed strings
| old | new |
|---|---|
jumio_liveness_prompt_success_another_shot | jumio_liveness_prompt_success_another_scan |
jumio_liveness_prompt_too_close | jumio_liveness_prompt_move_away |
jumio_error_case_ocr_failed | jumio_error_case_scanning_not_possible |
4.11.0
Public API Changes
TILThas been added toJumioScanUpdatealongside withJumioTiltStateNEXT_POSITIONhas been added toJumioScanUpdateIMAGE_TAKENJumioScanStepis again sent only when the side/part is completed. If you have logic based onNEXT_PARTorPROCESSING, it is not affected by this change.- 'UNSUPPORTED_DOCUMENT' has been added to
JumioRejectReason
Dependency Updates
| Name | Jumio Module | Dependency | old version | new version |
|---|---|---|---|---|
| Annotation | core | "androidx.annotation:annotation-jvm" | 1.7.1 | 1.8.0 |
| Appcompat | core | "androidx.appcompat:appcompat" | 1.6.1 | 1.7.0 |
| Material | core | "com.google.android.material:material" | 1.11.0 | 1.12.0 |
| Coroutines | core | "org.jetbrains.kotlinx:kotlinx-coroutines-android" | 1.8.0 | 1.8.1 |
| LibYUV | core | "io.github.crow-misia.libyuv:libyuv-android" | 0.33.0 | 0.34.0 |
| CameraX Core | camerax | "androidx.camera:camera-core" | 1.3.1 | 1.3.3 |
| CameraX Lifecycle | camerax | "androidx.camera:camera-lifecycle" | 1.3.1 | 1.3.3 |
| CameraX View | camerax | "androidx.camera:camera-view" | 1.3.1 | 1.3.3 |
| CameraX Camera2 | camerax | "androidx.camera:camera-camera2" | 1.3.1 | 1.3.3 |
| Lifecycle Viewmodel | defaultui | "androidx.lifecycle:lifecycle-viewmodel-ktx" | 2.7.0 | 2.8.1 |
| Lifecycle Savedstate | defaultui | "androidx.lifecycle:lifecycle-viewmodel-savedstate" | 2.7.0 | 2.8.1 |
| Lifecycle Livedata | defaultui | "androidx.lifecycle:lifecycle-livedata-ktx" | 2.7.0 | 2.8.1 |
| IProov | iproov | "com.iproov.sdk:iproov" | 9.0.4 | 9.1.1 |
Customization Changes
jumio_divider_colorhas been added to customize the color of list dividers- See also: Jumio sample
styles.xml
New SDK Localizations Added
The following keys have been added:
jumio_id_scan_guide_photo_side_tiltjumio_id_scan_prompt_tilt_lessjumio_id_scan_prompt_tilt_more
4.10.0
Public API Changes
IMAGE_TAKENJumioScanStepis now sent for each image required for a specified side. This is different to previous behavior whereIMAGE_TAKENwas sent only when the side/part was completed. Please make sure to align any logic based onIMAGE_TAKENto the new behavior.NEXT_PARTorPROCESSINGmight be used to identify when a side/part has been finished.FLASHhas been added toJumioScanUpdate
New SDK Localizations Added
SDK Translations for the languages Serbian (Cyrillic) and Serbian (Latin) have been added.
Dependency Updates
- Tensorflow lite update:
is replaced by"org.tensorflow:tensorflow-lite:2.10.0""org.tensorflow:tensorflow-lite:2.16.1". "com.jumio.android:camerax"is added as a transitive dependency to"com.jumio.android:liveness"
4.9.1
No backward incompatible changes
4.9.0
Compile SDK Version Changes
- ⚠️ The minimum required compile SDK version for SDK
4.9.0is34. - With these changes also Gradle 8 is required to build your application successfully. The Android Gradle plugin Upgrade Assistant can be helpful conducting the upgrade.
- Troubleshooting:
- In case you are experiencing some errors when trying to build your release application, make sure to replace all occurrences of
tasks.whenTaskAddedwithtasks.configureEach
- In case you are experiencing some errors when trying to build your release application, make sure to replace all occurrences of
Public API Changes
- Function
getHelpAnimation()has been deprecated for all face help animation instances inJumioScanPart - Property
partshas been added toJumioPhysicalDocument - Property
idSubTypehas been added toJumioIDResult - Removed retry code
USER_BACKfromJumioRetryReasonGeneric. - Added
JumioRetryReasonFaceto represent new retry codes for face scanning:- GENERIC = 3001
- TOO_MUCH_MOVEMENT = 3002
- LIGHTING_TOO_BRIGHT = 3003
- LIGHTING_TOO_DARK = 3004
- EYES_CLOSED = 3005
- OBSCURED_FACE = 3006
- MULTIPLE_FACES = 3007
- SUNGLASSES = 3008
- Class
JumioDataCredentialhas been removed - Property
DEVICE_RISKhas been removed fromJumioScanMode - Property
DEVICE_RISKhas been removed fromJumioCredentialPart
Dependency Updates
- Removed Devicerisk dependency:
implementation "com.jumio.android:devicerisk:4.8.1" - IProov update:
is replaced by"com.iproov.sdk:iproov:8.3.1""com.iproov.sdk:iproov:9.0.3". Please note that this update also includes a major UI/UX upgrade.
Customization Changes
-
The following customization color attributes have been added:
<item name="jumio_face_primary"><item name="jumio_face_secondary"><item name="jumio_face_outline"><item name="jumio_face_success"><item name="jumio_image_border"><item name="jumio_bubble_outline_selected">
-
Customization attribute
has been removed<item name="jumio_face_animation_customization">
4.8.2
Dependency Updates
- IProov update:
is replaced by"com.iproov.sdk:iproov:8.3.1""com.iproov.sdk:iproov:8.5.2"
4.8.1
No backward incompatible changes
4.8.0
No backward incompatible changes
4.7.2
Dependency Updates
- IProov update:
is replaced by"com.iproov.sdk:iproov:8.3.1""com.iproov.sdk:iproov:8.5.2"
4.7.1
No backward incompatible changes
4.7.0
Public API Changes
rawBarcodeDatahas been removed fromJumioIDResultLEGAL_HINThas been removed fromJumioScanUpdategiveDataDogConsenthas been removed fromJumioSDK
Dependency Updates
- Removed MRZ dependency:
implementation "com.jumio.android:mrz:4.6.0" - Removed Linefinder dependency:
implementation "com.jumio.android:linefinder:4.6.0" - Removed Barcode dependency:
implementation "com.jumio.android:barcode:4.6.0" - Datadog update:
is replaced by"com.datadoghq:dd-sdk-android:1.19.3""com.datadoghq:dd-sdk-android-rum:2.0.0"- If Datadog is used in a dynamic feature module please have a look at this known issue.
Custom UI Changes
- The platform check has been moved from the
JumioSDKconstructor to theJumioControllerconstructor. In case the platform is not supported there will be a non-retryable F000001JumioErrordelivered inJumioControllerInterface$onErrorinstead of aPlatformNotSupportedExceptionbeing thrown. Please also make sure to checkisSupportedPlatformbefore using the SDK.
Localization Changes
- SDK string translations for Brazilian Portuguese (pt-rBR) have been added
Customization Changes
- Customization attribute
has been removed<item name="jumio_face_animation_background">
Documentation Changes
- Functions
persistandstopinJumioControllerneed to be called independently fromisCompleteas long as the workflow is not yet finished or canceled.
4.6.2
Dependency Updates
- IProov update:
is replaced by"com.iproov.sdk:iproov:8.3.1""com.iproov.sdk:iproov:8.5.2"
4.6.1
No backward incompatible changes
4.6.0
Public API Changes
JUMIO_LIVENESShas been added toJumioScanModeMOVE_FACE_CLOSERhas been added toJumioScanUpdateFACE_TOO_CLOSEhas been added toJumioScanUpdate
Customization Changes
-
A new customization theme
<item name="jumio_face_animation_customization">@style/CustomFaceHelp</item>has been added to help customize the newly added Jumio Liveness solution. This style includes the following attributes:<item name="jumio_face_animation_foreground"><item name="jumio_face_animation_background">
-
The following customization attributes have been added to
@style/CustomOverlaytheme:<item name="jumio_scanOverlay"><item name="jumio_scanOverlay_livenessStrokeAnimation"><item name="jumio_scanOverlay_livenessStrokeAnimationCompleted>
-
The following customization attributes have been removed from
@style/CustomIproovtheme:<item name="iproov_animation_foreground"><item name="iproov_animation_background">
-
See also: Jumio sample
styles.xml
Dependency Updates
- NEW Liveness dependency:
implementation "com.jumio.android:liveness:4.6.0"
4.5.2
Dependency Updates
- IProov update:
is replaced by"com.iproov.sdk:iproov:8.3.1""com.iproov.sdk:iproov:8.5.2"
4.5.1
No backward incompatible changes
4.5.0
Public API Changes
-
has been removed from JumioScanPartonPause -
JumioError.codeformat updated from[A][x][yyyy]to[A][xx][yyyy] -
Property
countriesofJumioIDCredentialhas been deprecated. Instead the following new property and functions have been added: -
JumioDeepLinkHandlerhas been added -
JumioPhysicalDocumentandJumioDigitalDocumenthave been added -
JumioDocumenttype has changed to interface. (OriginalJumioDocumentclass has been replaced byJumioPhysicalDocument) -
DIGITALhas been added inJumioCredentialPart -
DIGITAL_IDENTITY_VIEWandTHIRD_PARTY_VERIFICATIONhave been added inJumioScanStep -
JumioRetryReasonDigitalIdentityhas been added -
JumioConsentItemclass andJumioConsentTypeenum have been added -
onInitialized()callback has been changed fromtoonInitialized(credentials: List<JumioCredentialInfo>, policyUrl: String?)onInitialized(credentials: List<JumioCredentialInfo>, consentItems: List<JumioConsentItems>?)- Please refer to the Consent Handling section in our integration guide for more details.
Localization Keys
The following keys have been added to strings.xml:
- jumio_idtype_di
- jumio_di_vendor_selection_title
- jumio_di_retry_unknown
- jumio_di_retry_third_party_verification_error
- jumio_di_retry_service_error
- jumio_di_retry_expired
- jumio_di_back_to_document_selection
Dependency Updates
- IProov update:
is replaced by"com.iproov.sdk:iproov:8.0.3""com.iproov.sdk:iproov:8.3.1"
4.4.2
No backward incompatible changes
4.4.1
No backward incompatible changes
4.4.0
Public API Changes
credentialPartsproperty ofJumioCredentialclass has been changed fromArrayList<JumioCredentialPart>toList<JumioCredentialPart>JumioConfirmationHandlerhas been added. Attach a JumioScanPart to this class to retrieve all accepted images and render them toJumioConfirmationViewobjects for confirmation.JumioRejectHandlerhas been added. Attach a JumioScanPart to this class to retrieve all rejected images and render them toJumioRejectViewobjects for retaking.- Functions in
JumioConfirmationViewhave been moved toJumioConfirmationHandler. - Functions in
JumioRejectViewhave been moved toJumioRejectHandler MULTIPARThas been added inJumioCredentialPartas a new Autocapture scan part: Instead of having a single scan part for all parts of a document (front, back), there is now a singleMULTIPARTscan part that combines the two. Within this scan part all needed parts of a document are captured at once.NEXT_PARThas been added inJumioScanStep: This scan step shows that the previous part has been captured and the next one can be started (e.g. frontside has been captured, now switch to the backside of the document)
Customization Updates
- Attributes changed and added to
Iproov.Customizationtheme
Dependency Updates
- IProov update:
is replaced by"com.iproov.sdk:iproov:7.5.0""com.iproov.sdk:iproov:8.0.3"
4.3.1
No backward incompatible changes
4.3.0
Minimum SDK Version Changes
- minSdkVersion has been increased to 21. The SDK can still be integrated in Apps that support lower minSdkVersions - check if the platform is supported before initializing the JumioSDK, otherwise it will throw a PlatformNotSupportedException.
Dependency Updates
- IProov update:
is replaced by"com.iproov.sdk:iproov:7.2.0""com.iproov.sdk:iproov:7.5.0"
Public API Changes
- Document Verification is now supported. Please check the Integration Guide for more information.
from packageJumioCameraPositioncom.jumio.sdk.enumsincom.jumio.sdk:coreis replaced byJumioCameraFacingJumioAcquireModehas been added to packagecom.jumio.sdk.enumsincom.jumio.sdk:core, containing fieldsFILEandCAMERAJumioDataCredentialclass has been added for handling of Device FingerprintingJumioDocumentCredentialclass has been added for Document Verification handling
4.2.1
No backward incompatible changes
4.2.0
Public API Changes
- In JumioControllerInterface the signature of function
onInitializedhas been changed. Parametercredentialshas been changed fromArrayList<JumioCredentialInfo>toList<JumioCredentialInfo> - In JumioResult field
credentialInfoshas been changed fromArrayList<JumioCredentialInfo>?toList<JumioCredentialInfo>? JumioScanSidefrom packagecom.jumio.sdk.enumsincom.jumio.sdk:corehas been renamed to JumioCredentialPart
Dependency Updates
- NEW Autocapture dependency (Beta):
implementation "com.jumio.android:docfinder:4.2.0"
Customization Updates
- Boolean
iproov_floating_prompt_enabledhas been added toIproov.Customizationtheme - Color attribute ~
iproov_footerTextColorhas been replaced withiproov_promptTextColorinIproov.Customizationtheme
Deprecation Notice
⚠️ SDK 4.2.0 will be the last SDK version supporting Android 4.4 (API level 19). All subsequent SDK versions will require at least Android 5.0 "Lollipop" (API level 21).
4.1.1
No backward incompatible changes
4.1.0
Dependency Updates
-
NEW Datadog dependency (optional):
implementation "com.jumio.android:datadog:4.1.0" -
IProov update:
is replace by"com.iproov.sdk:iproov:7.0.3""com.iproov.sdk:iproov:7.2.0"
Customization Updates
- Dark mode is now available. DefaultUI will switch automatically if system settings of the user device change.
- Dark mode can also be customized by creating a custom theme, utilizing
values-nightin the resources directory.
Instant Feedback Reject Reasons
Added Instant Feedback functionality to give more granular user feedback with new reject reasons:
- BLACK_WHITE_COPY
- COLOR_PHOTOCOPY
- DIGITAL_COPY
- NOT_READABLE
- NO_DOC
- MISSING_BACK
- MISSING_FRONT
- BLURRY
- MISSING_PART_DOC
- DAMAGED_DOCUMENT
- HIDDEN_PART_DOC
- GLARE
4.0.0
Authentication
ℹ️ As of version 4.0.0 and onward, the SDK can only be used in combination with Jumio KYX or Jumio API v3. API v2 as well as using API token and secret to authenticate against the SDK will no longer be compatible.
Dependency Updates
-
The repository declaration for
is replaced withjcenter()mavenCentral()as JFrog will be shutting down JCenter -
Additionally to that, the repository declaration
gradlePluginPortal()was added to mitigate the gradle build plugin dependency not being migrated tomavenCentral()yet. -
All AndroidX dependencies are now declared in the
.pomfiles and resolved transitively by Gradle. The following AndroidX dependencies are used in the SDK, but do not have to be declared manually in thebuild.gradleanymore:"androidx.appcompat:appcompat:1.3.0""com.google.android.material:material:1.4.0""androidx.constraintlayout:constraintlayout:2.1.1""androidx.lifecycle:lifecycle-livedata-ktx:2.3.1""androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1""androidx.lifecycle:lifecycle-viewmodel-savedstate:2.3.1""androidx.lifecycle:lifecycle-extensions:2.2.0""androidx.recyclerview:recyclerview:1.2.1""androidx.fragment:fragment-ktx:1.3.6""androidx.navigation:navigation-ui-ktx:2.3.5"
-
The Jumio liveness dependency
"com.iproov.sdk:iproov:7.0.3"is referenced as a transitive dependency within the iProov module and does not have to be added manually to thebuild.gradleanymore. -
kotlin-parcelizeandkotlinx-serializationplugins, as well as the following dependencies have been removed:org.jetbrains.kotlinx:kotlinx-serialization-core:1.0.0org.jetbrains.kotlinx:kotlinx-serialization-json:1.0.0
Initialization Updates
andapiTokenare replaced by one-timeapiSecretsdk.token
Default UI Updates
As of SDK version 4.0.0, a lot of SDK parameters that previously could be set in the actual code are now contained within and provided by the sdk.token. These parameters have to be configured beforehand, during the API call that requests the token.
Please refer to the Configuration section of our integration guides for a detailed description of all Default UI changes and updates.
Information about which user journey (ID Verification, Selfie Verification, Authentication, ...) the SDK is going to provide now also has to be specified during the API call that request the sdk.token.
For more details on individual Jumio workflows, please refer to Workflow Descriptions in our guides.
Custom UI Updates
As of SDK version 4.0.0, Custom UI workflow has been completely restructured.
Please refer to the Custom UI section of our integration guides for a detailed description of all Custom UI changes and updates.
3.9.5
No backward incompatible changes
3.9.4
- IProov update:
is replaced by"com.iproov.sdk:iproov:6.4.1""com.iproov.sdk:iproov:6.4.3".
3.9.3
No backward incompatible changes
3.9.2
Dependency Changes
- IProov update:
is replaced by"com.iproov.sdk:iproov:6.3.1""com.iproov.sdk:iproov:6.4.1". This version improves conversion and offers additional customization options.
Customization Updates
- Added additional customization attributes to the IProov theme
Iproov.Customization:iproov_headerTextColoriproov_headerBackgroundColoriproov_footerTextColoriproov_footerBackgroundColoriproov_livenessScanningTintColoriproov_progressBarColor
3.9.1
Dependency Changes
- IProov update:
is replaced by"com.iproov.sdk:iproov:6.3.0""com.iproov.sdk:iproov:6.3.1". This version fixes cross-dependency problems with okhttp 4.x
Customization Updates
- Added attribute
iproov_backgroundColorto the IProov themeIproov.Customizationto allow customization of the IProov background color during scanning.
3.9.0
Dependency Changes
-
IProov update:
is replaced by "com.iproov.sdk:iproov:6.3.0""com.iproov.sdk:iproov:6.1.0" -
Room update:
is replaced by "androidx.room:room-runtime:2.2.6""androidx.room:room-runtime:2.2.5" -
AndroidX Kotlin Extension update:
is replaced by"androidx.core:core-ktx:1.3.1""androidx.core:core-ktx:1.3.2" -
JMRTD update:
is replaced by"org.jmrtd:jmrtd:0.7.19""org.jmrtd:jmrtd:0.7.24" -
Bouncycastle update:
is replaced by"org.bouncycastle:bcprov-jdk15on:1.65""org.bouncycastle:bcprov-jdk15on:1.67" -
REMOVE LocalBroadcastManager
"androidx.localbroadcastmanager:localbroadcastmanager:1.0.0" -
REPLACE
withapply plugin: 'kotlin-android-extensionsapply plugin: kotlin-parcelize. The extensions plugin has been deprecated by Google. The parcelize functionality has been extracted to a separate plugin.
Public API Changes
-
setEnableEMRTD(boolean enable)has been removed from NetverifySDK -
recreate(Activity rootActivity)has been added to NetverifySDK - this needs to be called in case the hosting activity that was passed increateis recreated.
Custom UI Changes
-
NetverifyCustomSDKInterface$onNetverifyFinishedall parameters were replaced with a Bundle. The keys are defined as constants in theNetverifySDK.EXTRA_SCAN_REFERENCE: -
NetverifyCustomSDKInterface$onNetverifyErroradded an optional parameteraccountId -
New methods for handling host activity lifecycle changes have been added:
-
recreate(Activity activity, NetverifyCustomSDKInterface netverifyCustomSDKInterface)has been added to NetverifyCustomSDKController - this needs to be called in case the hosting activity is recreated. -
recreate(NetverifyCustomScanView scanView, NetverifyCustomConfirmationView confirmationView, NetverifyCustomScanInterface netverifyCustomScanInterface)has been added to NetverifyCustomScanPresenter - this needs to be called in case the hosting activity is recreated.
-
-
The initialization and start of scan presenters has been split. This allows displaying a help view with the help animation prior to starting the scan presenter:
-
startScanForPart(ScanSide scanSide, NetverifyCustomScanView scanView, NetverifyCustomConfirmationView confirmationView, NetverifyCustomScanInterface scanViewInterfacehas been replaced withinitScanForPart(ScanSide scanSide, NetverifyCustomScanView scanView, NetverifyCustomConfirmationView confirmationView, NetverifyCustomScanInterface scanViewInterface) -
The following method was added to
NetverifyCustomScanPresenterto trigger scanning start after the initialization. This method needs to be called on theNetverifyCustomScanPresenterafter it was initialized withinitScanForPart(..).
-
/**
* Starts a scan after a scan presenter has been initialized
*/
void startScan();
-
Make sure to display the
NetverifyCustomScanViewonly AFTER callingstartScan()as done in our Sample, to ensure that the scan presenter is fully initialized and the camera callbackonNetverifyCameraAvailable()will be fired. -
is replaced withNetverifyScanMode.FACE-
NetverifyScanMode.FACE_MANUALfor manual face scanning -
NetverifyScanMode.FACE_IPROOVfor face scanning with IProov -
NetverifyScanMode.FACE_ZOOMfor face scanning with Facetec ZoOm
-
Jetifier adaptions
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
3.8.0
Dependency Changes
-
NEW AndroidX Kotlin Extension:
"androidx.core:core-ktx:1.3.1" -
NEW Kotlin dependency:
"org.jetbrains.kotlinx:kotlinx-serialization-core:1.0.0" -
NEW Kotlin dependency:
"org.jetbrains.kotlinx:kotlinx-serialization-json:1.0.0" -
NEW Kotlin plugin:
"apply plugin: 'kotlinx-serialization" -
NEW classpath definition:
"classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version" -
REPLACE Jumio Face:
with either:"com.jumio.android:face""com.jumio.android:iproov:3.8.0@aar"andimplementation ("com.iproov.sdk:iproov:6.1.0"){ exclude group: 'org.json', module:'json' }or"com.jumio.android:zoom:3.8.0@aar"and"com.facetec:zoom-authentication:8.12.1@aar"
-
AndroidX ConstraintLayout update:
is replaced by"androidx.constraintlayout:constraintlayout:2.0.1""androidx.constraintlayout:constraintlayout:2.0.4" -
AndroidX Appcompat update:
is replaced by"androidx.appcompat:appcompat:1.1.0""androidx.appcompat:appcompat:1.2.0" -
Google Play Services update:
is replaced by"com.google.android.gms:play-services-vision:19.0.0""com.google.android.gms:play-services-vision:20.1.2" -
Google Material Library update:
is replaced by"com.google.android.material:material:1.1.0""com.google.android.material:material:1.2.1"
Custom UI Changes
-
NetverifyCustomSDKController$setDocumentConfigurationdoes not return a List with all required ScanSides anymore - they are now available as a parameter ofNetverifyCustomSDKInterface$onNetverifyResourcesLoaded -
Method
onNetverifyPrepareScanning()added toNetverifyCustomScanInterface- indicates that the SDK is now loading information
Proguard Changes
Added the line -keep public class com.iproov.sdk.IProov {public *; } to consumer Proguard rules.
Strings and Style Changes
Several additions and changes, mostly in regards to the new liveness flow.
-
Button style:
is replaced by<item name="netverify_confirmationPositiveStyle"> @style/Custom.Netverify.Confirmation.MaterialButton </item><item name="materialButtonStyle">@style/Custom.Netverify.Confirmation.MaterialButton</item> -
Button style:
is replaced by<item name="netverify_confirmationNegativeStyle"> @style/Custom.Netverify.Confirmation.MaterialButton.Outlined</item><item name="materialButtonOutlinedStyle">@style/Custom.Netverify.Confirmation.MaterialButton.Outlined</item> -
NEW IProov attribute:
<item name="iproov_customization">@style/CustomIproov</item> -
NEW IProov theme:
<style name="CustomIproov" parent="Iproov.Customization"> -
For changes in
String.xmlfile changes please refer to the sample project.
3.7.3
Custom UI changes
- The countryList parameter in NetverifyCustomSDKInterface$onNetverifyCountriesReceived has been changed from
HashMaptoMap
ZoOm Customization Changes
- All the attributes starting with
face_have been removed - For a full guide please head over to the FAQ
Error Code Change
Error code N (Access token for different product / Parts of access token are missing) has been added. Read more detailed information on this in chapter Error codes
3.7.2
No backward incompatible changes
3.7.1
No backward incompatible changes
3.7.0
Dependency Changes
- Zoom update:
"com.facetec:zoom-authentication:8.0.11@aar"is replaced by "com.facetec:zoom-authentication:8.12.1@aar" - Room updated:
"androidx.room:room-runtime:2.2.3"is replaced by "androidx.room:room-runtime:2.2.5" - JMRTD updated:
"org.jmrtd:jmrtd:0.7.18"is replaced by "org.jmrtd:jmrtd:0.7.19" - Bouncycastle updated:
"org.bouncycastle:bcprov-jdk15on:1.64"is replaced by "org.bouncycastle:bcprov-jdk15on:1.65"
API Changes
-
getEMRTDStatus()has been removed from NetverifyDocumentData -
New attributes for customization of the NFC help animation have been added to our
styles.xml:netverify_nfc_passport_cover- Outside passport cover colornetverify_nfc_passport_page_dark- Color of the last page inside the passport after openingnetverify_nfc_passport_page_light- Color of the flipped pages during openingnetverify_nfc_passport_foreground- Foreground color for the passport text and the phone screennetverify_nfc_phone_background- Frame color for the phone that is positioned on the passport
-
Attribute
netverify_nfc_dialog_themehas been removed and is not required any more -
The position of the Jumio branding logo and privacy link changed to from bottom-right to center-top for all portrait scan views. In Custom UI, the top margin for this element can be adjusted using the following method
setBrandingLogoTopMargin(int topMargin)
Customization Updates
- Android Zoom screens update.
Localizable Strings
Several additions and changes in regards to the Android Zoom screens update.
Added strings:
netverify_nfc_description_xxxstringszoom_action_xxxstringszoom_instructions_xxxstringszoom_result_xxxstringszoom_retry_xxxstrings
Removed strings:
netverify_nfc_bac_dialog_xxxstringsnetverify_nfc_description_xxxstrings
3.6.2
The Proguard keep rule -keep class com.jumio.** { *; } has to be added to your Proguard rules, if it wasn't added yet.
Details can be found in chapter Proguard
3.6.1
No backward incompatible changes
3.6.0
Dependency Changes
AndroidX Material design library has been updated to version 1.1.0
"com.google.android.material:material:1.0.0"is replaced by "com.google.android.material:material:1.1.0"
Local broadcast manager dependency has been added mandatory due to the design library update where it was separated by Google
- implementation "androidx.localbroadcastmanager:localbroadcastmanager:1.0.0"
JMRTD is now added as a gradle dependency - if you use NFC scanning please make sure to add the new dependencies:
- implementation "org.jmrtd:jmrtd:0.7.18"
- implementation "org.ejbca.cvc:cert-cvc:1.4.6"
3.5.0
Error Code Change
- Error code D (Wrong API credentials used, retry impossible) has been removed.
Proguard Change
- Consumer proguard rules have been added. All Jumio SDK proguard rules will now be applied automatically to the application when the Jumio Core library is included.
3.4.1
API Changes in NetverifyCustomScanInterface
- A new callback onNetverifyUserConsentRequired was added to NetverifyCustomScanInterface
API Changes in NetverifyCustomSDKController
- A new method onUserConsented was added to NetverifyCustomSDKController
3.4.0
Customization Updates
- The SDK now uses Material buttons instead of the old snackbar button styles on the confirmation view.
- Please check out the confirmation screens and the XML output in the Surface Tool for all adapted content. Changes:
- New style attribute confirmationIcon for customizing the info and warning icon on the confirmation screen.
- New confirmation button style Netverify.Confirmation.MaterialButton for the positive button.
- New confirmation button style Netverify.Confirmation.MaterialButton.Outlined for the negative button.
Dependency Changes
- Constraint layout dependency androidx.constraintlayout:constraintlayout:1.1.3 or higher is now mandatory
- The following plugins are now required in the build.gradle of your application:
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
- Dependency name and version change - com.facetec:zoom-authentication-hybrid:7.0.14 is replaced by com.facetec:zoom-authentication:8.0.11@aar
androidx.appcompat:appcompat:1.0.2is replaced by androidx.appcompat:appcompat:1.1.0androidx.room:room-runtime:2.0.0is replaced by androidx.room:room-runtime:2.2.1
Custom UI Callbacks
onNetverifyDisplayFlipDocumentHinthas been removed- A new parameter NetverifyConfirmationType was added to NetverifyCustomScanInterface$onNetverifyPresentConfirmationView
Proguard Changes
-dontwarn com.facetec.zoom.sdk.** needs to be added
3.3.2
No backward incompatible changes
3.3.1
No backward incompatible changes
3.3.0
Deallocation Callback
Added a new method checkDeallocation in the NetverifySDK to check if the SDK resources have already been deallocated. The method requires a NetverifyDeallocationCallback instance as a parameter and calls onNetverifyDeallocated once the SDK is deallocated. The checkDeallocation method should only be called once the SDK has returned a result and another SDK instance is required.
Dependency Change
com.facetec:zoom-authentication-hybrid:7.0.12is replaced by com.facetec:zoom-authentication-hybrid:7.0.14
Date Changes
All dates are now UTC based. This affects the dates in NetverifyDocumentData and NetverifyCustomNfcAccess
New SDK Localizations Added
SDK Translations for the languages Italian and Portuguese have been added.
3.2.1
Fixed a Face Scanning Problem in Which a Black Screen Was Shown to the User
3.2.0
Dependency Change
androidx.appcompat:appcompat:1.0.0is replaced by androidx.appcompat:appcompat:1.0.2com.facetec:zoom-authentication-hybrid:7.0.9is replaced by com.facetec:zoom-authentication-hybrid:7.0.12
API Changes in NetverifyCustomScanInterface
A new parameter NetverifyCancelReason was added to NetverifyCustomScanInterface$onNetverifyScanForPartCanceled
Watchlist Screening
Two new methods for handling watchlist screening have been added. Please refer to the Netverify guide
netverifySDK.setWatchlistScreening(NVWatchlistScreening.ENABLED);
netverifySDK.setWatchlistSearchProfile("YOURPROFILENAME");
Additional Functions in NetverifyCustomScanInterface
For the new NFC scanning functionality in custom ui, there has been some additions in NetverifyCustomScanInterface:
getNetverifyCustomNfcInterface() should return an instance of NetverifyCustomNfcInterface or Null
onNetverifyStartNfcExtraction(NetverifyCustomNfcPresenter) is called when the NFC scanning can be started. The NFC scanning is controlled with the provided instance of NetverifyCustomNfcPresenter
Customization
The following customization attribute have been added: netverify_scanOverlayFill
New Fastfill Offline Token Required
Due to a license model update in our Barcode implementation, it's necessary to regenerate the offline token when updating to version 3.2.0
Close Button cCustomization in Custom UI
The position and image of the close button for face scanning can now be customized. Please have a look at the NetverifyCustomScanView
Custom UI Help Animation Support
NetverifyCustomScanPresenter$getHelpAnimation has been added to get the specific help animation in case the scan part is canceled. An instance of NetverifyCustomAnimationView needs to be passed where the animation is rendered in.
3.1.0
Dependency Changes
com.madgag.spongycastle:prov:1.58.0.0is replaced by org.bouncycastle:bcprov-jdk15on:1.61- Proguard rules containing org.spongycastle have been replaced with org.bouncycastle
com.facetec:zoom-authentication-hybrid:7.0.5is replaced by com.facetec:zoom-authentication-hybrid:7.0.9
3.0.0
Renamed Dependency NV-Face to Face
The dependency com.jumio.android:nv-face was renamed to com.jumio.android:face, reflecting the internal restructuring of the dependencies that was necessary for adding the new product Authentication
Renamed Public API Methods and Parameters
The following methods and the related parameters have been renamed to ensure consistency across all platforms
setRequireFaceMatch(..)->setEnableIdentityVerification(..)setRequireVerification(..)->setEnableVerification(..)setMerchantReportingCriteria(..)->setReportingCriteria(..)setMerchantIdScanReference(..)->setCustomerInternalReference(..)setCustomerId(..)->setUserReference(..)
Additional Property in NetverifyCustomScanView
setMode(..) must be called before the view is used. Possible values: NetverifyCustomScanView.MODE_ID or NetverifyCustomScanView.MODE_FACE
2.15.0
Added Room
Dependencies that have been added to the SDK:
- androidx.room:room-runtime:2.0.0
Added 3D Liveness
Dependency Changes
- com.jumio.android:nv-face:2.15.0@aar
- com.facetec:zoom-authentication-hybrid:7.0.2@aar
com.jumio.android:nv-liveness:2.14.0@aarThe old liveness module is not supported anymore
The Facetec Maven repository also needs to be added: maven { url 'http://maven.facetec.com' }
Localization
Please have a look at the strings-jumio-sdk.xml for all the new added strings prefixed with zoom_.
The following strings have been removed: netverify_scanview_liveness_follow_hint, netverify_scanview_liveness_move_closer, netverify_scanview_liveness_move_back, netverify_scanview_liveness_description, netverify_helpview_full_description_liveness_glasses, netverify_helpview_full_description_liveness_cap and netverify_helpview_full_description_liveness_light.
Customization
The following customization attributes have been added: netverify_scanOverlayFaceBackground, netverify_scanOverlayFaceFeedbackText, netverify_scanOverlayFaceFeedbackBackground, netverify_scanOverlayFaceProgress, netverify_scanOverlayFaceOval
The following customization attributes have been removed: netverify_scanOverlayLivenessValid, netverify_scanOverlayLivenessInvalid, netverify_scanOverlayLivenessBackground, netverify_scanOverlayLivenessText
Proguard
The following lines need to be added in your proguard-rules.pro file for 3D Liveness:
-keep class com.facetec.zoom.** { *; }
-dontwarn javax.annotation.Nullable
2.14.0
Migrate to AndroidX
The support library was migrated to AndroidX. As the developer page outlines, this is a mandatory step since all new Support Library development and maintenance will occur in the AndroidX library. This migration guide shows you how to migrate your application to AndroidX.
Check out the changed dependencies in the dependencies section or in the build.gradle of the sample application.
The mapping for all support libraries is listed in section "Artifact mappings" here
Dependencies that changed in the SDK:
- com.android.support:appcompat-v7:27.1.1 -> androidx.appcompat:appcompat:1.0.0
- com.android.support:cardview-v7:27.1.1 -> androidx.cardview:cardview:1.0.0
- com.android.support:design:27.1.1 -> com.google.android.material:material:1.0.0
- com.android.support:support-v4:27.1.1 -> androidx.legacy:legacy-support-v4:1.0.0 (was merged by AndroidX and can be therefore be fully removed)
Default Settings
The default values for requireVerification and requireFaceMatch were changed to true. Please make sure that they are explicitly set to false in case a scan in Fastfill mode should be performed.
2.13.0
API Change in NetverifyDocumentData
The function getMiddleName() has been removed. If a middle name is available, it will be contained with the first name.
Removed Deprecated ABIs mips, mips64 and armeabi
These ABIs were deprecated in recent NDK toolsets as mentioned here - https://developer.android.com/ndk/guides/abis and are not used any more.
2.12.1
Fixed a Problem in Which the User Could Get Stuck in the Selfie Capturing Process
2.12.0
Fallback for Google Vision Not Operational Added
A fallback to manual image picker will now be used if Google Vision is not operational due to problems on the device. This guarantees the face workflow to be finished despite problems with the availablility of the Google Play services.
The method netverifySDK.isMobileVisionOperational remains in the SDK but doesn't need to be checked now necessarily.
New SDK Localizations Added
In addition to English, the translations for the languages Chinese (Simplified), Dutch, French, German and Spanish have been added.
Remove Unused Strings for Localization
Along with the additional languages, we removed some Strings that were unused in the SDK. The following keys have been removed: netverify_confirmation_snackbar_help_default, netverify_accessibility_select_your_country, netverify_accessibility_action_double_click, netverify_accessibility_select_your_country, netverify_scan_options_country_title, netverify_overlay_liveness_advice and netverify_scan_options_preselected_hint.
Additional Information Method Removed
SDK method netverifySDK.setAdditionalInformation has been removed.
New Callback in NetverifyCustomScanInterface
onNetverifyDisplayBlurHint() was added for custom scan view.
2.11.0
New Error Scheme
The schema for errorCode changed and it's type is now String instead of Integer.
Read more detailed information on this in chapter Error codes
2.10.1
No backward incompatible changes.
2.10.0
- SDK updated to Android plugin for gradle 3.0 - https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html
- Minimum API level was raised from Android 4.1 (API level 16) to Android 4.4 (API level 19)
2.9.0
Changes in SDK Code
- New cardview dependency was added
com.android.support:cardview-v7:26.1.0for the screen redesign. This dependency is mandatory for Netverify - Multidex is now mandatory, follow the steps Android Developers guide https://developer.android.com/studio/build/multidex.html#mdex-gradle to enable it if necessary in your app.
- Additional Proguard rules for the updated Barcode Scanner have to be added:
-keep class com.microblink.** { *; }
-keep class com.microblink.**$* { *; }
-dontwarn com.microblink.**
- SDK method for checking the Google Mobile Vision API operationality was added (see method documentation in NetverifyFragment in the Sample app))
GoogleVisionStatus NetverifySDK.isMobileVisionOperational(Activity activity, int requestCode);
Changes in Localizable Strings
Multiple additions and changes in regards to the new selection screen.
Changes in Customization
Additions and changes in regards to the new selection screen (see XML output in Surface Tool).
Attributes added for replacing the previous selection screen: netverify_scanOptionsItemHeaderBackground, netverify_scanOptionsItemForeground and netverify_scanOptionsItemBackground.
2.8.0
- Dependency
com.jumio.android:nv-liveness:2.8.0@aaris mandatory now.
2.7.0
- New Dependency
com.jumio.android:nv-liveness:2.7.0@aarwas added for face-liveness functionality. - Dependency
com.google.android.gms:play-services-visionis now mandatory required because of added functionality. - Change SDK method
setEnableEpassport(boolean)tosetEnableEMRTD(boolean)because of to the support for NFC ID documents. - If the dependencies
com.jumio.android:nv-livenessandcom.jumio.android:nv-barcode-visionare both used in the application, the following lines have to be added to the application tag in the AndroidManifest.xml to avoid merge issues.
<meta-data
android:name="com.google.android.gms.vision.DEPENDENCIES"
android:value="barcode, face"
tools:replace="android:value"/>
- Additional Proguard rules for the Samsung Camera SDK have to be added:
-keep class com.samsung.** { *; }
-keep class com.samsung.**$* { *; }
-dontwarn com.samsung.**
2.6.1
No backward incompatible changes.
2.6.0
Changes in SDK API
- Removed SDK method
setShowHelpBeforeScan(boolean)because the collapsed help view is now constantly visible during scanning. - Add NetverifySDK method
isRooted(Context)for device root-check before starting the SDK
Changes in Localizable Strings
Multiple additions and changes in regards to the new guidance / help screen.
Changes in Customization
Additions and changes in regards to the new guidance / help screen.
2.5.0
No backward incompatible changes.
2.4.0
Remove okHttp
The build.gradle was adapted to support standard UrlConnection for replacing okHttp
Changes in Customization
Override the theme that is used for Netverify in the manifest by calling netverifySDK.setCustomTheme(CUSTOMTHEMEID). Use the resource id of a customized theme that uses Theme.Netverify as parent.
Additions and changes for customization options for the launch of the surface tool.
Provide Possibility to Avoid Loading Spinner After SDK Start
Use the following method to initialize the SDK before displaying it
netverifySDK.initiate(new NetverifyInitiateCallback() {
@Override
public void onNetverifyInitiateSuccess() {
}
@Override
public void onNetverifyInitiateError(int errorCode, int errorDetail, String errorMessage, boolean retryPossible) {
}
});
Removed Name Match Feature
Name matching by comparing a provided name with the extracted name from a document was removed. The method setName("FIRSTNAME LASTNAME") in the NetverifySDK was removed.
2.3.0
Changes in Customization
Additions for the customization options to support the configuration of all scan overlays.
Copyright
© Jumio Corp. 395 Page Mill Road, Palo Alto, CA 94306