Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
LudoNoens
Product and Topic Expert
Product and Topic Expert
Update 3 April 2020: moved the best practices, frequently asked questions and tips and tricks to a separate blog post.

Update 24 September 2019: Our Mobile Services Cloud Build Service has been updated to use Kapsel SDK 3.1 SP02 PL08. This version includes fixes for iOS 13 and Android 64-bit (offline library), in addition to other fixes.

 

With this blog post I want to update users who are developing hybrid mobile apps in SAP Web IDE Full-Stack on the latest changes in Hybrid Application Toolkit (HAT), for which I am in the role of Product Owner.

It's been a while since we have created a release for the Hybrid Application Toolkit extension in SAP Web IDE Full-Stack. This month we are releasing version 1.32. We did release a couple of patches in the past year, but this was nothing major. In this blog, I am going to discuss what's new, and also highlight a number of small improvements we've made in the past year. Last but not least, I have added a "Frequently Asked Questions" and a "Tips and Tricks" section.

Before I jump into the details, I want to provide you one important recommendation:
When you start developing a new mobile app, we strongly recommend that you consider developing this with either MDK (Mobile Development Kit) for cross platform applications, or our native SDKs (SAP Cloud Platform SDK for iOS or SAP Cloud Platform SDK for Android).

What are the biggest changes in this latest release ?


With Hybrid Application Toolkit version 1.32 we are now allowing hybrid app developers to make changes to code and files which were previously generated on our cloud build service. All the details can be found in our online help. By giving developers access to these files in their SAP Web IDE project, they are now able to configure and tweak the application to their needs:

  1. You are now able to select, but more importantly also unselect Cordova and Kapsel plugins. Previously your application would by default include a relatively large set of plugins. You can now tweak this to your own needs (e.g. to remove redundant plugins or plugins that give conflicts with others).

  2. You can now modify hybrid app settings and behaviour by editing the config.xml file.

  3. You can now edit the appConfig.js file, which contains your app's configuration settings used at runtime. We do not recommend changing the contents of this file. Only advanced users might have a need to change this.

  4. You can modify appRoutes.js, which is used to route your app's data flow.


The above explanation might not be very clear for everyone, so let's use an example to go through some of the details. Since I've already published a blog about creating an offline app here, I will not duplicate this. Instead, I'll create a CRUD app that only works in online mode.
Please be aware that for existing projects, you will need to re-enable it as a Hybrid Mobile Project. Make sure you have a copy of the current mobile folder in your project before doing this step.

Creating an online CRUD mobile app


Let's start with something that is actually optional (you can skip this step): a fresh workspace in SAP Web IDE. In case you are not aware, you can create multiple workspaces. This will help you keep your workspace organised. Go to the menu Tools > Workspace Manager and select "Create Workspace". Once you open the new workspace, ensure the HAT extension is enabled.



Now we will create a new project from a template.



In the template selection dialog, we select the CRUD Master-Detail Application template that I've also used for the offline app blog.

Note that you now have a dropdown for selecting the environment. In this case, you have to select Neo. Other environments are not supported. We are looking into Cloud Foundry support, but this is currently still a roadmap item. With some manual work, it is possible to create hybrid mobile apps that work with Mobile Services on Cloud Foundry though.

Another thing to keep in mind is the SAP UI5 version selected here. This is the version on which the templates are based. This does not mean your app will actual load this version of the UI5 libraries. The latter actually depends on settings in the Portal (if you deploy the web app to Cloud Platform), or in case of Packaged mobile apps, it depends on the version included in the packaged app. More on this in the next section.



In the next step, we will provide some basic information regarding the application.

Note that the template requires you to provide the Application Component Hierarchy. However, in the mobile app this is not relevant. You can use any 3 letter combination to get passed this.



For the data connection settings, I am using a destination created on SAP Cloud Platform, pointing to the mobile services sample OData service. If you don't know how to create this, please check this tutorial on the SAP Developers Center.



For the template customisation, I will use the same data binding as used in the offline blog.





After selecting Finish, the project is created in the workspace.



If you want to test the web application, you just hit the run button and run the app as Fiori Launchpad Sandbox. If this doesn't work, you should resolve this problem first, before proceeding with the next steps. Remember that debugging and solving issues on a web application is way easier than debugging a mobile app running on a device.

Converting the web app into a mobile app


Now that we have a working web application, let's turn this into a mobile app. The first step is to enable this project as a Hybrid Mobile project.



This step will create a folder named "mobile" in your project. In HAT 1.32 we also introduce 3 new files: config.xml , mobile/appConfig.js and mobile/appRoutes.js. The mobile folder contains the source files related to the mobile app. You can still deploy the web application (stored in the webapp folder) to SAP Cloud Platform and run it as a web application.



Note that some of these newly introduced files contain placeholder values. These values will automatically be replaced after you trigger a mobile cloud build. Once this build is done and the application is generated on Mobile Services, you will see the values used for your application. If needed, you can change them after this.

Below is the generated appConfig.js file with placeholder values. This file contains configuration details which were related to Fiori Client. Our current Cloud Build does not add the Fiori Client plugin, but we've borrowed some of its configuration format. Previously, this file was generated by Mobile Services and used during the cloud build process. As a developer, you had no access to this file. Now, you can change it in SAP Web IDE.

HOWEVER, in general, this file should not be modified manually. Instead, it is recommended to use the Mobile Services admin cockpit to make changes to the application's settings (e.g. authentication settings). When you trigger a new mobile build, these values will automatically be reflected in this file.



Another file which was generated during the build process is appRoutes.js. This configuration file is used to route the data flow for your application, by specifying the destination and path to be used. More details can be found in our online documentation.



The most important file getting exposed in this release is config.xml. This is a file used by Apache Cordova to build the hybrid app and contains various settings, including the Cordova plugin list. It is a global configuration file that controls various aspects of the Cordova application's behaviour. Some portions of this file will be updated automatically by the HAT plugin (e.g. splash screen and icon image selection, plugin selection). In general, we recommend that you do not touch this file. For special cases, advanced developers are able to change the file manually as well.

The config.xml allows you to change your application's settings. For example:

  • access : define external domains the app is allowed to communicate with

  • allow-navigation : controls which URLs the web view in the container can be navigated to

  • allow-intent : controls which URLs the app is allowed to ask the system to open

  • plugin : specify which plugin to add. You can also specify the version number (limited to the public plugins; not the default / Kapsel plugins). We recommend using the Plugin selection UI instead.

  • preference : here you can define a wide range of options as pairs of name/value attributes. Many of them are unique to a certain platform.

  • param : can be used to specify certain plugin parameters.

  • config-file : this allows you to modify the platform specific configuration files AndroidManifest.xml and info.plist. More details can be found in the Apache Cordova documentation here.


More details on the settings that can be used in config.xml can be found in the Apache Cordova documentation.
Warning: changing this file manually can result in failing builds. I recommend keeping your project under revision control (should be part of any developer's way of working anyway) and roll back your changes if the cloud build fails due to modifications you've made in this file. Remember that your build environment is probably sitting on the other side of the world, and it is pretty troublesome to debug that.



Let's take a look and see what has changed for the plugin selection.



Previously, there was a relatively large set of Kapsel plugins and public Cordova plugins added into the hybrid mobile apps. We have reduced the amount of default selected plugins and we now allow you to remove them if you think they are not required. This can save you a bit of application footprint.



We have also introduced a tab where you can see the Kapsel plugins, and allow you to select or unselect them. Please be careful when removing plugins. Your application might compile and build just fine, but fail at runtime due to missing plugins.

In the Public tab, you can search and select public plugins available in the public NPM repository. At the moment there are more than 4000 plugins to choose from. Some of these plugins might conflict with other plugins. So it is good to be able to select or unselect any plugin.

The plugin selection will be stored in your project's config.xml file. If for some reason the plugin you are interested in is not selectable in our dialog, then you are still able to add it manually in the config.xml file. In general, we recommend using the Plugin selection UI instead.



Now that we are done with the plugin selection, let's go ahead and build the packaged app.



In the first step of the build wizard you can provide information about the mobile app.

Previously, the application version was automatically generated and increased. We have recently added the ability to specify the version manually.



In the platform settings, you can select for which platform you want to build the application. We only support iOS and Android here. The Windows platform is not supported with our Cloud Build Service.



Note that you can opt for saving the Xcode and Android Studio projects as generated by us on the Cloud Build Service. Once the build is done and the files stored in our cloud service, you can download them to your machine and use them to develop the application locally.

Since these Xcode and Android Studio project are huge, it will take quite some time to store and retrieve them. You should only make use of this option when it is really required.

UI5 libraries


Another topic is the UI5 version to be packaged. As you can see, you can select only a limited set. Over time, we will pick certain new versions to be included in this list (and drop older ones). We have validated that the versions selectable work on mobile with the SAP Web IDE templates we support. As this is producing quite some overhead, we have limited the update cycle.

One of the challenges with UI5 is that it keeps on evolving and growing in size. What we include in the packaged apps is a curated set of libraries, relevant for most apps created for mobile. It is quite likely that we include more libraries than YOUR application needs. As a result, the footprint of the app is relatively large. Unfortunately, we don't have a safe way to remove libraries deemed redundant. If a library is actually required by an application and we did not include it, it will only show up as a problem at runtime. So, yes, the apps are large; and there is not much we can do about this with cloud build. If you really want to strip down the UI5 libraries in your application, then you can do this manually. Simply download the Xcode and Android Studio project and remove some of the folders in the resources folder. But again, you are taking a risk here that your app fails at runtime.



 

Cloud Build Service with Mobile Services


Since we are not going to use Push Notifications in this example, we can now proceed with building the app.

The build progress will be visible in the SAP Web IDE console.



As you can see, building and storing this iOS app in the cloud only took a few minutes. Depending on your location, the downloading will probably take a bit longer though.

When the build is finished, a dialog will pop up showing you a QR code and 2 hyperlinks for downloading the binary and optionally the project files. By scanning the QR code on your device, you can download and install the application directly onto your device. No wires needed.

Note that the download can sometimes fail due to network conditions. If you are using the Firefox browser, you will be able to resume a failed download (note that this won't work with the Chrome browser).



 

Once you have installed the application on your device, you can start your testing.

 

What's next ?


As indicated above, we have one topic on our roadmap: supporting Cloud Foundry environments. Since we are aiming to support multi-cloud scenarios, it is possible that customers want to use Mobile Services on Cloud Foundry, instead of Neo.

As stated, it is a roadmap item. I cannot confirm delivery at this point, and don't have a target date for this. Meanwhile however, you can actually build your hybrid mobile apps with our services available on Neo. It does require some more manual steps to configure the application to work with Mobile Services on Cloud Foundry. The details are described in this blog.

With respect to features, we actually consider HAT to have matured and therefore do not intend to add more features.

 

Reporting issues


I will not be monitoring this blog very frequently, so in case you run into issues with our SAP Web IDE extension or Cloud Build Service triggered via SAP Web IDE, please raise a support ticket for component CA-WDE-MOB.

If you have questions, feel free to comment down below. Again, please don't expect instant answers.

 

Regards,

Ludo Noens - Product Owner, Hybrid Application Toolkit
67 Comments
Krishnakumar
Product and Topic Expert
Product and Topic Expert
0 Kudos
Thanks for the blog.

In the build wizard, while on second step -  configure mobile build settings, I am getting an error "fail to get minimum os version" This is not defaulted and the drop down is also blank . Any clue on what could be the issue and how to resolve?



 

Regards,

Krishnakumar
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Krishnakumar,

Please let me know on which landscape you are seeing this.

Thanks,
Ludo
samir_nigam
Explorer
0 Kudos
Hi Krishnakumar,

Could you please try again. If problem still persists, could you create a BCP ticket for MOB-CLD-BLD component - with details such as build log, error screenshot, etc. Also let us know which SAP Cloud Platform landscape/region you are using?

Thanks,
Samir
0 Kudos

Hi Ludo,

How can i hidden passcode screen in my app?

former_member511960
Participant
0 Kudos
Hi Ludo,

Getting the below error while generating the build

 



 

Any inpus on this ?
Hi Angel,

 

To disable the passcode screen for a packaged app, add one line in the mobile/hybrid/sap-mobile-hybrid.js like below.



 

To disable the passcode screen for a custom Fiori Client app, modify the "disablePasscode" property in the appConfig.js file.
	"disablePasscode": true,

 

Save the file change and then rebuild your app.

 

Regards,

Zhigao
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Anil,

We are in the process of releasing a patch to fix this problem. While waiting for that fix, please do the following to ensure the styling of your app is correct :

Add this line to the SAPUI5 bootstrap <script> in mobile/index.html:

data-sap-ui-xx-lesssupport="true"

Thanks,
Ludo

former_member511960
Participant
0 Kudos
Hi Ludo,

Thanks for the reply.

The above code (data-sap-ui-xx-lesssupport="true") is coming bydefault in mobile index.html file if we enable the project as Hybrid Mobile Project and still it is throwing the same error 😞



Please suggest.
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Anil,

We have released a patch to fix it. Hybrid Application Toolkit version 1.32.1 is now available on productive landscapes.

Regards,
Ludo
Krishnakumar
Product and Topic Expert
Product and Topic Expert
0 Kudos
Issue was noted on trial landscape. Now its good. Thank you.
Krishnakumar
Product and Topic Expert
Product and Topic Expert
0 Kudos
Thank you Samir. Its good now and I can build the application today.
former_member511960
Participant
Hi Ludo,

Its working now.Thanks for the quick fix:).

KR,

Anil
0 Kudos
Hi Ludo,

 

I have got current user, but the request returns 403. What is the reason this error?
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Angel,

The information you are providing here is not sufficient to provide a reasonable answer. Please check the app's configuration settings and logs in the Mobile Services admin cockpit.

Thanks,
Ludo
0 Kudos
Hi Ludo!

 

I have a problem using the offline capabilities of HAT. When I'm trying to open the offlineStore I get a HTTP 404 within the URL of my destination in the SAP CP ms:

"[-10210] The operation failed due to an error on the server: -857 (SERVER_SYNCHRONIZATION_ERROR) ([-10225] Message: User exception: [-100025] An error occurred while communicating with the OData server to retrieve the result of request "https://mobile-e1a...b.eu2....../$metadata".
Error caused by: [-100010] Retrieve metadata failed because the OData server returned HTTP code, 404, with message: null)"

If I follow the URL of the destination then I get a HTTP 403 with following error:

HTTP Status 403 - Neither Application connection id nor Application id is provided.


Before this update of HAT my app had worked also offline (I have followed your blog from last year) but now it seems that the destination can not be resolved successfully and the load of the $metadata from the FSD failed.

Do you have some tipps or any approaches for debugging my app?

 

Regards,

Daniel
LudoNoens
Product and Topic Expert
Product and Topic Expert
Hi Daniel,

I recommend using the trace functionality available in the Mobile Services admin cockpit to check the communication between the mobile app and Mobile Services, and between Mobile Services and the backend.

The offline plugin communicates over Mobilink, which will not show up in your browser's network trace.

Thanks,
Ludo
0 Kudos
Hi Ludo,

thank your for your fast reply.

If I execute an "OData Application Destination Test" in the Mobile Services -> My app -> Connectivity I recieve data from my OData Service published on the FSD:





But here i need to enter the relative service path, is it possible that exactly this path is missing somewhere in my configuration?

Thanks,

Daniel
LudoNoens
Product and Topic Expert
Product and Topic Expert
Hi Daniel,

That’s why I suggest to use Network Traces (See Analytics tab in Mobile Services cockpit). It will show you exactly which path is being used.

Other debug options are described here: https://blogs.sap.com/2017/07/20/mobile-services-debugging-and-root-cause-analysis-walkthrough/

Regards,

Ludo
0 Kudos

Thanks! I have started the trace and found an entry with the URL for the GET-Request of the $metadata:

I think the problem is that this relative ODataPath between server URL and /$metadata, as in my last reply described, is missing somewhere and that’s why the metadata file couldn’t be loaded.

Whats your opinion on this output?

Regards,

Daniel

EDIT: Response is a HTTP 404 - Not Found with the Messages:

"What happened? URL call was terminated because the corresponding service is not available."

"Note: The termination occurred in system with error code <b>404</b> and for the reason <b>Not found</b>."

"What can I do?: Select a valid URL"

LudoNoens
Product and Topic Expert
Product and Topic Expert
Can you check whether the correct path is set in the manifest.json in your webapp folder in SAP Web IDE?
0 Kudos
Hi Ludo!

I have found out what the problem was. The SCP ms can not resolve the relative path to the OData Service. I had to add the service with the nodes at my FSD to the destination URL in the SCP.

Now the OfflineStore is created, but the next problem is, that every call is made against the online OData Service.

As error I only get "HTTP failed 0,," which is really not meaningful to me.

Do you have any ideas?

Thanks,
Daniel
LudoNoens
Product and Topic Expert
Product and Topic Expert

Hi Daniel,

If the calls are made against the online OData service, then there is a mismatch between the path used to access this data, and the serviceRoot defined when you’ve created the offline store. We are basically intercepting the calls to the OData service and if the path matches the one defined for the offline store, then we will direct them to the offline store. In all other cases, we assume the service is online.

Possible solutions for your case:

  1. Check the serviceRoot defined in createStores.js and make sure it matches your updated path.
  2. If you have already run your app on-device and it created an offline store, then you need to delete it. I recommend deleting the app, and if you are using Android, ensure the app data is deleted as well. Note that overwriting an existing app with an updated version will not clear that offline store.

The code responsible for constructing the path resides in index.html. You can set a breakpoint there and check what path is being constructed.

Hope this helps.

Cheers,
Ludo

martinkoch
Active Participant
0 Kudos
Dear Ludo,

thanks for the great explaination. A stupid question from my side. If i have a model in the manifest.json with the defaultOperationMode property set to server - does this interfere with the Offline functionality ?

Thanks!

Best regards,
Martin
LudoNoens
Product and Topic Expert
Product and Topic Expert
I think it doesn't matter, but frankly speaking, I'm not an expert on model definitions.

Regards,
Ludo
0 Kudos
the problem is when i exit app. Later i open the app, that show screen login.. Do you have anyidea  about it.
0 Kudos
Hi Ludo!

Thank you for your help.

My next question would be, why the generated APK is a 32-bit version and how can I change it to a 64-bit? The Google Store require APKs that are 64-bit. Or ist this change on the roadmap for HAT or SAP CP ms?

Cheers,

Daniel
former_member293206
Discoverer
0 Kudos
Would you recommend SAP Web IDE Full-Stack With HAT, as the right version for developing desktop Fiori Apps and Mobile Fiori Apps with native and offline functionality. Our customer uses on-premise system, without connection to the internet. The SAP Systems is within a closed network for security reasons. The backend system is Abap 7.5 HDB ECC EhP8. The frontend server and web dispatcher implemented as hub.

tia Benny
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Benny,

May I assume that your customer is already making use of SAP Mobile Platform, on-premise?

Your customer is not keen on using cloud services. What we provide with SAP Web IDE Full-Stack with HAT are in fact cloud services for developing mobile apps. You develop the apps in the cloud, build them in the cloud and deploy to Mobile Services in the cloud. As we have phased out HAT local add-on, we no longer support the on-premise scenario in SAP Web IDE.

SAP Web IDE Full-Stack might still be a valid option for prototyping and getting started quickly. But once development gets into full swing, I recommend switching to a local (some call it on-premise) environment. In this case, you can use the SAP Mobile SDK (Kapsel) and any IDE you like (e.g. VSCode). It does require some more hands-on work with Apache Cordova.

Regards,
Ludo
former_member293206
Discoverer
0 Kudos
Hi Ludo, Thanks for your quick response. Your assumption is right, our customer is using SAP Netweaver Mobile 7.1 and dedicated Handscanner. As both hardware and SAP NWM soon is outdated, the customer looking into SAP Fiori solution on a Secure Tablet. Due to the restriction of closed network, we think that we might be able to use SAP HANA Studio, elicpse, ADT and SAP Web IDE for Hana. Therefore we have to install/activate SAP HANA XS with SAP Web IDE for HANA. We do not believe that SMP 3.0 would be the right solution, as we think that SP 3.0 has a shorter lifetime. What do you think. The customer like this so-called on-premise environment. Natually we have to build our custom Fiori Mobile Client, including Kapsel and perhaps make some more hands-on work with Apache Cordova. Are we an the right track ?
0 Kudos
Hi lnoens

Can you please elaborate on how to include npm plugins into custom Fiori Client. I read your last years  blog on creating custom Client with webIDE,  but there is no explanation how to include selected plugins with fiori client. Like if I want to access root certificate  as authentication method on iOS by utilizing this plugin?

 

Thanks, Shanir
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Shanir,

The steps to add a plugin are described in this blog post.

Open the context menu on your Custom Fiori Client project in SAP Web IDE, select Mobile > Select Cordova Plugins

In the dialog, select the Public tab and search for AirWatch. The plugin you've mentioned is part of the search result.

The plugin's documentation indicates that you need to add an entry in appConfig.js :
"certificate": "com.airwatch.x509provider",

 

Hope this helps,

Ludo
aleksey_konchits
Discoverer
0 Kudos

Hello lnoens ,

Thank you for blog, it’s very helpful. I tried with …/SampleServices/ESPM.svc and everything works fine. But when I try use my own .xsodata, I’m facing with issue.

This is in Log:
Retrieve service document failed because the OData server returned HTTP code, 406, with OData error message: Code: 406, Message: Format application/xml not supported., and Inner Error:

This is on mobile device:
“Alert.
An error occurred “[-10210]. The operation failed due to an error on the server: -857 (SERVER_SYNCHRONIZATION_ERROR) ([-10225] Message: User exception: [-100025] An error occurred while communicating with the OData server to retrieve the result of request \”https://hcpms-XXXXXXXXXXXtrial.hanatrial.ondemand.com:443/appId_dest\”.\nError caused by:[-100046] Retrieve service document failed because the OData server returned HTTP code, 406, with OData error message: Code: \”406\”, Message:\”Format application/xml not supported\”. and Inner Error:\”\”

 

The problem is, that there is no /$metadata  in the end of request(….443/appId_dest/$metadata). It’s not happen with path “/SampleServices/ESPM.svc” in appRoute.js. If you use .xsodata for OData V2 or /catalog/ for OData V4, the $metadata is not added. That's why the request failed.

Could you check it. 

0 Kudos
Hey lnoens

Thanks for the prompt answer! I guess I wasn't clear what y question is - I understand how to add plugin that is used within the apps. But how to utilize the added plugin methods and events? Should I add them in index.js within ondeviceready, if there is neccesity? or how to use events that are needed for Fiori container, not the apps?

Like in this case I have added the plugin, but that is not finding the airwatch provided certificate that is stored on the device, so I guess I need to check initSuccess event, but how?

Thanks, Shanir

 
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Shanir,

The example in the plugin's documentation sets the SDK event listener on deviceready, by calling window.plugins.airwatch.setSDKEventListener(sdkEventCallback).

In the event callback you can check for the initSuccess event.

To verify the plugin is loaded, please set a breakpoint after deviceready and type window.plugins.airwatch on your console. If this is undefined, then the plugin is not loaded.

Hope this helps; I cannot really provide further support for 3rd party plugins ...

Thanks,
Ludo
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Oleksii,

The problem is described in the error message. The xsodata service is not able to provide the expected metadata in XML (Atom) format. Take note that xsodata services only support JSON format. The sample service does provide metadata in xml format and hence works fine.

What needs to be done ?

In the SAP Mobile Services admin cockpit, find the mobile application under Mobile Applications > Native/Hybrid

Select the application and select the Offline feature

The configuration of the destination used to access the xsodata service needs to be changed.

Either use the Create button under Actions, or upload a text file containing the same (Application Configuration File).

More info here:  https://help.sap.com/doc/329ac769552a411b97bc7adb991b6197/3.0.12/en-US/f5a25877c16f4fc384c44fcf0b92d...

 



As you can see, the OData Communication Format can be changed to JSON:



Hope this helps !

Regards,
Ludo
LudoNoens
Product and Topic Expert
Product and Topic Expert
Hi Daniel,

Sorry for the later response. We have already updated the SDKs to support 64-bit and are planning to update our Cloud Build Service accordingly. I am currently not able to provide an ETA for that, but let's just consider it 'soon'.

Regards,
Ludo
aleksey_konchits
Discoverer
0 Kudos
Hello lnoens ,

thank you for feedback. The format “application/json” was set as value for “OData Communication Format” and “Delta ..” as well.

 

 

But it’s not helped :(, the error message is the same:

“Retrieve service document failed because the OData server returned HTTP code, 406, with OData error message: Code: 406, Message: Format application/xml not supported., and Inner Error:“.

I red documentation regarding Offline setting, which you provided. The Gateway is very oft as Backend mentioned, but I didn’t find info about HANA as Backend.

May be you have another solution for this issue?

 

Thank you in advance.

Best Regards,
Oleksii
Jayakrishnan
Active Participant
0 Kudos
Hi lnoens  Thanks for the information

I just posted the question on SCN regarding generation of apk. Could you please assist me on the issue.

https://answers.sap.com/questions/12853137/apk-generation-on-sap-mobile-services-in-sap-full.html

Thank you,

Regards,

JK
0 Kudos

Hi Ludo,

 

I am having a problem.  When i start my app in mode offline. Which shows a screen in blank.

Could you help me with this problem, please?

 

Regards

Ange,

LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Daniel,

I can confirm our Mobile Services Cloud Build Service has been updated to Kapsel SDK 3.1 SP02 PL08. This version includes fixes for iOS 13 and Android 64-bit (offline library), in addition to other fixes.

Regards,
Ludo
former_member106463
Discoverer
0 Kudos
Hi Ludo,

is there a planned date for Mobile Services Cloud Build Service to be updated to use Kapsel SDK 3.1 SP02 PL09?

As far as I have understood this should help solving push notification issue on iOS13.

Regards

Anita
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Anita,

We are working on an update. I have no planned date at this point.

Can you please help raise a support ticket, in which you indicate on which service you need this update ? (Cloud build service with Mobile Services, or the older Fiori Mobile).

You can use component CA-WDE-MOB for this.

Thanks,
Ludo
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
I realise this is a very late response. A few remarks:

  • Blank screen doesn't tell anything. In most cases, an error occurred and your app has stopped running in the web container.
    The question is what error is reported when you hook up a debugger (through your desktop web browser).

  • If need help, please raise a support ticket for component CA-WDE-MOB. We will provide support as soon as we can and these tickets are tracked.


Please understand that I do not monitor the questions on the blog, so response is not guaranteed.

Thanks,
Ludo
sid_sunny
Contributor
0 Kudos
Hi Ludo,

I am trying to apply custom theme to my app and I have updated the following things in the mobile/index.html

data-sap-ui-xx-lesssupport="true"
data-sap-ui-theme="clientfioritheme"
data-sap-ui-theme-roots='{"clientfioritheme" : "clientfioritheme/UI5/"}'

I kept the theme in my workspace during the build and everything went well except that the app now do not show any theme.

Thanks

Sid
LudoNoens
Product and Topic Expert
Product and Topic Expert
0 Kudos
Hi Sid,

Things have changed a bit. Please put the “clientfioritheme” folder under the “webapp” folder in your project. And change the data-sap-ui-theme-roots path in the “webapp/index.html”

data-sap-ui-theme-roots=’{“clientfioritheme”: “/clientfioritheme/UI5/”}’

Tweak the path, e.g. remove the trailing or preceding “/”, to ensure the web app can load the custom theme successfully in SAP Web IDE Full-Stack. Once the web app works fine, replicate the two UI5 bootstrap attributes to the “mobile/index.html” file and rebuild the project.

Hope this helps.

Regards,
Ludo

 
vritzau
Participant
0 Kudos
Hi Ludo,

i received an answer to an note, that a problem with wkwebview in ios13 will be fixed with. KAPSELSDK02P_10-70003613.ZIP.

The current cloud build service is on :
2019-12-17 09:59:31.09370] [IT] [LogToken] [Software Inventory:

{

    "Platform": "iOS",

    "number": "3",

    "type": "CORDOVA",

    "kapsel": "4.2.12-SDK31_SP02_PL09",

...


Is there a shedule, when the cloud build service will be updated?


best regards

Volker
vritzau
Participant
0 Kudos
Hi Ludo, another question.

Is it possible to add the

<application

android:allowBackup:"false"

...

</application>

 

parameter in the config.xml so that it is passed in the cloud build service on to the AndroidManifest.xml?

Thanks in advance.

best regards

Volker
LudoNoens
Product and Topic Expert
Product and Topic Expert
Hi Volker,

Unfortunately I don't have a timeline for this update at this moment. I recommend opening a support ticket for component MOB-CLD-BLD requesting the update.

Regards,
Ludo
LudoNoens
Product and Topic Expert
Product and Topic Expert

Hi Volker,

Yes, by using ‘config-file’ settings. I’ve mentioned this in my blog here: https://blogs.sap.com/2019/04/16/whats-new-with-hybrid-application-toolkit-in-2019/

More details on this can be found in the Cordova documentation: https://cordova.apache.org/docs/en/latest/plugin_ref/spec.html#config-file

Cheers,
Ludo

0 Kudos
Hi Lodo Noens,

 

I am Not getting Mobile Option if right click on the project, so let me know how to add that option..................

Thanks In Advance

Regrad

K R Manjunath