Skip to content

What's New in Release 5.0.2

Upgrading to the Latest Version of the SDK

Extract the contents of the SAP BTP SDK for Android software update file to a folder on your computer and run the installation script. The installation script copies the SDK libraries to the local Maven repository and reinstalls the Android Studio plugin.

The installation script does not overwrite older versions of the SDK libraries. These are still present in the local Maven repository after the upgrade. This ensures applications referencing the older SDK will continue to compile.

For existing applications, manually update the SDK version in your Gradle files to the new one.

Tip

You can update the SDK version for your Wizard projects using the sdkVersion property in the gradle.properties file at the root of the generated project.

Foundation Library 5.0.2 Update

  • Support transparent mode for Baidu push.
  • Fixed an issue where the app might crash when a user changed the system language settings while viewing an internal link inside the EULA file.

SDK Wizard 5.0.2 Update

  • Support for Android Studio Chipmunk.

What's New in Release 5.0.1

Fiori Library 5.0.1 Update

  • Fixed QR Code Scan screen accessibility issues.
  • Fixed Welcome Screen accessibility issue.
  • Fixed accessibility issue where text in KPI View would be cut off if the device font size was increased.
  • Fixed accessibility issue where text in Data Table would be cut off if the device font size was increased.
  • Fixed accessibility issue where text in Timeline Preview would be cut off if the device font size was increased.
  • Fixed accessibility issue where text in Privacy Notice would be cut off if the device font size was increased.
  • Fixed accessibility issue where Talkback would erroneously announce the state of end icons in Simple Property Form Cell as "not checked".
  • When using Talkback, Simple Property Form Cell now announces an error message and does not require multiple swipes.
  • When using Talkback, Hierarchy View list item can now be clicked.
  • When using Talkback, Attachment Form Cell now announces if an item is clickable.
  • Fixed issue where Voice Search was not functional on devices running Android 11 or later.
  • Fixed incorrect rendering of Buttons that are in "focused" state.
  • Fixed issue of Map Info Sheet overlapping with other controls when it is rendered.
  • Fixed crash occurring in Enter Passcode screen when the wrong passcode was entered.
  • Fixed images rendering incorrectly while scrolling in Collection View.
  • Fixed issue where setting the Date Time Picker mode using enum led to unexpected results.
  • The Timeline View is now compliant with the Fiori Horizon Design.
  • Fixed Simple Property Form Cell backward compatibility issue.

SDK Wizard 5.0.1 Update

  • Bug fix: Disabled JCEF option on Windows platform to avoid JCEF crash.

Foundation Library 5.0.1 Update

  • Fixed random app crash due to Baidu push class not being found.

OData Library 5.0.1 Update

  • Fixed TimeDay property parsing issue.

What's New in Release 5.0.0

Fiori Library 5.0.0 Update

Onboarding 5.0.0 Update

  • The onboarding EULA screen now supports internationalization.
  • Introduced splash screens to be shown during onboarding.
  • Welcome Screen as bottom modal sheet.
  • Progress indicator to show what stage of onboarding the user is in.
  • UI text consistent between iOS and Android SDKs.
  • Consent Forms are now modal sheets.
  • Optimized character requirement information for Passcode Creation screen.
  • Option to delay biometrics.

Fiori Horizon 5.0.0 Update

  • Buttons: Accessibility improvements, including larger font size and adding borders for focused state. New tonal button style.
  • Cards: New component for presenting application data in a new streamlined card-based format. Developed using Android Jetpack Compose.

Object Header 5.0.0 Update

  • Label items that support a leading or trailing icon and a KPIView are now displayed in the status area of the first page.
  • Typography changes, multiline support for subcomponents (excluding statuses).
  • The description is now displayed on the first page.
  • The number of supported tags has increased from 3 to 100 tags.
  • The statuses now support both icons and labels (before statuses were either an icon or label but not both). Statuses now have more flexibility in terms of being able to be placed stack-wise (original layout), inline (below the tags), or crosswise (one status is inline and the other is stack-wise).

Note Form Cell 5.0.0 Update

  • Revamped appearance with the addition of an error icon and outline to text field, which improves highlighting of the cell's state, such as being in an error or focused state.
  • Added support for toggling text visibility, which helps in hiding sensitive data.
  • Added support for adding a prefix or suffix to text.
  • Added support for marking a field as mandatory.
  • Improved accessibility support.

Slider Form Cell 5.0.0 Update

  • Built using the Material Design 1.5.0 specification, the slider form cell now uses the new layout and colors from the specification.
  • Styling for beginning and end labels of the slider change to capture the following states – ‘edit-focused’, ‘edit-unfocused’, ‘static value’, ‘error’, and ‘enable/disable’.

Object Cell 5.0.0 Update

  • Support for adding tags.
  • Support for adding a row of avatars.
  • Support for detail images area having an avatar stack.
  • Increased font and padding.
  • Loading indicator moved to action icon.
  • Maximum number of headline/subheadline/footnote lines is increased.

Text Input 5.0.0 Update

  • Revamped appearance with the addition of an error icon and outline to text field, which improves highlighting of the cell's state, such as being in an error or focused state.
  • Added support for clear text functionality, which helps to clear all entered text with one click.
  • Added support for toggling text visibility, which helps in hiding sensitive data.
  • Added support for adding a prefix or suffix to text.
  • Added support for marking a field as mandatory.
  • Improved accessibility support.

Foundation Library 5.0.0 Update

  • Support for inserting custom screens before and after onboarding. These can include such things as customized EULA and consent screens.
  • Support for providing EULA resources based on device language. During onboarding, the runtime component will detect the device language and load the localized version of the EULA.
  • Allow HTTP requests that return an error code upon failure to not automatically cause the application to launch a login flow. This supports scenarios where the application would like to handle scenarios, such as OAuth token or web session expiration, more gracefully.
  • AppConfig now supports signed strings.
  • PKCE support for OAuth 2.0. This enables Android applications built with the SAP BTP SDK for Android to connect to SAP Mobile Services in a safe and secure manner. The SDK provides the authorization code flow needed for the PKCE code verifier.
  • Support for targetSdkVersion 31. The SDK components were updated to adapt for the new behavior changes needed to support Android 12.
  • Enable digitally signed QR codes for onboarding to SAP Mobile Services. The QR code can optionally be signed using the private key of the organization and verified using the organization's public key inside the mobile application.
  • Support Android Studio Arctic Fox (2020.3.1). The SDK Wizard plugin and generated project templates are updated to support changes made in Android Studio Arctic Fox.
  • Support Bumblebee (2020.1.1).
  • Support for multiple users using an application to cleanly end their OAuth/Web session during user switch. This feature uses the new SAP Mobile Services API to reset the IDP session and return the new user to the login screen instead of using the previous user’s session.

Flows Library 5.0.0 Update

  • Onboarding flow now supports signed QR codes.

SDK Wizard 5.0.0 Update

  • Support JCEF for form-based authentication. JCEF is a Java port of the Chromium Embedded Framework (CEF) for embedding Chromium-based browsers in applications using Swing.
  • Allow developers to use SAML-based authentication when connecting to SAP Mobile Services using the SDK Wizard inside the Android Studio application. This is enabled using Android Studio's JCEF WebView on a Mac machine.
  • Upgraded the H2 database version.
  • Support Android Studio Bumblebee

Offline OData Library 5.0.0 Update

  • Enhanced OfflineODataError and OfflineODataException.
  • Formatted some client error messages. Applications parsing these error messages may need to update their parsing implementation.
  • Support defining refresh order by SDK.
  • Support automatic client registration to mobile back-end tools.
  • Support undo pending changes with custom headers.

What's New in Release 4.0.7

Flows Library 4.0.7 Update

  • Bug fix: Fixed an issue where an app might randomly crash due to a Baidu push class not being found.

Foundation Library 4.0.7 Update

  • Bug fix: Fixed an issue where Chrome custom tabs might be shown when creating a widget.

Fiori Library 4.0.7 Update

  • Bug fix: Fixed an issue that caused Talkback to announce all of the content of the Welcome Screen at once when the screen was first displayed.
  • Bug fix: Fixed several accessibility issues on the QR Code Scan Screen where Talkback was providing incorrect or incomplete information related to the buttons and screen instructions.
  • Bug fix: Fixed an issue that resulted in an incorrect color being used for the default status on the ObjectHeader.
  • Bug fix: Fixed an issue that caused past events to be displayed with incorrect styling in the Timeline.
  • Bug fix: Fixed an issue that resulted in an inconsistent ordering of the DateTimePickerMode enum values.

What's New in Release 4.0.6

Flows Library 4.0.6 Update

  • Bug fix: Fixed no sign-in screen shown issue when CCT is launched and app is put into background the second time.

Foundation Library 4.0.6 Update

  • Bug fix: If there is no default browser set, app may crash when launching CCT.

Fiori Library 4.0.6 Update

  • Bug fix: Fixed an issue that caused the Attachment Form Cell content to be misaligned.
  • Bug fix: Fixed an issue that caused the Scatter Chart Card to display improperly.
  • Bug fix: Fixed an issue that prevented the Voice Search icon from displaying on newer Android devices.
  • Bug fix: Fixed an issue that caused images in the Collection View to be improperly cropped in some cases.

What's New in Release 4.0.5

Flows Library 4.0.5 Update

  • Bug fix: Fixed app crash that occurred when doing a reset due to AppExtensionStore.
  • Bug fix: CCT launched from widget configuration activity may navigate back to the host app.
  • Full-screen can be enabled or disabled for flow activity.

Foundation Library 4.0.5 Update

  • Sensitive data (access_token and refresh_token) will not be exposed in log file.
  • WebView now supports dark mode.

Fiori Library 4.0.5 Update

  • Tenant URL will not be clickable on QR Code Confirmation Screen.
  • Sign In Screen style now conforms to design requirements.

SDK Wizard 4.0.5 Update

  • Bug fix: Project could not be generated when there was no default AndroidStudioProjects folder.

Offline OData Library 4.0.5 Update

  • Clean only the expired local changes related to the current subsets of a partial download.

What's New in Release 4.0.4

Flows Library 4.0.4 Update

  • Bug fix: AppConfig in AppExtensionService was not updated when onboarding using a new QR code.

Foundation Library 4.0.4 Update

  • Enhanced the extension function to notify the client code of the read-only token expiration.

Fiori Library 4.0.4 Update

  • Bug fix: Changes made to the TimelinePreviewView after it has been initially displayed will now be rendered correctly.

What's New in Release 4.0.3

Fiori Library 4.0.3 Update

  • The DateTimePickerFormCell now selects and returns the correct date regardless of the user's timezone.
  • When using Talkback, the Close button on the Consent screen now has a content description.
  • When using Talkback, the Close button on the QR Code Reader screen now has a content description.
  • When using Talkback, the User image on the Sign In screen now has a content description.
  • When using Talkback, the validation rules on the Set Passcode screen will now be announced to the user.
  • When using the Dynamic Column feature in the DataTable component, the dynamic behavior can now be disabled when the screen width is insufficient.
  • The Collection View Header is now compliant with the Fiori Horizon Design.

Flows Library 4.0.3 Update

  • Bug fix: Reset flow did not clear the IDP session.

Foundation Library 4.0.3 Update

  • Bug fix: Widget service did not clear the mobile server session when logging out the user.

What's New in Release 4.0.2

Fiori Library 4.0.2 Update

  • The Timeline will now redraw itself after changes are made.
  • The Timeline Preview title and button can now be turned off.
  • The Timeline Cell View and Timeline Preview Cell View are now compliant with the Fiori Horizon Design.
  • The Collection View is now compliant with the Fiori Horizon Design.
  • The version of the Play Services Vision library used by the SDK has been updated to 20.1.3.
  • The version of the ML Kit Barcode Scanning library used by the SDK has been updated to 17.0.1.
  • The Alert Dialog background color is now compliant with the Fiori Horizon Design.
  • When using Talkback, non-visible elements will no longer be announced when viewing location point details on maps.
  • Changes to Value typeface on the Simple Property Form Cell will now be preserved when the field content is cleared.
  • The Data Table setDynamicColumn functionality will now behave as expected when the screen is wider than the total space occupied by non-dynamic columns.
  • When using Talkback, the location point header will be announced correctly.
  • When using a physical keyboard to access a Choice Form Cell, the extra tab stop has been removed.
  • When using Talkback with Timeline, the UI element type will be announced correctly.

Flows Library 4.0.2 Update

  • Bug fix: Timeout flow did not kick in on top of the launcher activity.
  • Bug fix: Reset flow froze the app.
  • Bug fix: Screenshots could be taken on the passcode verification screen.
  • Enhancement: Made the confirmation dialogs for reset, logout, and registration deletion flows customizable.

Onboarding Library 4.0.2 Update

  • Confirmation screen settings added to support the customization of the confirmation dialogs.

What's New in Release 4.0.1

Foundation Library 4.0.1 Update

  • Enhanced the logout API to remove cookies from Chrome Custom Tabs.
  • Added SDKCustomTabsLauncher.launchCustomTabs API to launch Chrome Custom Tabs so that they work seamlessly with the timeout unlock flow.

Flows Library 4.0.1 Update

  • Integrated the enhanced logout API into the logout, registration deletion, and reset flows.
  • Enhanced the timeout unlock flow to prevent it from being launched twice.
  • Enhanced the timeout unlock flow to work with Chrome Custom Tabs.
  • Fix flow step animation enablement to honor the system animation settings.
  • Bug fix: Fixed a bug where a secure flow step was no longer secure after having navigated back to a non-secure step.
  • Fixed several memory leaks.
  • Added Reset Client button on the Sign In screen for single-user apps.

Fiori Library 4.0.1 Update

  • Enhanced the error message that may occur during a QR code scan.
  • Fixed a potential memory leak that may occur during a QR code scan.
  • Fixed an issue that would cause the user email and passcode fields to overlap when large fonts were used on a device.
  • Fixed the KPI Header background color.
  • Fixed an issue related to the EULA background when a device is set to use dark theme.
  • Fixed an issue that would cause map legend items to continue to be displayed even after the corresponding markers have been removed.
  • Fixed an issue where custom priority icons weren't displayed for clustered map markers.
  • Fixed an issue that could prevent the underline and "X" mark from appearing properly in the Signature Capture Form Cell.
  • Fixed an issue that caused an incorrect color to be displayed for the Banner and Object Cell backgrounds when a device was set to use dark theme.
  • Fixed an issue that prevented the check mark icon from appearing on a selected Object Cell when multiselect mode was disabled.
  • Fixed several accessibility issues.

OData Library 4.0.1 Update

  • Bug fix: Fixed an issue where the client could not get the total count for the deep navigation property.
  • Bug fix: Fixed a proxy class generator issue. The fix improves the handling of generated "List" classes.
  • The HttpHeaders class now supports equality comparison.
  • Support for OData CSDL documents with Version="4.01", and support for the corresponding new JSON payload syntax that uses @xxx instead of @odata.xxx for OData "instance annotations".

Offline OData Library 4.0.1 Update

  • Bug fix: Fixed an issue that could cause the client to fail to initialize multiple offline stores in parallel.
  • Bug fix: Fixed an issue where API OfflineODataProvider.getPreviousUser() didn't work when the encryption key was not provided.

Foundation Library 4.0.0 Update

  • Add AppExtensionService class to support widget development.
  • Add multiUser property to AppConfig.
  • Add user logout and registration deletion APIs.
  • Support for application versioning.
  • Security fix: remove bearer token in the HTTP header after user is authenticated.

Flows Library 4.0.0 Update

  • Add biometric update in Sign In screen.
  • Add MDM_ONLY activation option for handling onboarding via MDM.
  • Add user logout flow.
  • Add registration deletion flow.
  • Support multiple user flag in the QR code.
  • Add custom flow steps during onboarding.
  • Add flow option to use Chrome custom tab or browser for OAuth authentication.
  • Add flow option to specify the onboarding screen orientation.
  • QR code reader screen works in both portrait and landscape modes.
  • Enhance restore flow for a single user app without a passcode policy.

Fiori Library 4.0.0 Update

  • QRCode view now supports customized validation for barcodes so that the client code can provide its own validation logic to assess the validity of a barcode, and can also return captured images to the client code when multiple barcodes are detected and scanned.
  • Add customization capability to Sign In screen.
  • Support for Fiori Horizon Theme.
  • The ObjectCell has been redesigned to be more responsive.
  • A new Privacy Notice component has been added to allow apps to communicate the reasoning behind various permission requests to end-users.
  • A new Scatter Chart type has been added to the Charts component.
  • Kotlin API documentation has been added for Fiori UI components.

SDK Wizard 4.0.0 Update

  • Support generating proxy classes only.
  • Add multiple user (shared devices) support.

Offline OData Library 4.0.0 Update

  • Add getLastDownloadTime() API and getLastUploadTime() API for OfflineODataProvider.
  • Add setDefiningQueryGroups() API to group defining queries from the client side.
  • Default encryption support for the offline store.
  • Provide additional OData version 4 feature support: Collection-valued property.

What's New in Release 3.4.8

Flows Library 3.4.8 Update

  • Added Reset Client button on the Sign In screen for single-user apps.

Foundation Library 3.4.8 Update

  • Bug fix: 'Remember Me' in WebView did not work.

What's New in Release 3.4.7

Foundation Library 3.4.7 Update

  • Bug fix: UsageService would crash when targeting Android 31.

Flows Library 3.4.7 Update

  • Bug fix: Translations were missing for some languages.

Onboarding Library 3.4.7 Update

  • Bug fix: Sign-in screen passcode input field was not responding to the soft keyboard done button.

Offline OData Library 3.4.7 Update

  • Bug fix: Fixed an issue that could cause the client to fail to initialize multiple offline stores in parallel.

Fiori Library 3.4.7 Update

  • Bug fix: Fixed an issue that would cause map legend items to continue to be displayed even after the corresponding markers have been removed.
  • Bug fix: Fixed an issue where custom priority icons weren't displayed for clustered map markers.

What's New in Release 3.4.6

Offline OData Library 3.4.6 Update

  • Bug fix: Fixed an issue that could cause the client to crash in Hungary and Poland locales.

Fiori Library 3.4.6 Update

  • Bug fix: Fixed an issue that prevented an application from setting a status icon to invisible.
  • Bug fix: Fixed an issue that would cause separator lines in a Data Table to overlap with content when an orientation change occurred.

OData Library 3.4.6 Update

  • Bug fix: Fixed an issue where the client could not get the total count number for the deep navigation property.
  • Bug fix: Fixed a proxy class generator issue, resulting in improved handling of generated "List" classes.
  • The HttpHeaders class now supports equality comparison.

What's New in Release 3.4.4

Foundation Library 3.4.4 Update

  • Additional APIs have been made available in UsageService to assist client code in managing usage sessions and events more easily.

Fiori Library 3.4.4 Update

  • Bug fix: Fixed a crash that may occur during barcode scanning when the device does not support a light sensor.

What's New in Release 3.4.3

Fiori Library 3.4.3 Update

  • Bug fix: Fixed an issue that could cause a crash for Malaysian or Vietnamese users.

What's New in Release 3.4.2

SDK Wizard 3.4.2 Update

  • Bug fix: Fixed an issue where rotating a device would cause MainBusinessActivity to restart.
  • Bug fix: Fixed an issue where applications would register the lifecycle twice.

Fiori Library 3.4.2 Update

  • Bug fix: Fixed an issue related to Object Header when using dark mode.
  • Bug fix: Fixed an issue that would cause a crash on devices running Android version 11 or 12 when attempting to create a photo attachment.

What's New in Release 3.4.1

Flows Library 3.4.1 Update

  • Bug fix: Fixed an issue that caused an occasional cross-context SSO with OAuth failure.

Fiori Library 3.4.1 Update

  • Bug fix: Addressed an accessibility issue related to the attachment form cell header.
  • Bug fix: Extraneous language resources were removed that could have prevented publishing applications to the Google Play Store using .AAB files.

What's New in Release 3.4.0

Foundation Library 3.4.0 Update

  • DeviceUser is now serializable.
  • createDeviceUserFromJsonString* has been added to convert a JSON string to the DeviceUser model.
  • toString of the DeviceUser model now returns JSON format.
  • Better support for the API key only-authentication type for client applications on the SAP Mobile Services, Cloud Foundry environment.
  • Provide support for a user, logged in via a desktop, to scan a generated QR code with their device to authenticate and complete the onboarding process.
  • New format for both the Java and Kotlin API reference documentation for better navigation and content searching.
  • OAuthClientPassword has been added to support the new OAuth client with a short-duration password.

Fiori UI Library 3.4.0 Update

  • A new chart type, Donut Chart, has been added.
  • A new Data Table View has been added to display tabular data on mobile devices.
  • Inline Signature Capture has been improved to provide a Cancel button.
  • An "Add Signature" layout is now provided for those applications that want to launch a separate dialog for signature collection.

Flows Library 3.4.0 Update

  • Passcode policy enhancement. If the current passcode used to unlock an app does not meet the updated passcode policy requirements, change passcode steps will be appended to the Sign In screen for the next login.
  • Automatically terminate the current onboarding flow if the offline encryption key cannot be retrieved from the server for a multiple-user mode mobile app.
  • New API added to let client code monitor the flow finish event more easily. onActivityResult is now deprecated.
  • New flow option added, getApplicationTheme, to let client code pass in the client theme to make the onboarding screens the same style as the client app.
  • New flow option added to enable/disable the QR code confirmation screen during onboarding. The previous method to control this via QRCodeReaderSettings is deprecated.
  • New flow option added, isApplyFioriStyleForCustomFlow, to enable/disable full screen mode for custom flows.
  • updateConsentStatus API added to UserSecureStoreDelegate to let client code update the usage and crash report user consent status. Better support for the API key only-authentication type for client applications on the SAP Mobile Services, Cloud Foundry environment.
  • Better dark theme support.
  • New format for both the Java and Kotlin API reference documentation for better navigation and content searching.
  • Flow.start has been enhanced to support apps configured with OAuthClientPassword and support cross-context SSO with OAuth.

Onboarding Library 3.4.0 Update

  • Improved design of the QR code confirmation screen.
  • skipQRConfirmScreen in QRReaderScreenSettings is deprecated.
  • Better theme/style customization support.
  • Logo height and width can now be customized along with the image resource.

SDK Wizard 3.4.0 Update

  • New Crash Report Consent option on the Settings screen, allowing users to revoke this consent after onboarding. If users enable this consent on the Settings screen, a consent screen will then be displayed, requesting the users' agreement.
  • Offline OData sample code has been refactored to improve the architecture and decouple the sync worker from the user interface components.
  • Added dark theme support.

Offline OData Library 3.4.0 Update

  • Support bound and unbound action with simple type parameters.
  • Support bound and unbound action with complex and entity type parameters.

What's New in Release 3.3.5

Foundation Library 3.3.5 Update

  • Bug fix: Web pages now show in new browser windows during onboarding.
  • Bug fix: Remove obsolete language folder values-sh.

Flows Library 3.3.5 Update

  • Bug fix: Style of status bar in onboarding pages is now correct.

Android Wizard 3.3.5 Update

  • Bug fix: Remove obsolete language folder values-sh in the generated project.

Fiori UI Library 3.3.5 Update

  • Bug fix: Months that require six lines to display will now render correctly in the Date Picker on smaller devices.
  • Bug fix: Sensitive information will no longer be displayed when the Extract UI is used.
  • Bug fix: A build error caused by the Kotlin Extensions component has been addressed.
  • Bug fix: Dark mode issues related to the Hierarchy View and Object Header have been addressed.
  • Bug fix: The KPIHeader will now render correctly when it is used in a dialog.
  • Bug fix: Applications can now customize the List Picker Activity title.
  • Bug fix: When using Talkback version 9.1, the keyboard will now be displayed correctly when accessing a SimplePropertyFormCell.
  • Bug fix: The obsolete language folder, values-sh has been removed.
  • Accessibility: The header on the AttachmentFormCell is now correctly labeled as such to facilitate screen reader navigation.

What's New in Release 3.3.4

Flows Library 3.3.4 Update

Bug fix: Clear passcode on the Sign In screen when the app is brought to foreground.

Foundation Library 3.3.4 Update

Offline encryption key retrieval API support on SAP Business Technology Platform, Neo environment..

Offline OData Library 3.3.4 Update

Fixed first user switch issue for UploadOnUserSwitch feature.

What's New in Release 3.3.3

Foundation Library 3.3.3 Update

Upgrade SQLCipher to 4.4.3 to avoid vulnerability issues.

OData Library 3.3.3 Update

Support instance annotations feature.

Flows Library 3.3.3 Update

  • Bug fix: App crashes when changing system language or font scale, or switching between dark and light mode.
  • Bug fix: App crashes after cancelling change/verify passcode flow then accessing the user secure store.
  • Show error message in the passcode input field on the Set Passcode screen instead of displaying with a toast.
  • Dark mode theme support.

What's New in Release 3.3.2

Flows Library Update

  • Additional callback functions have been added to FlowStateListener.
  • New callback function to support client code validation of QR codes.
  • Utilities to add unique interceptors to OkHttpClient.
  • AppConfig information is saved in FlowContextRegistry.flowContext after the onboarding/restore flow.
  • Both current and previous user information are saved in FlowContextRegistry.flowContext, so the client code no longer needs to save the switched user status.
  • Generate offline encryption key for offline mobile apps.
  • API provided to get the runtime multiple user mode, which was saved locally during the very first user onboarding.
  • API provided to get the user detail information in UserSecureStoreDelegate.
  • New options in FlowOptions to support the client code deciding whether to display an end user license agreement screen during onboarding or create a new account flow.
  • New option in FlowOptions to allow the client code to decide whether to have the confirmation dialog for reset flow.
  • New option in FlowOptions to allow the client code to disable the toast messages in a flow.
  • New flow added to support client code checking the passcode only.
  • Mobile app migration support to upgrade the current mobile app to adopt the flows component.

Fiori UI Library Update

  • The Date Picker will now be presented correctly on smaller devices.
  • Object Cells that are configured to display a character rather than an image will now display the character correctly if they are selected and then deselected.
  • Passcode-related input fields on the onboarding screens now do not allow an Android system to collect user input data and do not show suggestions on the soft keyboard.

What's New in Release 3.3.1

  • The WebView used to display the EULA now supports dark mode.
  • KeyValueCell now maintains its expanded/collapsed state during orientation changes, and allows for programmatic expand/collapse.
  • Fixed Wizard hanging issue during code generation for offline type and certificate-based authentication application.
  • Moved offline synchronization-related UI screens from generated client project into Fiori UI component.

What's New in Release 3.3.0

Foundation Library Update

  • When using LogService with onboarding flows2, logging configurations will be set by the log policy on mobile services.
  • ApplicationStates supports automatic checking of the state of the device network.
  • Added a new type of CertificateProvider, named ChooseCertificateProvider, which displays a popup dialog allowing the user to choose a certificate.
  • The application no longer needs to call android.app.Application.registerActivityLifecycleCallbacks with AppLifecycleCallbackHandler. It is now handled by the SDK.

Android Wizard Update

  • The Wizard will display a message prompting the user to upgrade the H2 database.

Fiori UI Update

  • QRCode view now supports multi-scan mode and can also be customized.
  • A new Inline Signature Capture Form Cell has been added to facilitate signature capture without needing to launch a separate dialog.
  • A new Persistent Footer has been added, placed below a Form Cell, which can be used to provide immediate actions to the user.

Flows Update

  • flows2 now supports multiple users.

Improved Offline OData Library Update

  • Support for UploadOnUserSwitch. If enabled, during a user switch (a second user opens the same store used by the previous user), the upload function will be called automatically inside the open function. During the upload, pending changes from the previous user will be executed in the OData back end using the previous user’s context.
  • A new parameter, note, has been added to the offline OData library APIs sendStore and sendEncryptedStore. This allows for a description to be added to the offline store when it is sent to the server.
  • Prior to SAP BTP SDK for Android version 3.3, property values were generated in the back end for a newly created entity during upload, and the client had to issue a download to explicitly update the generated properties for the entity. This is usually not a problem, as the app normally performs a download after upload to update the local store. With the new early_populate_backend_generated_values offline option, the client can get updated values immediately during upload without waiting for next download. This could help in some circumstances where the back end is slow and it's preferable that the app performs fewer downloads, if possible.

What's New in Release 3.2.6

Notable new or changed features for the SAP BTP SDK for Android version 3.2.6.

  • The WebViewActivity now supports a _blank attribute for the link target that opens the default browser and loads the URL.
  • The Kotlin Extension component dependency now has a specific version assigned to it in order to avoid building against an incompatible version.
  • Fixed an issue that caused an offline app failure after uploading a local request.

What's New in Release 3.2.5

Notable new or changed features for the SAP BTP SDK for Android version 3.2.5.

  • The 32-bit versions of the libodataofflinejni.so libraries have been added back to the offline OData component.

What's New in Release 3.2.4

Notable new or changed features for the SAP BTP SDK for Android version 3.2.4.

  • Fixed an issue that caused an app crash when handling a relationship with more than two navigation properties.

  • Fixed an issue that caused offline app failure on Android 6 devices.

  • Fixed an issue that prevented the Calendar Picker from being fully visible on devices with smaller screens.

What's New in Release 3.2.3

Notable new or changed features for the SAP BTP SDK for Android version 3.2.3.

  • Fixed an issue that caused flushing of the buffer to the database to be interrupted in some instances by upgrading the UltraLite database version to 17.0.10.6230.

  • Fixed an issue that caused the AttachmentFormCell label to be invisible in some cases.

What's New in Release 3.2.2

Notable new or changed features for the SAP BTP SDK for Android version 3.2.2.

  • An issue that caused applications using charts with small Y-axis increments (relative to the overall data range) to crash has been addressed.
  • GenericListPickerFormCell is more accessible when using screen readers.

What's New in Release 3.2.1

Notable new or changed features for the SAP BTP SDK for Android version 3.2.1.

  • SQLCipher version upgraded to 4.4.1 to avoid vulnerability issues.
  • The KPI Header is now laid out properly following an orientation change.
  • Using the ObjectCellSwipeControl with an unmatched key will no longer cause a crash.
  • Using a GridTable with a Header will no longer cause a crash.
  • The Map Preview Panel will now display all cells.
  • As of release 3.2.0, offline OData provides support for the OData Version 4 Enum type and Stream type properties. The descriptions for deleteStream, downloadStream, and uploadStream have been updated accordingly.

What's New in Release 3.2.0

Offline OData Library

  • Support to remove a non-stream defining query from the opened offline store when allow_defining_query_removal is enabled on the server.
  • Introduced new API getDefiningQueries from class OfflineODataProvider, which returns all existing defining queries.
  • Support localized progress default messages.

  • Support OData version 4 with two new features:

    • Enum type
    • Stream property
  • Support OData version 4 with the following limitations:

    • OData Atom (xml) is not supported
    • Content-ID referencing in body and Content-ID referencing across change sets are not supported
    • Binds for a collection of value navigation properties in a PATCH request are not supported
    • Modification operations in batches outside of change sets are not supported
    • Bound actions and functions are not supported
    • Unbound actions and functions are not supported
    • Collection properties are not supported
    • Spatial types are not supported
    • Singleton is not supported
    • Derived entities are not supported
    • Containment navigation properties are not supported
    • $filter operations on date (such as add and sub) are not supported
    • System query options $search and $index are not supported
    • Built-in functions or literals: case, $level, $all, $each, $it, and $root are not supported
    • Upserting an entity is not supported

Foundation Library

  • AppConfig and Auth related model classes are moved from Flows to Foundation library.
  • OkHttp library version upgraded to 4.8.0

Fiori UI Library

  • A new chart type, Stacked Column Chart, has been added.
  • The horizontal swipe functionality of the Object Cell has been enhanced to include different right and left actions.
  • The Onboarding component has been enhanced to include new biometrics screens.
  • The new version of the QR Code Scanner no longer depends upon Google Play Services.

Android Wizard

  • Application configuration has been moved to the sap_mobile_services.json file for central management.

  • An enhanced progress bar for offline apps has been implemented using the Offline OData Enhanced Progress API to display the current progress of various operations, such as initial open, upload and download.

  • Support for Android Studio 4.0.x and 4.1.x.

What's New in Release 3.1.4

Notable new or changed features for the SAP BTP SDK for Android version 3.1.4.

  • The signature line in the Signature Capture Form Cell will no longer be too short following an orientation change.

  • Object Header Tags will no longer be misaligned following an orientation change.

  • Following an orientation change, the correct Detail page of the Object Header will be displayed.

  • When running on an Android 11 device, the Object Header KPI caption will no longer be split between two lines.

  • Attachments that are programmatically added to an Attachment Form Cell will now display the correct MIME type icon.

  • The "No Data" text can now be customized on Chart Cards.

  • Duplicate or missing series titles will no longer prevent a data series from being displayed on a Chart Card.

  • The version of UltraLite used by the Offline OData component has been updated to 17.0.10.6175 in order to incorporate SSL version 1.1.1g.

  • Trend Titles on Chart Cards will no longer appear using the negative text style when they are positively trending.

  • The repository URL used by the Assistant has been changed to point to the new central repository.

What's New in Release 3.1.3

Notable new or changed features for the SAP BTP SDK for Android version 3.1.3.

  • The design of the Passport API is now aligned with iOS.

  • An issue where X-axis labels on Horizontal Bar Chart Cards would overlap has been addressed.

  • X-axis labels on Bar Charts will no longer be clipped.

What's New in Release 3.1.2

Notable new or changed features for the SAP BTP SDK for Android version 3.1.2.

  • The SAP BTP SDK Wizard for Android no longer generates a metadata parsing error when creating a new project against some back-end systems.

  • Minor issues with the Fiori theme for Dark Mode (including color and elevation) have been resolved.

  • Orientation changes related to Object Header are now handled correctly.

  • A memory leak in the Offline OData progress observer has been removed.

  • The CollectionViewAdapter can now be extended in Kotlin.

  • The maximum number of data points for a Column Chart Header with two data series is now three.

  • Status text is no longer clipped on the left-hand side for Chart Cards.

  • Charts now correctly handle empty data sets.

  • Chart Header alignment is now correct for right-to-left locales.

  • The default height of Buttons using the FioriButton style has been adjusted.

  • Various legend display issues in Charts have been addressed.

  • The minimum height for Timeline items has been adjusted.

What's New in Release 3.1.1

Notable new or changed features for the SAP BTP SDK for Android version 3.1.1.

  • The SAP BTP SDK Wizard for Android now supports Android Studio 4.0.

  • The OAuth Authentication Webview will now close properly if the redirect URL uses a 307 response code.

  • Czech and Polish translations have been added for Timeline and the Basic Authorization screen.

  • The Horizontal Bar Chart component will now display expanded Y-axis labels.

  • X-axis labels for Chart Content will now display consistently and won't overlap.

What's New in Release 3.1.0

  • Support for passport-based Correlation. This feature currently supports metering and integration/user monitoring via the passport header.

  • A basic authentication dialog popup to allow applications to handle the basic authentication challenge seamlessly and without extra effort.

  • A generated app using the Flows framework to abstract complex details of the underlying Fiori and Foundation frameworks.

  • A Timeline control that displays events and objects in chronological order. The control displays information as interactive cells, focusing on important information about the object or event. The control also allows the timeline view to be filtered or searched.

  • Multiple criteria sorting and filtering to allow sorting of a list view by multiple fields (primary, secondary, and tertiary sort fields). A visual indicator reflects the current sort order.

  • Horizontal Bar Chart component: This chart type displays horizontal bars aligned to the Y-axis. In contrast to the column chart, horizontal charts provide more space for displaying labels for the item type while still providing the measurement of discrete items.

  • A Signature Capture control to easily capture a user's signature. The control provides a view for the user to draw a free hand signature using touch, pencil, or stylus. Once the signature is captured it is saved as an image.

  • A Chart Header control that displays a chart view of data inside an object header. This can be used to provide at-a-glance information about an object to the end user (this chart type can only be used inside an Object Header).

  • A Horizontal Fit Collection control for content to be displayed in a single horizontal line. In contrast with horizontal scroll, this control does not scroll horizontally.

  • Allow a chart card to be read-only and provide support for a ‘listener’ callback when a user taps on the control. The control also allows X-axis and Y-axis labels to be null, while auto-generating Y-axis incremental steps.

  • Redesigned Flows framework (version 2.0), designed to use the best practices and design patterns of Android Architecture Components. Flows version 1.0 is now deprecated and it is highly recommended to adopt the Flows 2.0 interface.

  • Enhanced Cancel Download API: Cancel download processes individually by using a specified cancelToken object. The server will be notified and cancel the ongoing downloading process.

  • Enhanced Progress API: Provide greater details about the progress of various operations, such as initial open, upload, download, and send store.

  • Send Store API: Send a decrypted offline store to the server.

  • Support for Android Studio 3.6.X. This contains code generation changes required to support the new project template in Android Studio 3.6.


Last update: September 7, 2022