cancel
Showing results for 
Search instead for 
Did you mean: 

SAP MDK Capabilities

Cristian
Participant
0 Kudos

Hi experts,

We are appraising different options for the development of mobile apps (medium/high complexity) based on HTML5 with offline capabilities. The creation of native apps (IOS/Android) has been discarded.

We have several doubts about SAP MDK which I would like to share here for assistance:

- Does SAP MDK support the creation of HTML5 Fiori-Like applications? I guess so, but just to confirm.

- If supports the creation of HTML Fiori-Like apps, how offline capabilities can be added to the application?

- Is it mandatory to have licensed SAP BTP Mobile Services?

- Being a Low-Code solution, does it fits for the development of medium-high complex applications? Or is it just useful for not complex applications?

Other options we are appraising:

- UI5 Free-Style packed in Apache Cordova container for offline capabilities.

- UI5 Free-Style with Service Worker (PWA).

SAP Build has been discarded too because does not provide off-line capabilities yet and we are confident it could manage the creation of medium/complex apps not suited for citizen developers.

Other options worth taking into account?

Many thanks in advanced!

Regards,

M.

View Entire Topic
robinkuck
Product and Topic Expert
Product and Topic Expert

Hi int_suite_test57,

below you can find the answers to your questions:

1. Does SAP MDK support the creation of HTML5 Fiori-Like applications?

SAP MDK is used to build cross-platform applications which means that for mobile (iOS and Android) a native user interface is displayed, for the MDK web runtime however this is not the case and here an HTML5 based approach is used. For all three types of platforms the Fiori design language is used but with slight differences depending on the platform (check following page for more details about the UI controls and patterns being used on the different platforms: https://experience.sap.com/fiori-design/)

2. If supports the creation of HTML Fiori-Like apps, how offline capabilities can be added to the application?

Offline capabilities are only available for mobile clients of SAP MDK, but not for the MDK Web runtime

3. Is it mandatory to have licensed SAP BTP Mobile Services?

Yes

4. Being a Low-Code solution, does it fits for the development of medium-high complex applications? Or is it just useful for not complex applications?

SAP MDK can be used for both less-complex and high-complex applications. It also has the ability to build extension controls and to add native code which might be relevant if certain functionality is not provided out of the box by SAP MDK (e.g. NFC tag-reading, etc.). For a reference example for high-complex application based on SAP MDK and with extension controls you can check out the SAP Service and Asset Manager application which is available in the public App Store: https://apps.apple.com/us/app/sap-service-and-asset-manager/id1314568950)

The big advantage of SAP MDK and SAP BTP SDKs is that it provides the full functionality for offline applications like synchronization, error handling etc. out of the box. For apps that only cache certain amount of data which is not getting modified in offline state the Service Worker approrach might be suitable as well.

Hope that helps. BR, Robin

Cristian
Participant
0 Kudos

Many thanks kucki99 for your great response.

One additional question, when you add additional code for the web runtime version, is that UI5 javascript?

Regards,

C.

robinkuck
Product and Topic Expert
Product and Topic Expert
0 Kudos

int_suite_test57 No, the SAP MDK metadata compiles to a web application based on React including UI5 web components as UI controls but there is no way to add additional React code which is not part of SAP MDK metadata.

bill_froelich
Product and Topic Expert
Product and Topic Expert

Adding to Robin's answers..

1. Does SAP MDK support the creation of HTML5 Fiori-Like applications?

If you are reviewing the UI controls on the experience site, please keep in mind that MDK does not currently support every control and the names in MDK may be different.

2. If supports the creation of HTML Fiori-Like apps, how offline capabilities can be added to the application?

MDK provides out of the box support for offline odata using a v2 or v4 odata service. Offline odata stores transactions locally on the device and provides an upload action to send them to the backend. Download utilizes delta tokens to only retrieve data updated since the last sync. As a result, for optimal use the backend service needs to support delta token handling but offline can still be used without backend delta token support.


I would also encourage you to check out the MDK tutorials