Repository navigation
v3.0.5
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
FuturaeClienttoFuturaeClientApi. It is still accessible byFuturaeSDK.client. - SDK Operations have been split to APIs. For example
FuturaeClient.getSessionInfois now accessible viaFuturaeSDK.client.sessionApi.getSessionInfo. Please refer to the v3 guide for detailed information on every operation. - Utility methods have been renamed:
NotificationUtils->FTNotificationUtilsFTUricompanion object utility methods moved to ->FTUriUtilsQRCodeUtils->FTQRCodeUtils
- Model breaking changes:
- Package:
- All model classes are moved from
com.futurae.sdk.modeltocom.futurae.sdk.public_api/<api-package>/modele.g.com.futurae.sdk.model.SessionInfo->com.futurae.sdk.public_api.session.model.SessionInfo
- All model classes are moved from
- Naming change:
AccountHistory->AccountHistoryItem- Fixed typo
MigrateabletoMigratable. This affects classesMigratableAccountsand `MigratableAccountInfo
- Other:
AccountHistoryItemDetailsno longer contains utility methodsuccess() : Boolean
- Package:
- Exception model breaking changes:
- The exception model has been revamped. All exceptions have been moved to
com.futurae.sdk.public_api.exceptionand 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.
- The exception model has been revamped. All exceptions have been moved to
Other notable changes
- NEW: Expose parameter
shouldWaitForSDKSynctounlockAPI, to prevent getting anFTBlockedExceptionwhen running an operation immediately after unlocking. - NEW: Add
FuturaeMigrationApi.isAccountRecoveryEnabledto quickly check if the SDK has generated the necessary information for enrolled accounts to be recovered through Automatic Account Recovery. - NEW: Add
FTLockUtilsthat allows checking support for biometrics and/or device credentials supported by the SDK during runtime. - Add
FTUriUtilsmethodsisEnrollUriandisAuthUrito 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
- WARNING: The SDK's biometric invalidation tracking for SDK PIN configuration, now only starts after activateBiometrics() is called.
- WARNING: The deactivateBiometrics() function now resets the flag returned by haveBiometricsChanged() to false and stops biometric invalidation tracking. This can be re-enabled by activateBiometrics()
When updating to this SDK version it’s recommend to review the app’s logic when it comes to handling the result of the haveBiometricsChanged() method.