# Versions

On this page, you can find an overview of what is new in all of our supported SDK versions for Android.

# SDK 3.18

News for SDK 3.18

  • The documentation is restructured and big parts have been rewritten with new examples that should be easier to copy paste.
  • Deprecated the Fingerprint auth method. It will be removed in a future release.
  • Added the annotation @NonNull to both the OnSuccess and OnFailure functions of AsyncCallback.
  • The Operation Context methods are now unified, which means that the functions getResponseTitle(), getResponseConent(), getResponseMimeType() on the result classes FinishActivationResult and FinishAuthenticationResult are now renamed to getContextTitle(), getContextContent(), getContextMIME() which match the method names for StartAuthenticationResult and on iOS. The old methods are deprecated, and will be removed in the next release.

# SDK 3.17

News for SDK 3.17

  • Minimum Android version will be Android 7 (instead of Android 6).
  • Safety Net attestation replaced with Play Integrity. See more details in our feature documentation for Play Integrity.
  • The two activation and authentication parameters for Biometric Prompt now expose setConfirmationRequired().
  • Removed Intermediate push feature. Use Play Integrity for app attestation.
  • Removed deprecated API methods:
    • StartAuthenticationResult: getAllowedAuthMethods(). Use getAuthMethodsForAuthentication() instead.
    • StartActivationResult: getAllowedAuthMethods(). Use getAuthMethodsForActivation() instead.
    • StartAddOrUpdateResult: getAllowedAuthMethodsForActivation(). Use getAuthMethodsForActivation() instead.

# SDK 3.16

News for SDK 3.16

  • New feature Client debug data. You will find more details in our feature documentation
  • New EncapConfig setting, setAllowDebugData. Set to true by default. Can be set to false to reserve a device from sending debug data even if it is turned on in your Application Configuration.
  • Deactivating a not activated registration on the client no longer results in an error.
  • The documentation about Fingerprint has been removed. For all new implementations we recommend using Biometric Prompt. If Fingerprint is needed on Android 6-8, we recommend using Biometric Prompt with AndroidX library. The old fingerprint documentation can still be accessed in older version of this document if needed.
  • The documentation for how to build with Maven has been removed from this revision of the document. Please revisit older version of the document if integration with Maven is needed.
  • SafetyNet attestation will be replaced with Play Integrity in version 3.17.
  • Deprecated API methods:
    • StartAuthenticationResult: getAllowedAuthMethods(). Use getAuthMethodsForAuthentication() instead.
    • StartActivationResult: getAllowedAuthMethods(). Use getAuthMethodsForActivation() instead.
    • StartAddOrUpdateResult: getAllowedAuthMethodsForActivation(). Use getAuthMethodsForActivation() instead.

# SDK 3.15

News for SDK 3.15

  • The error clientErrorKeyPermanentlyInvalidated with code 180 has been replaced with clientErrorAuthDataInvalidated with code 132 to match the iOS implementation.
  • Support for cancelling an ongoing Biometric authentication has been implemented for AndroidX BiometricPrompt (opens new window). The app can cancel an ongoing Biometric authentication by supplying an CancellationSignal (opens new window) to the DeviceAndroidBiometricPromptAuthParameter and calling the cancel() (opens new window) method. For AndroidX BiometricPrompt, this is implemented so that the Encap API sets up a listener on the CancellationSignal that will call the cancelAuthentication() method of the AndroidX BiometricPrompt.
  • The Intermediate Push Attestation is deprecated and will be removed in a future release.

# SDK 3.14

News for SDK 3.14

  • Geofencing is a new feature were the SDK performs a lookup of the device location to an external Geocoder service and sends country code to server. Learn more about the feature and the new error codes in our feature documentation.
  • AuthenticateAndActivate have changed name to AddOrUpdate. AuthenticationAndActication will be deprecated for this version. On iOS this function has always been called AddOrUpdate, and Android is now changing to make the two controller interfaces look more similar.
  • The signing feature is removed. These functions does not exist anymore, and you need to remove the use of it in your app:
    • EncapConfig.Builder: setSigningEnabled(), setSigningKeySize()
    • EncapController: startAuthenticationOrSigning(), startSigning(), FinishSigning()
    • EncapController.State: isSigningState()
    • PushMessage: isSigningMessage()
    • SigningFailedException, StartSigningResult, FinishSigningResult
  • New error code serverErrorInvalidSession. If a new session is started on the server after the client has done startAuthenticate, then you will get this error during finishAuthenticate, and you need to do startAuthenticate again.
  • Removed error codes:
    • serverErrorIncorrectSignature
    • serverErrorInvalidSignature

# SDK 3.13

News for SDK 3.13

  • The SDK now supports the AndroidX Biometric Prompt support library. This enables an app to use Biometric Prompt from Android 6 instead of Android 9 which was the first Android version with Biometric Prompt.
  • Support for recovering user's registration by using recovery credentials in connection with file backup system. Account Recovery feature enables to recover once lost registration or to migrate it to a new device without necessity of performing a new enrolment.
  • InputType name change from ALPHANUMERIC to ALPHA_NUMERIC.
  • New error codes:
    • clientErrorAndroidBiometricPromptErrorNegativeButton - The negative (cancel) button in the AndroidX Biometric Prompt dialog was pushed.
    • clientErrorAndroidBiometricPromptErrorNoDeviceCredential - The device does not have PIN, pattern, or password set up
    • clientErrorAndroidBiometricPromptErrorSecurityUpdateRequired - A security vulnerability has been discovered and a security update is needed.
    • clientErrorTokenPurposeNotSupported - Token purpose is not supported for selected operation.
    • clientErrorInvalidToken - Provided token is invalid.
    • clientErrorInvalidRecoveryParameters - Invalid recovery parameter, for example recovery method.
    • clientErrorRecoveryDataNotPresent - Recovery data is not present in the storage.
    • serverErrorAuthTokenCreationFailed - Creation of the auth token failed on the server side.
    • serverErrorAuthTokenValidationFailed - Validation of auth token failed on the server side.
    • serverErrorAuthTokenAlreadyUsed - Provided token has been already used during another operation and cannot be used again.
    • serverErrorRecoveryAlreadyUsed - Recovery has been already used, each recovery can be used only once.
    • serverErrorRecoveryDoesNotExist - Recovery secrets are missing or never been created for a selected account.
    • serverErrorRecoveryDisabled - Recovery operations have been disabled for either the given registration or selected app config.
    • serverErrorRecoverLocked - Recovery has been locked and cannot be used.
    • serverErrorInvalidAuthTokenPurpose - Token with wrong purpose has been used to perform an operation.
    • serverErrorInvalidAuthLevelForTokenRequest - Token request has been performed without 2FA.
Last updated: 11/04/2024 07:47 UTC