Migrating from Older Versions

4.x to 5.x

Version 5.x adds a few breaking changes from version 4:

  • Microblink is no longer used

  • IDMetricsDocumentCapture has been renamed to CFDocumentScanSDK

Remove Existing Frameworks

In your project navigator, highlight the existing Microblink.framework and IDMetricsDocumentCapture.framework and hit the delete key:

delete-old-frameworks

When prompted, select Move to Trash:

move-to-trash

In your Info.plist, select the microBlinkLicenceKey and microBlinkLicensee keys and press the delete key:

delete-microblink-license

Install 5.7.0

Follow instructions here: Installation

Update Implementation

IDMetricsDocumentCapture has been renamed to CFDocumentScanSDK. You will need to find and replace all import statements with the new name, along with any other project / code references to IDMetricsDocumentCapture.

Important

When sending the image to the AuthenticateDocument API, you may need to provide an AutoCrop header in the request. See Parsing Responses for more details.

5.0.x to 5.3.1+

If you’ve already implemented the 5.0.x SDK, there are some changes to be aware of when migrating to 5.3.1 and greater:

  • The CFDocumentScanSDK / CFDocumentScan class has been renamed to DSCapture

  • DSResult.flashIamge has been corrected to DSResult.flashImage

  • DSHandlerDelegate has been assigned an additional function, func captureError(_ error: DSError)

  • The library package format has been changed from .framework to .xcframework in order to better support multiple platform architectures (iOS + iOS Simulator)

  • When setting compressionQuality via CFADocumentSettings, the SDK was maxing out any number greater than 0. The property now respects values between 0 and 100.

  • To handle the new, denser barcodes, targetDPI will now max out at 1000

  • Auto DPI scaling if barcode is not detected on back side scans

  • The SDK is now independent of the version of Swift that you are using (5.1 and above)

  • Document capture image processing has been optimized to work with A8 processors

  • Deprecated DSCapture.setLicenseKey(_ key: String) in favor of DSCapture.setLicense(key: String)

  • Added DSCapture.licenseExpirationDate()

  • Added ability to configure custom styles and images. See Styles and Assets for more information.

Barcode Data Keys

If you’re directly accessing barcode data via DSDocumentData.rawDocumentData, the dictionary keys have been capitalized. If you are conforming to the barcodeDataDelegate, then you will not experience any change.

FirstName

MiddleName

LastName

Address

City

State

ZipCode

DocumentNumber

Endorsement

Height

Weight

EyeColor

HairColor

DOB

Sex

ExpirationDate

IssueDate

LicenseClass

RestrictionCode

Country

Name

GivenName

OrganDonor