Skip to content

Commit

Permalink
Final commit for 2.14.0
Browse files Browse the repository at this point in the history
  • Loading branch information
JumioMobileTeam committed Oct 16, 2018
1 parent 426257a commit 6e706f2
Show file tree
Hide file tree
Showing 58 changed files with 2,108 additions and 122 deletions.
30 changes: 14 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,32 +8,25 @@


# Release notes
SDK version: 2.13.0
SDK version: 2.14.0

#### Announcement
*This is the last version which supports iOS 9. With version 2.14.0 we are going to remove iOS 9 support, minimum version will be iOS 10*
__We highly recommend to update to the new SDK version as soon as possible as all previous versions are not fully compatible with the new iPhones (XS and XS Max)!__

#### Changes
* Major memory improvements which reduce the memory consumption and increase overall SDK stability [Netverify/Fastfill]
* Reduced SDK size by about 10% [Netverify/Fastfill]
* Added support for 5 new languages (Spanish, French, German, Chinese simple, Dutch) [Document Verification]
* Added method to detect jailbroken devices [Netverify/Fastfill, Document Verification, BAM Checkout]
* New code documentation for all public classes [Netverify/Fastfill, Document Verification, BAM Checkout]
* Added possibility to adjust the vertical alignment of the capture overlay [Netverify/Fastfill Custom UI]
* Deprecated middleName parameter - middle names will now be merged into the firstName field to be consistent with all other aquisition channels [Netverify/Fastfill]
* Updated BIN range list [BAM Checkout]
* Added full support for iOS 12 and new iPhones [Netverify/Fastfill, Document Verification, BAM Checkout]
* Changed default values to true for requireVerification, requireFaceMatch and enableExtraction [Netverify/Fastfill, Document Verification]
* Deprecated US social security card document type [Document Verification]
* Set minimum deployment target to iOS 10 [Netverify/Fastfill, Document Verification, BAM Checkout]

#### Fixes
* Fixed various crashes in Umoove framework [Netverify]
* Fixed a bug in the data parsing of some older Ohio Driving Licenses [Netverify/Fastfill]
* Fixed a network problem which could occur under rare circumstances [Document Verification]
* Fixed UI glitches which could lead to scanning problems on new iPhones XS and XS Max [Netverify/Fastfill, Document Verification, BAM Checkout]
* Various smaller bug fixes/improvements [Netverify/Fastfill, Document Verification, BAM Checkout]

# Basic Setup

## General Requirements
The minimum requirements for the SDK are:
- iOS 9.0 and higher
- iOS 10.0 and higher
- Internet connection

The following architectures are supported in the SDK:
Expand Down Expand Up @@ -138,7 +131,7 @@ Our SDK supports Accessibility. Visually impaired users can enable __VoiceOver__
# Support

## Previous version
The previous release version 2.12.0 of the Jumio Mobile SDK is supported until 2018-11-23.
The previous release version 2.13.0 of the Jumio Mobile SDK is supported until 2019-01-16.

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 All @@ -148,6 +141,11 @@ If you have any questions regarding our implementation guide please contact Jumi
## Two-factor Authentication
If you want to enable two-factor authentication for your Jumio merchant backend please contact us at https://support.jumio.com. Once enabled, users will be guided through the setup upon their first login to obtain a security code using the "Google Authenticator" app.

## Licenses
The software contains third-party open source software. For more information, please see [licenses](https://github.com/Jumio/mobile-sdk-ios/tree/master/licenses).

This software is based in part on the work of the Independent JPEG Group.

## Copyright
© Jumio Corp. 268 Lambert Avenue, Palo Alto, CA 94306

Expand Down
2 changes: 1 addition & 1 deletion docs/integration_bam-checkout.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ BAM Checkout is a powerful, cutting-edge solution to extract data from your cust
- [Delegation](#delegation)

## Transition guide
For technical changes, please read our [transition guide](transition-guide_bam-checkout.md) SDK version: 2.13.0.
For breaking technical changes, please read our [transition guide](transition-guide_bam-checkout.md) SDK version: 2.13.0.

## Setup
The [basic setup](../README.md#basic-setup) is required before continuing with the following setup for BAM Checkout.
Expand Down
9 changes: 4 additions & 5 deletions docs/integration_document-verification.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Document Verification is a powerful solution to enable scanning various types (U
- [Callback](#callback)

## Transition guide
For technical changes, please read our [transition guide](transition-guide_document-verification.md) SDK version: 2.13.0.
For breaking technical changes, please read our [transition guide](transition-guide_document-verification.md) SDK version: 2.13.0.

## Setup
The [basic setup](../README.md#basic-setup) is required before continuing with the following setup for Document Verification.
Expand Down Expand Up @@ -88,7 +88,6 @@ Possible types:
* TAC (Trade association card)
* SEL (School enrolment letter)
* PB (Phone bill)
* USSS (US social security card)
* SSC (Social security card)
* CUSTOM (Custom document type)

Expand Down Expand Up @@ -121,13 +120,13 @@ config.callbackUrl = @"YOURCALLBACKURL";

### Data Extraction

When data extraction should be used, set the following parameter that enables or disables extraction for each transaction. It is mandatory to be set to `true` if extraction is activated.
Data extraction is automatically enabled when it is activated for your account. Use the following setting to disable the extraction on a transaction level:

```
config.enableExtraction = true;
config.enableExtraction = false;
```

__Note:__ If you want to enable extraction for your account in general, please contact your Account Manager, or reach out to Jumio Support.
__Note:__ If you want to activate data extraction for your account in general, please contact your Account Manager, or reach out to Jumio Support.

### Miscellaneous
Use the following property to identify the scan in your reports (max. 100 characters) and set a customer identifier (max. 100 characters).
Expand Down
18 changes: 11 additions & 7 deletions docs/integration_netverify-fastfill.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,22 +58,26 @@ We advice to prevent our SDK to be run on jailbroken device. Either use the meth
## Configuration

### ID verification
The SDK defaults to Fastfill mode, which performs data extraction only. No ID verification occurs in the default mode.
By default the Jumio SDK enables Netverify which performs a full ID verification in the default mode.

Enable ID verification to receive a verification status and verified data positions (see [Callback for Netverify](https://github.com/Jumio/implementation-guides/blob/master/netverify/callback.md#callback-for-netverify)). Ensure that your customer account is allowed to use this feature.
A callback URL can be specified for individual transactions (for constraints see chapter [Callback URL](https://github.com/Jumio/implementation-guides/blob/master/netverify/portal-settings.md#callback-url)). This setting overrides any callback URL you have set in the Jumio Customer Portal.
Use ID verification to receive a verification status and verified data positions (see [Callback for Netverify](https://github.com/Jumio/implementation-guides/blob/master/netverify/callback.md#callback-for-netverify)). Ensure that your customer account is allowed to use this feature. A callback URL can be specified for individual transactions (for constraints see chapter [Callback URL](https://github.com/Jumio/implementation-guides/blob/master/netverify/portal-settings.md#callback-url)). This setting overrides any callback URL you have set in the Jumio Customer Portal.

__Note:__ Not available for accounts configured as Fastfill only.
```
config.requireVerification = YES;
config.callbackUrl = @"YOURCALLBACKURL";
```
Set the following setting to switch to Fastfill mode (which performs data extraction only):
```
config.requireVerification = NO;
```

You can enable Identity Verification if it is enabled for your account. Make sure to link the UMoove framework to your app project.
Identity Verification is automatically enabled if it is activated for your account. Make sure to link the UMoove framework to your app project.

__Note:__ Identity Verification requires portrait orientation in your app.

Set the following setting to disable Identity Verification on a transaction level:
```
config.requireFaceMatch = YES;
config.requireFaceMatch = NO;
```

### Preselection
Expand Down Expand Up @@ -203,7 +207,6 @@ self.netverifyViewController = nil;
```
**Important:** only call `destroy` after `netverifyUIController:didFinishWithDocumentData:canReference:` or `netverifyUIController:didCancelWithError:scanReference:` was called to ensure that Netverify SDK is in a final state. Setting `NetverifyViewController` to nil is essential to free memory as soon as possible.


### Retrieving information
The following tables give information on the specification of all document data parameters and errors.

Expand Down Expand Up @@ -397,6 +400,7 @@ After the SDK was dismissed and especially if you want to create a new instance
[self.netverifyUIController destroy];
self.netverifyUIController = nil;
```

**Important:** only call `destroy` after `netverifyUIController:didFinishWithDocumentData:canReference:` or `netverifyUIController:didCancelWithError:scanReference:` was called to ensure that Netverify SDK is in a final state. Call `cancel` during the workflow, which will evoke `netverifyUIController:didCancelWithError:scanReference:`. Setting `NetverifyUIController` to nil is essential to free memory as soon as possible.


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

# Transition guide for BAM Checkout

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

## 2.14.0
No backward incompatible changes.

## 2.13.0
BAMCheckoutCreditCardTypeStarbucks removed.

Expand Down
9 changes: 9 additions & 0 deletions docs/transition-guide_document-verification.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@

# Transition guide for Document Verification

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

## 2.14.0
#### Removed document type USSS
The document type for US social security card (USSS) was removed.

#### Default Settings
The default value for [`enableExtraction`](http://jumio.github.io/mobile-sdk-ios/Netverify/Classes/DocumentVerificationConfiguration.html#/c:objc(cs)DocumentVerificationConfiguration(py)enableExtraction) was changed to `YES`. Please make sure that it is explicitly set to NO in case a scan without extraction should be performed.

## 2.13.0

#### Changes in Localizable-DocumentVerification.strings
Expand Down
10 changes: 9 additions & 1 deletion docs/transition-guide_netverify-fastfill.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,14 @@

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

## 2.14.0

#### Default Settings
The default values for [`requireVerification`](http://jumio.github.io/mobile-sdk-ios/Netverify/Classes/NetverifyConfiguration.html#/c:objc(cs)NetverifyConfiguration(py)requireVerification) and [`requireFaceMatch`](http://jumio.github.io/mobile-sdk-ios/Netverify/Classes/NetverifyConfiguration.html#/c:objc(cs)NetverifyConfiguration(py)requireFaceMatch) were changed to `YES`. Please make sure that they are explicitly set to NO in case a scan in Fastfill mode should be performed.

#### Enums
[`NetverifyDocumentType`](http://jumio.github.io/mobile-sdk-ios/Netverify/Enums/NetverifyDocumentType.html) was changed from NS_ENUM to NS_OPTIONS.

## 2.13.0

#### Enums
Expand All @@ -13,7 +21,7 @@ All enums were replaced by NS_ENUM to have better Swift support. When using Swif
changed values in regards to error texts

#### Cleanup of our SDK
The method `destroy` was introduced to properly clean up our SDK. Call this method to destroy the NetverifyViewController instance, before you set it to nil. When re-initializing [`NetverifyViewController`](https://jumio.github.io/mobile-sdk-ios/Netverify/Classes/NetverifyViewController.html) or [`NetverifyUIController`](https://jumio.github.io/mobile-sdk-ios/Netverify/Classes/NetverifyUIController.html) make sure you've called `destroy` in advance otherwise an exception will be raised during initializing.
The method `destroy` was introduced to properly clean up our SDK. Call this method to destroy the NetverifyViewController instance, before you set it to nil. When re-initializing [`NetverifyViewController`](http://jumio.github.io/mobile-sdk-ios/Netverify/Classes/NetverifyViewController.html) or [`NetverifyUIController`](http://jumio.github.io/mobile-sdk-ios/Netverify/Classes/NetverifyUIController.html) make sure you've called `destroy` in advance otherwise an exception will be raised during initializing.

## 2.12.0

Expand Down
Binary file modified frameworks/BAMCheckout.framework/Assets.car
Binary file not shown.
Binary file modified frameworks/BAMCheckout.framework/BAMCheckout
Binary file not shown.
Binary file modified frameworks/BAMCheckout.framework/Info.plist
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,6 @@ __attribute__((visibility("default"))) @interface JMCaptureSessionManager : NSOb
@property (weak, nonatomic, readonly) AVCaptureDevice *activeCameraDevice; // Either back or front

@property (atomic, strong) NSDate *dateOfLastFocusAdjustment;
@property (atomic, strong) NSDate *dateOfLastExposureAdjustment;
@property (atomic, strong) NSDate *dateOfLastWhiteBalanceAdjustment;

@property (nonatomic, assign) CGPoint focusPointOfInterest;
@property (nonatomic, assign) CGFloat cropFactorY;
Expand Down Expand Up @@ -105,6 +103,8 @@ __attribute__((visibility("default"))) @interface JMCaptureSessionManager : NSOb
- (void) enableVideoDataOutput;
- (void) disableVideoDataOutput;
- (void) addDefaultVideoInput;
- (void) startCameraObservations;
- (void) stopCameraObservations;

- (void) setVideoOrientation: (AVCaptureVideoOrientation) videoOrientation includingPreviewLayer: (BOOL) considerPreviewLayer;
- (CGSize) imageFrameSizeForCurrentCaptureSessionPresetWithVideoOrientation: (AVCaptureVideoOrientation) videoOrientation; // Returns raw image size of sample buffer for the current capture session configuration and configurable video orientation
Expand Down Expand Up @@ -164,5 +164,6 @@ __attribute__((visibility("default"))) @interface JMCaptureSessionManager : NSOb

- (void) cleanUp;

+ (NSArray<AVCaptureDevice*>* _Nullable)allVideoCaptureDevices;

@end
4 changes: 4 additions & 0 deletions frameworks/JumioCore.framework/Headers/JMDeviceInfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ typedef enum
IPHONE_8,
IPHONE_8_PLUS,
IPHONE_X,
IPHONE_XS,
IPHONE_XS_MAX,
IPHONE_XR,

IPOD_TOUCH_1G,
IPOD_TOUCH_2G,
Expand Down Expand Up @@ -91,5 +94,6 @@ __attribute__((visibility("default"))) @interface JMDeviceInfo : NSObject
+ (UIInterfaceOrientation)deviceInterfaceOrientation;
+ (UIDeviceOrientation)deviceOrientation;

+ (BOOL)hasNotch;

@end
2 changes: 0 additions & 2 deletions frameworks/JumioCore.framework/Headers/JMSystemInfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,6 @@ __attribute__((visibility("default"))) @interface JMSystemInfo : NSObject

+ (NSString*)systemVersionString;
+ (float)systemVersionNumber;
+ (BOOL)isSystemVersionAtLeastOS9;
+ (BOOL)isSystemVersionAtLeastOS10;
+ (BOOL)isSystemVersionAtLeastOS11;

@end
1 change: 0 additions & 1 deletion frameworks/JumioCore.framework/Headers/JumioCore.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ FOUNDATION_EXPORT const unsigned char JumioCoreVersionString[];
#import <JumioCore/JMSDKStyle.h>
#import <JumioCore/JMString.h>
#import <JumioCore/JMThemeableButton.h>
#import <JumioCore/NSData+Base64.h>
#import <JumioCore/JMSDK.h>
#import <JumioCore/JMLoadingTableViewCell.h>
#import <JumioCore/JMNavigationBarItem.h>
Expand Down
41 changes: 0 additions & 41 deletions frameworks/JumioCore.framework/Headers/NSData+Base64.h

This file was deleted.

Binary file modified frameworks/JumioCore.framework/Info.plist
Binary file not shown.
Binary file modified frameworks/JumioCore.framework/JumioCore
Binary file not shown.
Binary file modified frameworks/Netverify.framework/Assets.car
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ __attribute__((visibility("default"))) @interface DocumentVerificationConfigurat
@property (nonatomic, strong, nullable) NSString* documentName;

/**
* Enable/disable data extraction for documents
* Enable/disable data extraction for documents (default: YES)
**/
@property (nonatomic, assign) BOOL enableExtraction;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
#import <UIKit/UIKit.h>
#import <JumioCore/JMResourceLoader.h>
#import <JumioCore/JMLogging.h>
#import <JumioCore/NSData+Base64.h>
#import <JumioCore/JMSDKStyle.h>
#import "NVUtilities.h"
#import <JumioCore/JMUtilities.h>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -70,12 +70,12 @@ __attribute__((visibility("default"))) @interface NetverifyConfiguration : NSObj
@property (nonatomic, assign) NetverifyDocumentVariant preselectedDocumentVariant;

/**
* Enable a face match check between a camera still image and the document front side (default: NO)
* Enable a face match check between a camera still image and the document front side (default: YES)
**/
@property (nonatomic, assign) BOOL requireFaceMatch;

/**
* Enable verification of a scanned identity (default: NO)
* Enable verification of a scanned identity (default: YES)
**/
@property (nonatomic, assign) BOOL requireVerification;

Expand Down
Loading

0 comments on commit 6e706f2

Please sign in to comment.