Skip to content

Commit

Permalink
Release commit for 4.7.2
Browse files Browse the repository at this point in the history
  • Loading branch information
JumioMobileTeam committed Mar 7, 2024
1 parent 1ca352e commit 16af12f
Show file tree
Hide file tree
Showing 101 changed files with 3,885 additions and 2,065 deletions.
58 changes: 28 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ The Jumio Software Development Kit (SDK) provides you with a set of tools and UI

Onboard new users and easily verify their digital identities by making sure the IDs they provide are valid and authentic. Extract data from ID documents completely automatically and within seconds. Confirm that users really are who they say they are by having them take a quick selfie and match it to their respective documents. Jumio uses cutting-edge biometric technology such as 3D face mapping to make sure there is an actual, real-life person in front of the screen.

![SDK Overview](docs/images/images_overview/images_overview.png)
![SDK Overview](docs/images/images_overview/overview_android_4.7.0.png)

Using the Jumio SDK will allow you to create the best possible solution for your individual needs, providing you with a range of different services to choose from.

Expand All @@ -61,10 +61,10 @@ If you need information on older SDK versions, please refer to:
- [3.9.0](https://github.com/Jumio/mobile-sdk-android/tree/v3.9.0)

## Code Documentation
Full API documentation for the Jumio iOS SDK can be found [here](https://jumio.github.io/mobile-sdk-ios/Jumio).
Full API documentation for the Jumio Android SDK can be found [here](https://jumio.github.io/mobile-sdk-android).

## FAQ
Link to Jumio iOS SDK FAQ can be found [here](docs/integration_faq.md).
Link to Jumio Android SDK FAQ can be found [here](docs/integration_faq.md).

## Known Issues
List of known issues can be found [here](docs/known_issues.md).
Expand All @@ -80,32 +80,30 @@ Once you’ve got the sample application downloaded and unzipped, open Android S

Android Studio will now start to import the project. This might take a bit of time. Make sure to wait until the Gradle Build has finished and the application is properly installed!

The Android sample application contains the package `com.jumio.sample.kotlin`, which consists of:
* `MainActivity`
* `customui`
* `CustomUIActivity`
* `CustomCountryAdapter`
* `CustomDocumentAdapter`
* `CustomVariantAdapter`
The Android sample application contains the package `com.jumio.sample`, which consists of:
* `MainActivity.kt`
* `customui/`
* `CustomUIActivity.kt`
* `adapter/`
* `CustomConsentAdapter.kt`
* `CustomCountryAdapter.kt`
* `CustomDocumentAdapter.kt`

Right at the top of the `CustomUiActivity` you’ll find a `companion object` with the following empty parameters:

`const val EXTRA_TOKEN="sdk_token"`
`const val EXTRA_DATACENTER="datacenter"`

If you haven't done so already, please refer to the [Authentication and Encryption section](#authentication-and-encryption) for more details on how to obtain your SDK token. Add your individual SDK token instead of the placeholder. The default setting for the data center is `JumioDataCenter.US`.
To use the Jumio Sample Application you need an SDK Token. If you haven't done so already, please refer to the [Authentication and Encryption section](#authentication-and-encryption) for more details on how to obtain your SDK token.
To add your individual SDK token to the application copy/paste it to the token input field once the application is started.

⚠️  __Note:__ We strongly recommend not storing any credentials inside your app! We suggest loading them during runtime from your server-side implementation.

Once you start up the sample application, you'll be given the option of trying out the Jumio SDK. Click the hamburger menu in the top left corner to choose a service. Your application will also need camera permissions, which will be prompted for automatically once you try to start any of the services. If you deny camera permissions, you won't be able to use any of the services.
Once you start up the sample application, you'll be given the option of trying out the Jumio SDK. The sample application needs camera permissions, which will be prompted for automatically once you try to start the SDK via one of the buttons. If you deny camera permissions, you won't be able to use the SDK.

-----

# Basics

## General Requirements
⚠️  __Android Deprecation Notice__
Please be aware that SDK 4.3.0 does not support Android 4.4 (API level 19) anymore.
Please be aware that the upcoming SDK 4.7.0 will be the last SDK version supporting Android 5.0 (API level 21).
All subsequent SDK versions will require at least Android 6.0 "Marshmallow" (API level 23).

The minimum requirements for the SDK are:
* Android 5.0 "Lollipop" (API level 21) or higher
Expand All @@ -123,9 +121,9 @@ You will need a __commercial Jumio License__ to run any of our examples. For det
## Authentication and Encryption
ℹ️  __As of version 4.0.0 and onward, the SDK can only be used in combination with Jumio KYX. API v2 as well as using API token and secret to authenticate against the SDK will no longer be compatible.__

Before starting a session in our SDK, an SDK token has to be obtained. Please refer to out [API Guide](https://jumio.github.io/kyx/integration-guide.html) for further details. To authenticate against the API calls, an OAuth2 access token needs to be retrieved from the Customer Portal.
Before starting a session in our SDK, an SDK token has to be obtained. Please refer to out [API Guide](https://docs.jumio.com/production/Content/Integration/Integration%20Guide.htm) for further details. To authenticate against the API calls, an OAuth2 access token needs to be retrieved from the Customer Portal.

Within the response of the [Account Creation](https://jumio.github.io/kyx/integration-guide.html#account-creation) or [Account Update](https://jumio.github.io/kyx/integration-guide.html#account-update) API, a SDK token is returned, which needs to be applied to initiate the mobile SDK.
Within the response of the [Account Creation or Account Update](https://docs.jumio.com/production/Content/Integration/Creating%20or%20Updatng%20Account/Creating%20or%20Updating%20Accounts.htm) API, a SDK token is returned, which needs to be applied to initiate the mobile SDK.

### Basic Authentication (Deprecated)
Previously, Basic Auth credentials were constructed using your API token as the User ID and your API secret as the password. You still can manage API token and secret in the Customer Portal under:
Expand All @@ -142,7 +140,7 @@ Client ID and Client secret are used to generate an OAuth2 access token. OAuth2
* EU: `https://auth.emea-1.jumio.ai/oauth2/token`
* SG: `https://auth.apac-1.jumio.ai/oauth2/token`

The [TLS Protocol](https://tools.ietf.org/html/rfc5246) is required to securely transmit your data, and we strongly recommend using the latest version. For information on cipher suites supported by Jumio during the TLS handshake see [supported cipher suites](https://github.com/Jumio/implementation-guides/blob/master/netverify/supported-cipher-suites.md).
The [TLS Protocol](https://tools.ietf.org/html/rfc5246) is required to securely transmit your data, and we strongly recommend using the latest version. For information on cipher suites supported by Jumio during the TLS handshake see [supported cipher suites](https://docs.jumio.com/production/Content/Integration/API%20Authorization/Supported%20Cipher%20Suites.htm?Highlight=cipher).

ℹ️  __Note:__ Calls with missing, incorrect or suspicious headers or parameter values will result in HTTP status code __400 Bad Request Error__ or __403 Forbidden__.

Expand Down Expand Up @@ -170,7 +168,7 @@ curl --request POST --location 'https://auth.amer-1.jumio.ai/oauth2/token' \
Your OAuth2 access token is valid for 60 minutes. After the token lifetime is expired, it is necessary to generate a new access token.

### Workflow Transaction Token Timeout
The token lifetime is set to 30 minutes per default. It can be configured via the [Jumio Customer Portal](https://github.com/Jumio/implementation-guides/blob/master/netverify/portal-settings.md) and can be overwritten using the API call (`tokenLifetime`). Within this token lifetime the token can be used to initialize the SDK.
The token lifetime is set to 30 minutes per default. It can be configured via the [Jumio Customer Portal](https://docs.jumio.com/production/Content/Settings/Identity%20Verification/Application%20Settings.htm) and can be overwritten using the API call (`tokenLifetime`). Within this token lifetime the token can be used to initialize the SDK.

As soon as the workflow (transaction) starts, a 15 minutes session timeout is triggered. For each action performed (capture image, upload image) the session timeout will reset, and the 15 minutes will start again.

Expand Down Expand Up @@ -231,10 +229,10 @@ The following Proguard Keep rules have to be added to the Jumio Mobile SDK:
The following Proguard Keep rules have to be added to the Jumio Mobile SDK if the corresponding dependencies have been added:

```text
#Microblink
-keep class com.microblink.** { *; }
-keep class com.microblink.**$* { *; }
-dontwarn com.microblink.**
#Tensorflow
-keep class org.tensorflow.** { *; }
-keep class org.tensorflow.**$* { *; }
-dontwarn org.tensorflow.**
#IProov
-keep public class com.iproov.sdk.IProov {public *; }
Expand All @@ -247,6 +245,10 @@ The following Proguard Keep rules have to be added to the Jumio Mobile SDK if th
-dontwarn okhttp3.**
-dontwarn okio.**
#Datadog
-keep class com.datadog.** { *; }
-keep class com.datadog.**$* { *; }
#JMRTD
-keep class org.jmrtd.** { *; }
-keep class net.sf.scuba.** {*;}
Expand Down Expand Up @@ -323,10 +325,6 @@ To benefit from Datadog, add the following dependency to your `build.gradle` fil
implementation "com.jumio.android:datadog:${SDK_VERSION}"
```

To grant or revoke user consent, please use `JumioSDK.giveDataDogConsent(boolean)` method.

⚠️  __Note:__ The use of the Datadog module is only possible if it is not already included in your application.

----

# Security
Expand Down
42 changes: 40 additions & 2 deletions docs/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,42 @@ All notable changes, such as SDK releases, updates and fixes, are documented in
For detailed technical changes please refer to our [Transition Guide](transition_guide.md).

## Support Period
Current SDK version: __4.5.2__
Current SDK version: __4.7.2__

Please refer to our [SDK maintenance and support policy](maintenance_policy.md) for more information about Mobile SDK maintenance and support.

## SDK Version: __4.7.2__
![Improvement] iProov SDK version update to 8.5.2 [Identity Verification]

## SDK Version: __4.7.1__
![Fixes](https://img.shields.io/badge/Fix-success) Removed Location handling to fix potential Google Play Store rejections

## SDK Version: __4.7.0__
![Improvement] Added support for [CameraX](https://developer.android.com/training/camerax)

![Improvement] Datadog SDK version update to 2.0: Added possibility to have a dedicated Jumio Datadog instance

![Improvement] Improved Jumio Liveness capturing experience [Identity Verification]

![Change] Updated Jumio Liveness module [Identity Verification]

![Change] Removed previous scanning functionalities, now all included in Autocatpure functionality [ID Verification]

![Change] Removed Microblink barcode scanning, switched to MLkit [ID Verification]

![Fix] Fixed Liveness customizaton bug [Identity Verification]

## SDK Version: __4.6.2__
![Improvement] iProov SDK version update to 8.5.2 [Identity Verification]

## SDK Version: __4.6.1__
![Fixes](https://img.shields.io/badge/Fix-success) Removed Location handling to fix potential Google Play Store rejections

## SDK Version: __4.6.0__
![Improvement] Added Jumio Liveness module to enhance the Liveness user experience and interface (Identity Verification)

![Improvement] Improved Liveness customization options (Identity Verification)

## SDK Version: __4.5.2__
![Improvement] iProov SDK version update to 8.5.2 [Identity Verification]

Expand All @@ -31,7 +63,13 @@ Please refer to our [SDK maintenance and support policy](maintenance_policy.md)

![Improvement] iProov SDK version update to 8.3.1 [Identity Verification]

![Improvement] Improved user consent handling in accordance with biometric data protection laws [ID Verification, Identity Verification]
![Improvement] Improved user consent handling [ID Verification, Identity Verification]
<details>
<summary>More details</summary>

### User consent
User consent is now acquired for all users to ensure the accordance with biometric data protection laws. Please also refer to the [User Consent section](integration_faq.md#user-consent) in our FAQ.
</details>

![Fix] Bug fixes: UI bugs, passport scanning issue for certain countries [ID Verification]

Expand Down
Binary file added docs/images/consent/consent_active_checked.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/consent/consent_active_unchecked.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/consent/consent_passive.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed docs/images/images_overview/confirm_screen.jpg
Binary file not shown.
Binary file removed docs/images/images_overview/images_overview.png
Binary file not shown.
Binary file removed docs/images/images_overview/intro_screen.jpg
Binary file not shown.
Binary file removed docs/images/images_overview/menu_screen.jpg
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 16af12f

Please sign in to comment.