Skip to content

Commit

Permalink
Release commit for 3.8.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Jenkins committed Dec 14, 2020
1 parent 42d180a commit 4b388e2
Show file tree
Hide file tree
Showing 80 changed files with 1,331 additions and 1,938 deletions.
63 changes: 30 additions & 33 deletions README.md

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,23 @@
# Change Log
All notable changes, such as SDK releases, updates and fixes, are documented in this file.

## SDK Version: __3.8.0__
![Changes](https://img.shields.io/badge/Change-blue) Added iProov as an additional liveness vendor to the [Jumio KYX platform](https://www.jumio.com/kyx/) [Identity Verification]

![Improvement](https://img.shields.io/badge/Improvement-green) Added better guidance for devices with cameras that use a fixed focal distance [ID Verification/Fastfill, Document Verification]

![Fixes](https://img.shields.io/badge/Fix-success) Fixed crashes that could occur in edge cases [ID-Verification, Identity-Verification]


## SDK Version: __3.7.3__
![Improvement](https://img.shields.io/badge/Improvement-green) New error code is returned in case an ad blocker or a firewall is detected [ID Verification/Fastfill, Authentication, Document Verification]

![Improvement](https://img.shields.io/badge/Improvement-green) Added additional 3D Liveness customization options [ID Verification, Authentication]

![Fixes](https://img.shields.io/badge/Fix-success) Fixed stroke color customization on negative action button [ID Verification/Fastfill, Authentication, Document Verification]

![Fixes](https://img.shields.io/badge/Fix-success) Fixed compatibility issues caused by Firebase Performance Plugin.

## SDK Version: __3.7.2__
![Fixes](https://img.shields.io/badge/Fix-success) Fixed a problem that face could not be captured anymore in certain cases [ID Verification Custom UI]

Expand Down
Binary file removed docs/images/capturing_methods/nfc_scanning_01.jpeg
Binary file not shown.
17 changes: 6 additions & 11 deletions docs/integration_authentication.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Biometric-based Jumio Authentication establishes the digital identities of your
- [Javadoc](https://jumio.github.io/mobile-sdk-android/)

## Release Notes
Please refer to our [Change Log](changelog.md) for more information. Current SDK version: 3.7.3
Please refer to our [Change Log](changelog.md) for more information. Current SDK version: 3.8.0

For breaking technical changes, please read our [transition guide](transition-guide_authentication.md)

Expand Down Expand Up @@ -43,20 +43,15 @@ Below there is a list of dependices the application will need to work in Android
```
dependencies {
// mandatory
implementation "com.jumio.android:core:3.7.3@aar" // Jumio Core library
implementation "com.jumio.android:auth:3.7.3@aar" // Authentication library
implementation "com.jumio.android:face:3.7.3@aar" // Face library
implementation "com.jumio.android:core:3.8.0@aar" // Jumio Core library
implementation "com.jumio.android:auth:3.8.0@aar" // Authentication library
implementation "com.jumio.android:zoom:3.8.0@aar" // Face library
implementation "com.facetec:zoom-authentication:8.0.11@aar" // // Zoom face scanning library
implementation "androidx.appcompat:appcompat:1.1.0"
implementation "androidx.appcompat:appcompat:1.2.0"
implementation "androidx.room:room-runtime:2.2.5"
implementation "androidx.localbroadcastmanager:localbroadcastmanager:1.0.0"
implementation "com.google.android.material:material:1.1.0"
// not mandatory
implementation "com.jumio.android:javadoc:3.7.3"
implementation "com.google.android.material:material:1.2.1"
}
```
__Note:__ Version numbers may vary.
Expand Down
13 changes: 5 additions & 8 deletions docs/integration_bam-checkout.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ BAM Checkout SDK is a powerful, cutting-edge solution to extract data from your
- [Javadoc](https://jumio.github.io/mobile-sdk-android/)

## Release Notes
Please refer to our [Change Log](changelog.md) for more information. Current SDK version: 3.7.3
Please refer to our [Change Log](changelog.md) for more information. Current SDK version: 3.8.0

For breaking technical changes, please read our [transition guide](transition-guide_bam-checkout.md)

Expand Down Expand Up @@ -43,16 +43,13 @@ Following is the list of dependicies the application will need for Android. Some
```
dependencies {
// mandatory
implementation "com.jumio.android:core:3.7.3@aar" // Jumio Core library
implementation "com.jumio.android:bam:3.7.3@aar" // BAM checkout library
implementation "com.jumio.android:core:3.8.0@aar" // Jumio Core library
implementation "com.jumio.android:bam:3.8.0@aar" // BAM checkout library
implementation "androidx.appcompat:appcompat:1.1.0"
implementation "androidx.appcompat:appcompat:1.2.0"
implementation "androidx.room:room-runtime:2.2.5"
implementation "androidx.localbroadcastmanager:localbroadcastmanager:1.0.0"
implementation "com.google.android.material:material:1.1.0"
// not mandatory
implementation "com.jumio.android:javadoc:3.7.3"
implementation "com.google.android.material:material:1.2.1"
}
```
__Note:__ If you use ID Verification together with BAM Checkout in your app, you must also add the [ID Verification dependencies](integration_id-verification-fastfill.md#dependencies).
Expand Down
14 changes: 5 additions & 9 deletions docs/integration_document-verification.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ Document Verification is a powerful solution to enable scanning various types (U
- [Javadoc](https://jumio.github.io/mobile-sdk-android/)

## Release Notes
Please refer to our [Change Log](changelog.md) for more information. Current SDK version: 3.7.3
Please refer to our [Change Log](changelog.md) for more information. Current SDK version: 3.8.0

For breaking technical changes, please read our [transition guide](transition-guide_document-verification.md)

Expand All @@ -41,18 +41,14 @@ Below there is a list of dependices the application will need to work in Android
```
dependencies {
// mandatory
implementation "com.jumio.android:core:3.7.3@aar" // Jumio core library
implementation "com.jumio.android:dv:3.7.3@aar" // Document verification library
implementation "com.jumio.android:core:3.8.0@aar" // Jumio core library
implementation "com.jumio.android:dv:3.8.0@aar" // Document verification library
implementation "androidx.appcompat:appcompat:1.1.0"
implementation "androidx.appcompat:appcompat:1.2.0"
implementation "androidx.localbroadcastmanager:localbroadcastmanager:1.0.0"
implementation "androidx.room:room-runtime:2.2.5"
implementation "com.google.android.material:material:1.1.0"
// not mandatory
implementation "com.jumio.android:javadoc:3.7.3"
implementation "com.google.android.material:material:1.2.1"
}
```
__Note:__ Version numbers may vary.
Expand Down
109 changes: 14 additions & 95 deletions docs/integration_faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
- [Jumio Authentication Workflow Integration](#jumio-authentication-workflow-integration)
- [Language Localization](#language-localization)
- [String Updates](#string-updates)
- [ZoOm Customization](#zoom-customization)
- [Overview of Scanning Methods](overview-of-scanning-methods)
- [Glossary of Commonly Used Abbreviations](#glossary)
- [Jumio Support](#jumio-support)

Expand Down Expand Up @@ -64,14 +64,16 @@ The following table shows a range of different product configurations with the s

|Product Configuration | Size | Modules |
|:--------------------------|:------:|:----------|
|ID Verification + Authentication | 12.7 MB | core, nv, nv-mrz, nv-ocr, nv-nfc, nv-barcode, auth, face, zoom-authentication |
|ID Verification w/o NFC | 11.7 MB | core, nv, nv-mrz, nv-ocr, nv-barcode, face, zoom-authentication |
|ID Verification w/o 3D liveness | 7.0 MB | core, nv, nv-mrz, nv-ocr, nv-nfc, nv-barcode |
|ID Verification w/o 3D liveness, Barcode | 5.9 MB | core, nv, nv-mrz, nv-ocr |
|ID Verification w/o 3D liveness, Barcode, OCR | 5.3 MB | core, nv, nv-mrz |
|ID Verification minimum | 2.3 MB | core, nv |
|BAM Checkout | 4.7 MB | core, bam |
|Document verification | 2.0 MB | core, dv |
|ID + Authentication (Zoom) | 12.73 MB | core, nv, nv-mrz, nv-ocr, nv-nfc, nv-barcode, auth, zoom, zoom-authentication |
|ID + Liveness (Zoom) | 11.71 MB | core, nv, nv-mrz, nv-ocr, nv-nfc, nv-barcode, zoom, zoom-authentication |
|ID + Liveness (Iproov) | 7.37 MB | core, nv, nv-mrz, nv-ocr, nv-nfc, nv-barcode, iproov |
|ID + Liveness (Iproov) w/o NFC | 5.86 MB | core, nv, nv-mrz, nv-ocr, nv-barcode, iproov |
|ID w/o Liveness | 7.01 MB | core, nv, nv-mrz, nv-ocr, nv-nfc, nv-barcode |
|ID w/o Liveness, Barcode | 5.92 MB | core, nv, nv-mrz, nv-ocr |
|ID w/o Liveness, Barcode, OCR | 5.39 MB | core, nv, nv-mrz |
|ID minimum | 2.23 MB | core, nv |
|BAM Checkout | 4.74 MB | core, bam |
|Document verification | 2.02 MB | core, dv |

__Note:__ The size values in the table above depict the decompressed install size required on a device and are comparable to the estimated Play Store files size. The size value might vary by a few percent, depending on the actual device used. All sizes are calculated based on a build of our sample application using arm64 architecture, english translations and xxhdpi screen resolution.

Expand Down Expand Up @@ -114,10 +116,10 @@ In case of a __successful result__ you can grant the user access to your service
* An imposter is trying to spoof the liveness check
* User does not want to show their face at all, but is still trying to complete the onboarding
* User does not look straight into the camera
* User does not finish the first or second step of Zoom
* User does not finish the first or second step of face scan
* User has bad lighting conditions (too dark, too bright, reflections on face, not enough contrast, …)
* User is covering (parts) of their face with a scarf, hat or something similar
* A different person is using Zoom in the second step than in the first one
* A different person is scanning their face in the second step than in the first one
* User is not able to align his face with the oval presented during scanning

In case an Authentication fail is returned, we recommend to allow the user between 3-5 Authentication attempts to prove their identity, before you lock the user from performing the action. This approach makes the most sense, as you don't want to lock out possible valid users who might not have completed the face capture task successfully for a legitimate reason. Don't worry about offering a potential fraudster more attempts to gain access to your system - our bullet proof liveness check does not allow them to get a successful result.
Expand All @@ -138,7 +140,7 @@ Our SDK supports accessibility features. Visually impaired users can now enable
### String Updates
For an overview of all updates and changes of SDK string keys please refer to [the revision history](https://github.com/Jumio/mobile-sdk-android/blame/master/sample/JumioMobileSample/src/main/res/values/strings.xml) on Github.

### Overview of Scanning Methods
## Overview of Scanning Methods

#### Linefinder:
Uses edge detection, fallback option in default UI.
Expand Down Expand Up @@ -170,89 +172,6 @@ Used for automatic scanning of some driver licenses.

![OCR Empty](images/capturing_methods/ocr_template_scanning_01.png) ![OCR Document](images/capturing_methods/ocr_template_scanning_02.png)

## ZoOm Customization
Starting with 3.8.0 we added a more granular customization for all the ZoOm screens in the SDK. It is possible to create a customization for normal light condition and for low light ones. The customization can also easily be done with our [Surface tool](https://jumio.github.io/surface-android/).

__Please notice__: If you decide to not use ZoOm and you do not link the face dependency, then you also need to remove the customizations. Otherwise build erros will occur due to missing attribute definitions.

### Overwrite Default Styles
The custom styles need to be generated with the default styles as parent
```
<style name="CustomZoom" parent="Zoom.Customization">
...
</style>
<style name="CustomZoomLowLight" parent="Zoom.Customization.Lowlight">
...
</style>
```

### Set the Customized Attributes
Both of these styles can include the same set of attributes
```
<item name="zoom_frameBackground">@color/jumio_black</item>
<item name="zoom_overlayBackground">@color/jumio_black</item>
<item name="zoom_scanOverlayFeedbackText">@color/jumio_white</item>
<item name="zoom_scanOverlayFeedbackBackground">@color/jumio_primary</item>
<item name="zoom_scanOverlayProgress">@color/jumio_primary</item>
<item name="zoom_scanOverlayOval">@color/jumio_white</item>
<item name="zoom_resultBackground">@color/jumio_black</item>
<item name="zoom_resultForeground">@color/jumio_primary</item>
<item name="zoom_resultActivityIndicator">@color/jumio_primary</item>
<item name="zoom_resultAnimationBackground">@color/jumio_white</item>
<item name="zoom_resultAnimationForeground">@color/jumio_primary</item>
<item name="zoom_uploadProgressTrack">@color/jumio_primary</item>
<item name="zoom_uploadProgressFill">@color/jumio_white</item>
<item name="zoom_guidanceBackground">@color/jumio_black</item>
<item name="zoom_guidanceForeground">@color/jumio_white</item>
<item name="zoom_guidanceButtonTextNormal">@color/jumio_white</item>
<item name="zoom_guidanceButtonTextHighlight">@color/jumio_white</item>
<item name="zoom_guidanceButtonTextDisabled">@color/jumio_white</item>
<item name="zoom_guidanceButtonBackgroundNormal">@color/jumio_primary</item>
<item name="zoom_guidanceButtonBackgroundHighlight">@color/jumio_primary_light</item>
<item name="zoom_guidanceButtonBackgroundDisabled">@color/jumio_grey500</item>
<item name="zoom_guidanceButtonBorder">@android:color/transparent</item>
<item name="zoom_guidanceReadyScreenOvalFill">@android:color/transparent</item>
<item name="zoom_guidanceRetryScreenOvalStroke">@color/jumio_white</item>
<item name="zoom_guidanceReadyScreenTextBackground">@color/jumio_black</item>
<item name="zoom_guidanceRetryScreenImageBorder">@color/jumio_primary</item>
<item name="zoom_close_button_resource">@drawable/zoom_close_white</item>
```
The SDK comes with two close button resources - zoom_close_white and zoom_close_black - please decide based on the zoom_overlayBackground color which one makes more sense. The low light style will ignore the values in zoom_frameBackground and zoom_overlayBackground and will always use white instead.

### Reference the New Styles
After that, the new styles can be referenced from the Netverify or Authentication style
```
<style name="CustomNetverifyTheme" parent="Theme.Netverify">
...
<item name="zoom_customization">@style/CustomZoom</item>
<item name="zoom_customization_lowlight">@style/CustomZoomLowLight</item>
...
</style>
<style name="CustomAuthenticationTheme" parent="Theme.Authentication">
...
<item name="zoom_customization">@style/CustomZoom</item>
<item name="zoom_customization_lowlight">@style/CustomZoomLowLight</item>
...
</style>
```

### Custom UI
If you integrate custom ui you can also adjust the position of the close button in your style
```
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
...
<item name="zoom_close_button_top">16dp</item>
<item name="zoom_close_button_left">16dp</item>
<item name="zoom_close_button_width">12dp</item>
<item name="zoom_close_button_height">12dp</item>
...
</style>
```

## Glossary
A [quick guide to commonly used abbreviations](integration_glossary.md) throughout the documentation which may not be all that familiar.

Expand Down
2 changes: 1 addition & 1 deletion docs/integration_glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,4 @@ Personal(ly) Identifiable Information: All of our products deal with highly sens
Passport

### 3D-Liveness
Liveness check via ZoOm: The 3D-liveness check makes sure that a face scan performed was not of a picture, but of an actual, living person who also matches the picture on the previously scanned document
Liveness check: The 3D-liveness check makes sure that a face scan performed was not of a picture, but of an actual, living person who also matches the picture on the previously scanned document

0 comments on commit 4b388e2

Please sign in to comment.