Skip to content

Commit

Permalink
Release commit for 3.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
JumioMobileTeam committed Apr 18, 2019
1 parent 31ae493 commit cad38bf
Show file tree
Hide file tree
Showing 48 changed files with 1,208 additions and 978 deletions.
15 changes: 6 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,20 +5,17 @@
- [Basic Setup](#basic-setup)
- [Get started](#get-started)
- [Support](#support)
- [FAQ](docs/integration_faq.md)

# Release notes
SDK version: 3.0.0
SDK version: 3.1.0

#### Changes
* Initial release of the [Jumio Authentication](https://www.jumio.com/authentication/) SDK [Authentication]
* Optimized 3D liveness handling to increase user conversion [Netverify]
* Added customUI support for 3D Liveness and Authentication [Netverify, Authentication]
* Improved MRZ reading accuracy [Netverify/Fastfill]
* Improved scanning experience for most European Driving licenses [Netverify/Fastfill]
* Renamed some public methods [Netverify/Fastfill, Document Verification]
* Optimized 3D liveness handling to reduce number of false rejects [Netverify]
* Improved reading of ePassports [Netverify]

#### Fixes
* Various smaller bug fixes/improvements [Netverify/Fastfill, Document Verification, BAM Checkout]
* Various smaller bug fixes/improvements [Netverify/Fastfill, Authentication, Document Verification, BAM Checkout]

# Basic Setup

Expand Down Expand Up @@ -123,7 +120,7 @@ Our SDK supports accessibility features. Visually impaired users can now enable
# Support

## Previous version
The previous release version 2.15.0 of the Jumio Mobile SDK is supported until 2019-06-05.
The previous release version 3.0.0 of the Jumio Mobile SDK is supported until 2019-07-18.

In case the support period is expired, no bug fixes are provided anymore (typically fixed in the upcoming versions). The SDK will keep functioning (until further notice).

Expand Down
Binary file modified docs/images/authentication.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/bam_checkout.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/document_verification.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/images/netverify.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
12 changes: 6 additions & 6 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
For technical changes, please read our [transition guide](transition-guide_authentication.md) SDK version: 3.0.0
For technical changes, please read our [transition guide](transition-guide_authentication.md) SDK version: 3.1.0

## Setup
The [basic setup](../README.md#basic-setup) is required before continuing with the following setup for Authentication.
Expand All @@ -39,14 +39,14 @@ The [Sample app](https://github.com/Jumio/mobile-sdk-android/blob/master/sample/

|Dependency | Mandatory | Description | Size (Jumio libs only) |
| ---------------------------- |:-------------:|:-----------------|:---------:|
|com.jumio.android:core:3.0.0@aar | x | Jumio Core library | 4.53 MB |
|com.jumio.android:auth:3.0.0@aar | x | Authentication library | 81.54 KB |
|com.jumio.android:face:3.0.0@aar | x | Face library | 83.22 KB |
|com.facetec:zoom-authentication-hybrid:7.0.5@aar | x | Zoom face scanning library | 11.5 MB |
|com.jumio.android:core:3.1.0@aar | x | Jumio Core library | 4.64 MB |
|com.jumio.android:auth:3.1.0@aar | x | Authentication library | 82.59 KB |
|com.jumio.android:face:3.1.0@aar | x | Face library | 83.58 KB |
|com.facetec:zoom-authentication-hybrid:7.0.9@aar | x | Zoom face scanning library | 12.1 MB |
|androidx.appcompat:appcompat:1.0.0 | x | Android appcompat library | - |
|androidx.room:room-runtime:2.0.0 | x | Android database object mapping library | - |
|com.google.android.material:material:1.0.0 | | Android material design library | - |
|com.jumio.android:javadoc:3.0.0 | | Jumio SDK Javadoc | - |
|com.jumio.android:javadoc:3.1.0 | | Jumio SDK Javadoc | - |

### Others

Expand Down
8 changes: 4 additions & 4 deletions docs/integration_bam-checkout.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,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
For technical changes, please read our [transition guide](transition-guide_bam-checkout.md) SDK version: 3.0.0
For technical changes, please read our [transition guide](transition-guide_bam-checkout.md) SDK version: 3.1.0

## Setup
The [basic setup](../README.md#basic-setup) is required before continuing with the following setup for Bam-Checkout.
Expand All @@ -42,11 +42,11 @@ If you want to use offline scanning for BAM Checkout (Credit card scanning), ple

|Dependency | Mandatory | Description | Size (Jumio libs only) |
| :---------------------------- |:-------------:|:-----------------|:------------:|
|com.jumio.android:core:3.0.0@aar | x | Jumio Core library| 4.53 MB |
|com.jumio.android:bam:3.0.0@aar | x | BAM Checkout library | 2.03 MB |
|com.jumio.android:core:3.1.0@aar | x | Jumio Core library| 4.64 MB |
|com.jumio.android:bam:3.1.0@aar | x | BAM Checkout library | 2.02 MB |
|androidx.appcompat:appcompat:1.0.0 | x | Android appcompat library| - |
|androidx.room:room-runtime:2.0.0 | x | Android database object mapping library | - |
|com.jumio.android:javadoc:3.0.0 | | Jumio SDK Javadoc| - |
|com.jumio.android:javadoc:3.1.0 | | Jumio SDK Javadoc| - |

If an optional module is not linked, the scan method is not available but the library size is reduced.

Expand Down
8 changes: 4 additions & 4 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
For technical changes, please read our [transition guide](transition-guide_document_verification.md) SDK version: 3.0.0
For technical changes, please read our [transition guide](transition-guide_document_verification.md) SDK version: 3.1.0

## Setup
The [basic setup](../README.md#basic-setup) is required before continuing with the following setup for DocumentVerification.
Expand All @@ -39,11 +39,11 @@ You can specify your own theme (see [Customization](#customizing-look-and-feel)

| Dependency | Mandatory | Description | Size (Jumio libs only) |
| ----------------- |:-------------------:|:------------------|:-------------------:|
| com.jumio.android:core:3.0.0@aar | x | Jumio Core library | 4.53 MB |
| com.jumio.android:dv:3.0.0@aar | x | Document Verification library | 115.74 |
| com.jumio.android:core:3.1.0@aar | x | Jumio Core library | 4.64 MB |
| com.jumio.android:dv:3.1.0@aar | x | Document Verification library | 115.54 |
| androidx.appcompat:appcompat:1.0.0 | x | Android appcompat library | - |
|androidx.room:room-runtime:2.0.0 | x | Android database object mapping library | - |
| com.jumio.android:javadoc:3.0.0 | | Jumio SDK Javadoc | - |
| com.jumio.android:javadoc:3.1.0 | | Jumio SDK Javadoc | - |

If an optional module is not linked, the scan method is not available but the library size is reduced.

Expand Down
83 changes: 83 additions & 0 deletions docs/integration_faq.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
![FAQ](images/jumio_feature_graphic.png)

# FAQ

## Table of Content
- [Reducing the size of your app](#reducing-the-size-of-your-app)
- [Strip unused modules](#strip-unused-modules)
- [App bundles](#app-bundles)
- [Architectures - ABI filters & Splitting](#arch)

### Reducing the size of your app
The Netverify SDK contains a wide range of different scanning methods. The SDK is able to capture identity documents and extract information on the device using enhanced machine learning and computer vision technologies.
The current download size of the sample application containing all products is 27 MB as mentioned in the [Netverify guide](integration_netverify-fastfill.md).
If you want to reduce the size of the SDK within your application, there are several ways that are explained in the following chapters.

#### Strip unused modules
Depending on the functionality you require, you may want to strip out unused functionality. This can be done adapting your jumio dependencies in your build.gradle. The following table shows a range of different product configurations with the size and modules that are linked for it. The measurements are based on our sample application.

|Product Configuration | Size | Modules |
|:--------------------------|:------:|:----------|
|Full Netverify + Authentication | 25.1 MB | core, nv, nv-mrz, nv-ocr, nv-nfc, nv-barcode, auth, face |
|Netverify MRZ only with Face | 21.8 MB | core, nv, nv-mrz, face |
|Netverify MRZ only without Face | 9.4 MB | core, nv, nv-mrz |
|Netverify Barcode scanning without Face | 9.5 MB | core, nv, nv-barcode-vision |
|BAM Checkout | 8.7 MB | core, bam |
|Document verification | 7.1 MB | core, dv |


#### App bundles
Android offers a way to reduce the size of a customer's built application using [App bundles](https://developer.android.com/guide/app-bundle/)
Google Play’s new app serving model uses the *App bundle* to generate and serve optimized APKs for each user’s device configuration, so they download only the code and resources they need to run your app.

We implemented App bundles for our [Jumio Showcase application](https://play.google.com/store/apps/details?id=com.jumio.demo.netverify). It contains all products: Netverify, Authentication, BAM Checkout and Document Verification.
The app size was 28.9 MB when being distributed as a single apk file with all configurations. After implementing App bundles, the download size of the app was reduced significantly:

These are the results of different test devices:

|Device type | Version | Download size (Play Store) |
|:--------------|:-------------:|:--------------------------:|
|LG Leon | 5.0.1 | 16.56 MB |
|Galaxy S7 | 7.0 | 18.10 MB |
|Huawei P10 Lite| 7.0 | 18.74 MB |
|Nexus 6 | 5.1.1 | 16.66 MB |
|Galaxy S5 | 6.0.1 | 16.67 MB |
|Galaxy Tab S | 4.4.2 | 16.55 MB |
|Galaxy S8 | 7.0 | 18.15 MB |
|Pixel 3 XL | 9.0 | 19.77 MB |

#### <a name="arch"></a>Architectures - ABI filters & Splitting
The SDK supports *armeabi-v7a* and *arm64-v8a* architecture. The following table shows their sizes:

|Architecture | Size |
|:---------------|:---------:|
|Arm64-v8a | 10 MB |
|Armeabi-v7a | 8.5 MB |

You can filter which architecture to use by specifying the abiFilters.

That way, you could manually filter for *armeabi-v7a* as *arm64-v8a* is backwards compatible.
__Be aware:__ 64-bit support will be required from August 2019 as mentioned in the [Android developers blog](https://android-developers.googleblog.com/2017/12/improving-app-security-and-performance.html).

__Note:__ The abiFilters command in the ndk closure affects the Google Play Store filtering.

```
defaultConfig {
ndk {
abiFilters armeabi-v7a","arm64-v8a","x86","x86_64"
}
}
```

It's also possible to manually provide a splitted apk on Google Play.
The apk can be split based on the architecture if multiple apks should be uploaded to the Google Play Store. Google Play Store manages to deliver the appropriate apk for the device.
```
splits {
abi {
enable true
reset()
include armeabi-v7a","arm64-v8a","x86","x86_64"
universalApk false
}
}
```
32 changes: 16 additions & 16 deletions docs/integration_netverify-fastfill.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ Jumio’s Netverify® ID Verification allows businesses to establish the genuine
- [Javadoc](https://jumio.github.io/mobile-sdk-android/)

## Release notes
For technical changes, please read our [transition guide](transition-guide_netverify-fastfill.md) SDK version: 3.0.0
For technical changes, please read our [transition guide](transition-guide_netverify-fastfill.md) SDK version: 3.1.0

## Setup
The [basic setup](../README.md#basic-setup) is required before continuing with the following setup for Netverify.
Expand All @@ -40,13 +40,13 @@ If you are using eMRTD scanning, the following lines are needed in your `proguar
-keep class net.sf.scuba.smartcards.IsoDepCardService {*;}
-keep class org.jmrtd.** { *; }
-keep class net.sf.scuba.** {*;}
-keep class org.spongycastle.** {*;}
-keep class org.bouncycastle.** {*;}
-keep class org.ejbca.** {*;}
-dontwarn java.nio.**
-dontwarn org.codehaus.**
-dontwarn org.ejbca.**
-dontwarn org.spongycastle.**
-dontwarn org.bouncycastle.**
-dontwarn org.jmrtd.PassportService
-dontwarn net.sf.scuba.**
```
Expand All @@ -60,23 +60,23 @@ The [Sample app](https://github.com/Jumio/mobile-sdk-android/blob/master/sample/

|Dependency | Mandatory | Description | Size (Jumio libs only) |
| ---------------------------- |:-------------:|:-----------------|:---------:|
|com.jumio.android:core:3.0.0@aar | x | Jumio Core library | 4.53 MB |
|com.jumio.android:nv:3.0.0@aar | x | Netverify library | 484.79 KB |
|com.jumio.android:core:3.1.0@aar | x | Jumio Core library | 4.64 MB |
|com.jumio.android:nv:3.1.0@aar | x | Netverify library | 488.16 KB |
|androidx.appcompat:appcompat:1.0.0 | x | Android appcompat library | - |
|androidx.cardview:cardview:1.0.0 | x | Android cardview library (Netverify only) | - |
|androidx.room:room-runtime:2.0.0 | x | Android database object mapping library | - |
|com.google.android.gms:play-services-vision:15.0.1 | | Barcode Scanning | - |
|com.jumio.android:face:3.0.0@aar | | Face library | 83.08 KB |
|com.facetec:zoom-authentication-hybrid:7.0.5@aar | | Zoom face scanning library | 12.1 MB |
|com.jumio.android:face:3.1.0@aar | | Face library | 83.58 KB |
|com.facetec:zoom-authentication-hybrid:7.0.9@aar | | Zoom face scanning library | 12.1 MB |
|com.google.android.material:material:1.0.0 | | Android material design library | - |
|com.jumio.android:javadoc:3.0.0 | | Jumio SDK Javadoc | - |
|com.jumio.android:nv-barcode:3.0.0@aar | | US / CAN Barcode Scanning | 3.46 MB |
|com.jumio.android:nv-barcode-vision:3.0.0@aar | | US / CAN Barcode Scanning Alternative (reduced size) | 37.91 KB |
|com.jumio.android:nv-mrz:3.0.0@aar | | MRZ scanning | 2.24 MB |
|com.jumio.android:nv-nfc:3.0.0@aar | | eMRTD Scanning | 752.54 KB |
|com.madgag.spongycastle:prov:1.58.0.0 | | eMRTD Scanning | - |
|net.sf.scuba:scuba-sc-android:0.0.16 | | eMRTD Scanning | - |
|com.jumio.android:nv-ocr:3.0.0@aar | | Template Matcher | 1.57 MB |
|com.jumio.android:javadoc:3.1.0 | | Jumio SDK Javadoc | - |
|com.jumio.android:nv-barcode:3.1.0@aar | | US / CAN Barcode Scanning | 3.46 MB |
|com.jumio.android:nv-barcode-vision:3.1.0@aar | | US / CAN Barcode Scanning Alternative (reduced size) | 37.30 KB |
|com.jumio.android:nv-mrz:3.1.0@aar | | MRZ scanning | 2.24 MB |
|com.jumio.android:nv-nfc:3.1.0@aar | | eMRTD Scanning | 763.73 KB |
|org.bouncycastle:bcprov-jdk15on:1.61 | | eMRTD Scanning | - |
|net.sf.scuba:scuba-sc-android:0.0.18 | | eMRTD Scanning | - |
|com.jumio.android:nv-ocr:3.1.0@aar | | Template Matcher | 1.57 MB |

### Google Mobile Vision

Expand Down Expand Up @@ -115,7 +115,7 @@ In case of __DIALOG_PENDING__, the `requestCode` provided in the method above ca
If you use Netverify and BAM Checkout in your app, add the following dependency:

```
implementation "com.jumio.android:bam:3.0.0@aar"
implementation "com.jumio.android:bam:3.1.0@aar"
```

#### Root detection
Expand Down
4 changes: 4 additions & 0 deletions docs/transition-guide_authentication.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@

This section only covers the breaking technical changes that should be considered when updating from the previous version.

## 3.1.0
#### Dependency change
* ~~com.facetec:zoom-authentication-hybrid:7.0.5~~ is replaced by com.facetec:zoom-authentication-hybrid:7.0.9

## 3.0.0
Introduction of the Authentication product

Expand Down
7 changes: 7 additions & 0 deletions docs/transition-guide_bam-checkout.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@

This section only covers the breaking technical changes that should be considered when updating from the previous version.


## 3.1.0
No backward incompatible changes

## 3.0.0
No backward incompatible changes.

## 2.15.0
#### Added Room
Dependencies that have been added to the SDK:
Expand Down
3 changes: 3 additions & 0 deletions docs/transition-guide_document-verification.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@

This section only covers the breaking technical changes that should be considered when updating from the previous version.

## 3.1.0
No backward incompatible changes

# 3.0.0
#### Renamed public API methods and parameters
The following methods and the related parameters have been renamed to ensure consistency across all platforms
Expand Down
6 changes: 6 additions & 0 deletions docs/transition-guide_netverify-fastfill.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@

This section only covers the breaking technical changes that should be considered when updating from the previous version.

# 3.1.0
#### Dependency change
* ~~com.madgag.spongycastle:prov:1.58.0.0~~ is 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.5~~ is 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
Expand Down
7 changes: 7 additions & 0 deletions licenses/bouncycastle/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Copyright (c) 2000 - 2019 The Legion of the Bouncy Castle Inc. (https://www.bouncycastle.org)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

0 comments on commit cad38bf

Please sign in to comment.