-
Notifications
You must be signed in to change notification settings - Fork 5
Upgrading to v9.x
There have been a number of breaking changes in this 9.0.0 release. Please read through this section to understand those changes.
Options
has changed from a data class to a class. This makes it easier for us to add new features in a non-breaking way between major releases. Thus, in version 9.x you will need to change to using an empty constructor (e.g. Options()
) and assign top level values using dot-field assignments instead.
The following U.S. English naming conventions have been adopted, changing the API:
-
IProovCallbackLauncher.onCancelled()
becomesIProovCallbackLauncher.onCanceled()
-
IProov.Canceller
becomesIProov.Canceler
-
IProov.IProovState.Cancelled(val canceller: Canceller)
becomesIProov.IProovState.Canceled(val canceler: Canceler)
Previously, the certificates
Option was a list of either certificates or resources containing certificates. In 9.x, this has changed to a list of SPKIs of certificates, which significantly improves the usefulness and flexibility of certificate pinning. If you were using certificate pinning before then please change to providing the much shorter SPKI strings instead of the whole certificates, otherwise, you do not have to worry about this change at all.
From 9.x, the two Failure codes "user_timeout" and "not_supported" will be received as Errors as ServerException
, since they both represent an incomplete scan, which is more suited to Errors.
There is a new UX/UI animation for GPA: the Options.genuinePresenceAssurance.readyOvalStrokeColor
no longer appears as a full ring at "ready" but progresses as a user goes through the claim, to communicate how much they have left to complete.
Note that when the natural filter (clear/blur) is applied to LA, then the surroundColor will always be used as opaque on the new background crop.
Liveness Assurance (LA) now supports the same new failure codes as GPA with one addition:
-
multiple_faces
has been added as a new Failure Code in LA (as enum valueMULTIPLE_FACES
)
Thus the full list for LA is now as follows:
unknown
too_bright
too_dark
eyes_closed
multiple_faces
sunglasses
obscured_faces
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.
It was determined that the alternative face detectors "Blazeface" and "ML-Kit" were too large and not being used, so this feature was previously deprecated.
In 9.x, the deprecated option faceDetector
and the two additional libraries iproov-blazeface
and iproov-mlkit
have been removed.
Also the "pose" options (for MLKit only), genuinePresenceAssurance.maxYaw
, genuinePresenceAssurance.maxRoll
and genuinePresenceAssurance.maxPitch
were removed.