Skip to content

v3.0.5

Choose a tag to compare

@dimitrisFuturae dimitrisFuturae released this 14 May 18:50
· 16 commits to master since this release

Notice

This is a major version update, with breaking changes listed below. You can also refer to the v3 guide

New Features

SDK client-facing improvements

  • Added coroutines support for asynchronous SDK operations.
  • Added global SDK state tracking.
  • Internal SDK systems were reworked to achieve maximum stability and testability.

End-to-end encrypted Session Information

Added transparent SessionInfo.approveInfo decryption, when it comes encrypted from the backend, in the getAccountsStatus and getSessionInfo APIs. The feature needs to be enabled on the backend side.

QR Easy Scan

QR easy scan to send push notifications for created online QR code sessions. For more info, refer to documentation.

Trusted Session Binding

Trusted Session Binding for Enrollment and Account Migration (AAR).

Breaking changes

  • The main client is renamed from FuturaeClient to FuturaeClientApi. It is still accessible by FuturaeSDK.client.
  • SDK Operations have been split to APIs. For example FuturaeClient.getSessionInfo is now accessible via FuturaeSDK.client.sessionApi.getSessionInfo. Please refer to the v3 guide for detailed information on every operation.
  • Utility methods have been renamed:
    • NotificationUtils -> FTNotificationUtils
    • FTUri companion object utility methods moved to -> FTUriUtils
    • QRCodeUtils -> FTQRCodeUtils
  • Model breaking changes:
    • Package:
      • All model classes are moved from com.futurae.sdk.model to com.futurae.sdk.public_api/<api-package>/model e.g. com.futurae.sdk.model.SessionInfo -> com.futurae.sdk.public_api.session.model.SessionInfo
    • Naming change:
      • AccountHistory -> AccountHistoryItem
      • Fixed typo Migrateable to Migratable. This affects classes MigratableAccounts and `MigratableAccountInfo
    • Other:
      • AccountHistoryItemDetails no longer contains utility method success() : Boolean
  • Exception model breaking changes:
    • The exception model has been revamped. All exceptions have been moved to com.futurae.sdk.public_api.exception and have been renamed to provide a new comprehensive exception model that supports granular handling on high level or low level. We recommend referring to the v3 guide about error handling.

Other notable changes

  • NEW: Expose parameter shouldWaitForSDKSync to unlock API, to prevent getting an FTBlockedException when running an operation immediately after unlocking.
  • NEW: Add FuturaeMigrationApi.isAccountRecoveryEnabled to quickly check if the SDK has generated the necessary information for enrolled accounts to be recovered through Automatic Account Recovery.
  • NEW: Add FTLockUtils that allows checking support for biometrics and/or device credentials supported by the SDK during runtime.
  • Add FTUriUtils methods isEnrollUri and isAuthUri to identify the type of URI.
  • Fix: Usernameless QR code sessions now support extra_info.
  • Fix: Add internal self recovery mechanism for SDK’s pub key synchronization with Futurae server. Also added public key operations APIs to help debug such issues in the future
  • Seamless import and trust Let's Encrypt ISRG Root x1 ssl certificate, in order to maintain support for Android 6 and 7 devices after cross-signed certificate expires.

Behavior changes