Skip to content

Upgrading to SDK v11.x

Braden edited this page Sep 27, 2023 · 3 revisions

Deployment Target

SDK v11 drops support for iOS 11 and now only supports iOS 12+.

StreamingURL is URL type instead of String

The launch function now requires the StreamingURL to be URL type:

let streamingURLString = "wss://eu.rp.secure.iproov.me/ws" // Substitute as appropriate

guard let streamingURL = URL(string: streamingURLString) else {
	// handle your URL error
}

IProov.launch(streamingURL: streamingURL, token: token, options: options) { status in
	...        

Changed API to U.S. English spelling of "Canceled"

The following U.S. English naming conventions have been adopted, changing the Status enum:

case canceled(Canceler)

It is now used as followed:

IProov.launch(streamingURL: streamingURL, token: token) { status in
    switch status {
    case let .canceled(canceler):
		...
    }
}

Vendored Starscream dependency

Starscream has now been vendored to prevent conflicts. This means integration is simpler as some steps have been removed:

See the Installation section of the readme for full integration steps.

Certificates option

Certificates are now passed as a String array instead Data array. It contains the certificate's Subject Public Key Info as SHA-256 hash. Please see the readme on instructions for how to configure this.

Pose control options have been removed

The deprecated pose control options maxYaw, maxPitch and maxRoll have now been removed.

Failures change to Errors

From 11.x, the two failure reasons user_timeout and not_supported will be received as Errors as IProovError, since they both represent an incompletion of the scan, which is more suited to Errors.

New failure reason

In the FailureReason enum, multiple_faces has been added as a new Failure Code in LA. Translations are provided as usual.

Caveat: this declares support for the new codes in the SDK. It does NOT define when the new codes will be produced by our servers. This capability will be delivered in the future