unlock

public abstract AsyncOperation<UserPresenceVerificationFactor> unlock(UserPresenceVerificationMode userPresenceVerificationMode, Boolean shouldWaitForSDKSync)

Unlocking method that could be called prior to using a locked functionality,

Depending on the configuration, different kinds of input may be required.

Only biometrics classified as androidx.biometric.BiometricManager.Authenticators.BIOMETRIC_STRONG are supported.

Return

the resulting factor that authenticated the user.

Parameters

userPresenceVerificationMode

to configure what credentials have to be used for unlocking.

shouldWaitForSDKSync

pass true to wait for SDK synchronization (if necessary) before the operation completes. This is recommended to avoid SDK internal synchronization blocking operations post unlock.

Throws

if the SDK pin cannot be retrieved via biometric authentication.

if the SDK pin cannot be retrieved via biometric authentication.

if the current SDK lock configuration does not support biometric authentication.

if biometric authentication failed.

if biometric authentication is unavailable.

if the biometrics of the device have been changed or invalidated. This is a security concern and will render biometric authentication unusable. Then for all lock configuration types except SDK_PIN_WITH_BIOMETRICS_OPTIONAL the SDK will need to be reset and re-initialized. For the case of SDK_PIN_WITH_BIOMETRICS_OPTIONAL the app may either reset and re-initialize the SDK or re-activateBiometrics.

if using SDK_PIN_WITH_BIOMETRICS_OPTIONAL config and the PIN is missing or empty.

if using SDK_PIN_WITH_BIOMETRICS_OPTIONAL config and the PIN verification has failed 5 times.

if the associated API request to the Futurae backend calls fail.

if using SDK_PIN_WITH_BIOMETRICS_OPTIONAL and the SDK cannot access the necessary tokens to authenticate this request This state requires the SDK to reset or to perform launchAccountRecovery

if the SDK cannot access necessary cryptographic material or perform cryptographic operations