What's New¶
Mobile Development Kit Client 24.7.3¶
iOS Specific:
- Fixed application crashes caused by an invalid action bar item
- Fixed the issue where the side drawer appeared empty after a redraw
- Fixed application crashes caused by parallel sectioned table and section redraw
- Fixed the issue where the caption set via
setCaptionAPI disappeared when users returned to the page - Fixed the horizontal scrolling issue observed in card collection
- Fixed the open document crash issue in certain scenarios
- Update SAP BTP SDK for iOS to patch 24.4.4
Android Specific:
- Fixed the
BAD_ENCRYPTION_KEYissue that occurred during app upgrades - Fixed the issue where the card collection media could not be expanded
- Fixed the issue where the
OnSelectionChangedevent was not triggered during selection - Fixed the issue where the Fiori toolbar was rendered without any items
- Fixed the height issue observed in the data table section
- Fixed the header height issue observed when there are too many items in the header
- Fixed the rendering issue observed in the extension section
- Update SAP BTP SDK for Android to patch 24.4.10
Web Specific:
- Fixed the get region issue
Mobile Development Kit Client 24.7.2¶
General Fixes:
- Fixed the issue where the modal page did not open after closing the popover
iOS Specific:
- Fixed the app crashes that occurred while executing the Open Document action
- Fixed the app crashes that occurred when resuming the application to a page that contains Profile Header and Tab page
- Fixed the issue where the activated search bar disappeared when the caption was updated
- Fixed the rendering issue in the Fiori Toolbar
- Fixed the padding issue observed in the search bar and filter feedback bar in tablet mode
- Fixed the logout failure issues that occur after removing the app from BTP
- Added support to allow Swift Package Manager (SPM) packages to be specified in a custom branded client
- Update SAP BTP SDK for iOS to patch 24.4.3
Android Specific:
- Fixed the app crashes that occurred when modifying a previously captured signature using Signature Capture Form Cell
- Update SAP BTP SDK for Android to patch 24.4.8
Web Specific:
- Fixed the blank screen issue in
ListPickerthat occurred when no items were available - Improved the
getSelectedDateAPI and theOnSelectedDateChangeevent in the Calendar control
Mobile Development Kit Client 24.7.1¶
- Resolved application crashes that occurred when launching the app on an iOS device with an undefined
NativeScriptViewFactory
Mobile Development Kit Client 24.7¶
Minimum OS version requirements for this release:
- iOS/iPadOS 16.x and iOS/iPadOS 17.x (It has been tested with Xcode 15.3, iOS/iPadOS 17.4)
- Android OS 8.0 or newer (It has been tested with Android 12/13/14)
New and enhanced features available with the Mobile Development Kit Client 24.7
New UI Controls¶
Fiori Card Collection¶
We have introduced a new UI element called the CardCollection section. This feature is essentially a collection of cards that offers concise, related information, serving as a gateway to detailed content. The card system provides enhanced customization and flexibility, including adaptable sizing options to accommodate various form factors and layouts, such as horizontal scroll, vertical list, or masonry layouts. For more information, refer to this document.
Enhancements¶
Select Multiple Attachments¶
Attachment FormCell has been enhanced to allow users to select multiple files at once. This enhancement applies to both iOS and Android platforms.
Support Column-Specific Editing¶
We are introducing a new value called None for the EditType property of the DataTable control. Columns with this EditType will be non-editable. But you can use a rule to programmatically allow edits for specific cells in the table.
Banner Semantics and Custom Styling¶
With this release, we have introduced two new styling properties for BannerMessage and ProgressBanner Action – Styles and Semantic. Semantic can be used to apply semantic colors to the banner, while Styles can be used to customize the banner end-to-end. Users can also style the different states (Progress/Completion) of the ProgressBanner individually. This enhancement is only available on iOS and Android.
Note
The default style for BannerMessage has been updated: iOS: Text and stripe color has been updated to gray. Android: Text color has been updated to gray.
Background-Color Styling for Images and Icons¶
With this release, we support background-color styling option for images and icons in the following Mobile Development Kit controls:
ObjectCellGridRowItemof theGridTableObjectHeaderKPIHeaderProfileHeaderContactCellObjectCardCardofCardCollection(iOS)- Button Table's
ButtonItem(iOS) FormCell Button(iOS)ImageSection- Image Collection's
ImageCell
Caption Support for Note FormCell Control¶
Note FormCell control has been enhanced to support caption and its associated styling options. For more information, refer to this document.
Multi-Column Grid Layout in a Form Cell Section¶
The Form Cell Section has been enhanced to allow form cells to be used in a collection view, presenting them in a multi-column layout. Unlike other sections, the form section only supports a vertical layout. To customize the UI layout, we have introduced two new properties NumberOfColumns and MinimumInteritemSpacing. For more information, refer to this document.
Button Table, Section Header and Section Footer¶
New Proxy Classes¶
We have introduced the following proxy classes for Button Table, Section Header, and Section Footer:
ButtonTableProxyButtonTableButtonProxySectionHeaderProxySectionHeaderButtonProxySectionHeaderIconProxySectionHeaderLabelProxySectionFooterProxy
The above-mentioned classes support the following methods:
getName()getType()redraw()getParent()
Note
The SectionProxy class, along with all proxy classes that extend the ControlProxy class, supports the getParent() method.
We have introduced the following APIs for SectionHeaderIconProxy and SectionHeaderLabelProxy:
getVisible()setVisible()
We have introduced the following APIs for SectionHeaderButtonProxy:
getEnabled()setEnabled()getVisible()setVisible()
Note
Using the new APIs setVisible() or setEnabled() will automatically trigger a section redraw to reflect the changes.
New Types¶
We have introduced the following types for Button Table, Section Header, and Section Footer:
SectionCommon.Type.HeaderSectionCommon.Type.FooterButtonTable.Type.Button
Accessing Extension Control Instance¶
We have introduced a new API getExtension() in the new class ExtensionFormCellProxy that allows the users to access the extension control instance of the ExtensionFormCell.
getExtensions() API for SectionProxy:
- Three new proxy classes -
ExtensionSectionProxy,ObjectCollectionSectionProxy, andObjectHeaderSectionProxy, have been introduced as subclasses of the existingSectionProxy. ExtensionSectionProxywill include thegetExtension()API, as the metadata definition allows for only one extension-based API.ObjectCollectionSectionProxyandObjectHeaderSectionProxywill include thegetExtensions()API, as the extensions are defined as an array in the metadata definition. The existing APIgetExtensions()ofSectionProxywill be deprecated, and when invoked, will return an empty array.
New APIs¶
ODataProviderProxy APIs¶
refreshMetadata() API for ODataProviderProxy¶
We have added a new API refreshMetadata() that checks the compatibility between the current metadata and the $metadata in the backend server. If there are no conflicts, the $metadata is updated automatically.
This API returns a boolean value indicating whether the $metadata was updated successfully. Note that any $metadata changes happening in the backend server after initializing the data service for the first time will not be reflected unless the refreshMetadata() API is explicitly called.
Accessing OData Service Metadata Document ($metadata)¶
We have introduced a new API called getMetadata() for ODataProviderProxy. When invoked, this API will return a new CsdlDocumentProxy, through which the users can access the $metadata of both offline and online OData services on both iOS and Android. For more information on CSDLOptions, refer to this document.
This new proxy class provides the following APIs:
getOriginalText()- Returns the original$metadatacontent as XML strings.getResolvedText()- Returns the resolved$metadatacontent as XML strings with inline references and expanded aliases.getVersionCode()- Returns the OData service version as an integer after being multiplied by 100.getVersionText()- Returns the OData service version as a string.getCompactXML()- Returns the$metadatacontent as compact XML strings.
Client APIs For SectionedTableProxy¶
With this release, we are introducing two new client APIs getFilterActionResult() and getSorterActionResult() in SectionedTableProxy. These APIs are designed to resolve the OData query strings based on the FilterCriteria array applied to the current SectionedTable. OData query strings typically start with $filter= or $orderby=.
Mobile Development Kit Editor 2408¶
| Title | Type | Environment | Description | Available as of |
|---|---|---|---|---|
| Added support for selecting multiple destinations from the project wizard | New | Cloud Foundry (SAP Business Application Studio) | Support Multiple Destinations from project Wizard | Aug 29, 2024 |
| Added support for deploying Mobile Development Kit metadata on Windows client (for SAP Service & Asset Manager application only) | New | Cloud Foundry (SAP Business Application Studio) | Support Deploying Mobile Development Kit metadata on Windows Client | Aug 29, 2024 |