End of Maintenance for Hybrid App Toolkit local add-on
Update (19 November 2018): the blog post announcing the actual End-of-maintenance for HAT local add-on is here.
My name is Ludo Noens and I am the Product Owner for Hybrid Application Toolkit. I have been working on this tool since we started on this journey 4 years ago. Prior to working on this tool, I have been developing hybrid apps for mobile payments and mobile banking. During that time, I was always looking for tools that could help me build my apps and prototypes faster. I eventually joined the team in Singapore which created this tool.
This blog post is especially important for you, if you are currently building hybrid mobile apps on your workstation while using SAP Web IDE as editor. With this posting I would like to inform our user base of an upcoming change with respect to the way we support building hybrid mobile applications.
To support the development of mobile applications for the enterprise, SAP provides various options to developers. Developers can choose to develop native iOS apps based on Swift by using the SAP Cloud Platform SDK for iOS. On top of this offering, developers can create model-driven apps using the Mobile Development Kit. At the other end of the spectrum there is the option to build web applications and consume them on a mobile device via a web browser or through the SAP Fiori Client. Last but not least, there is a hybrid approach that combines web technology with native code. For this, we are making use of an open standard technology called Apache Cordova, which basically wraps your web app into a native application where it will run inside a customised web container. Sometimes we refer to these type of apps as “Packaged Apps”.
Over the past years, SAP created various components to support the development of hybrid apps, which we deliver as part of the product called Hybrid Application Toolkit. Those components include:
- The optional SAP Web IDE plugin/feature called Hybrid App Toolkit
- SCN Hybrid App Toolkit add-on, downloadable via the SAP Store
- SAP Hybrid App Tool Companion, available in the Apple AppStore and Google Play
- Developer Companion, built on-demand using our Cloud Build Service.
Figure 1: The latest version of the optional feature “Hybrid App Toolkit”, visible in the Features list of SAP Web IDE Full-Stack
SCN Hybrid App Toolkit add-on (also referred to as ‘HAT local add-on’), which is one of the oldest pieces, was created as a temporary stepping stone towards building mobile apps in the cloud. This add-on creates a bridge (connector) between SAP Web IDE running in your favourite web browser and your local development environment. Developers can create applications in the cloud with SAP Web IDE and turn them into a mobile app by running a local build.
One of the main challenges faced by customers is the installation and regular updating of the add-on. It requires a number of tools and open source packages to be installed, which depend on each other. Many customers face issues setting up and maintaining this environment. This was partly due to version issues and package dependencies, but also IT landscape related issues (e.g. proxy servers, privilege settings). To help resolve some of these problems, we eventually introduced an installation helper tool. This GUI based tool checks for installed tools, environment settings, versions and dependencies. It also helps in creating a custom version of the Companion App.
More than one year ago, SAP has introduced the Cloud Build Service as an alternative to building apps on a local machine. This service was originally added as part of the mobile service for SAP Fiori developer experience and in October of 2017 was added to SAP Cloud Platform mobile service for development and operations. With this, developers are able to build hybrid mobile apps completely in the cloud without having to install anything on their own machine. The only things required are a web browser and a mobile device.
We have now come to the point where the Cloud Build Service offers a comparable developer experience, and in some cases this service is even faster than running a local build (e.g. Android and iOS builds run in parallel). In the coming months, we will further enhance the developer experience and ensure that all the code generated for the mobile apps is accessible and can be customized where needed.
We plan to focus our investments on cloud based mobile application development and therefore we plan End of Maintenance for the SCN Hybrid App Toolkit add-on component in the second quarter of 2018. The other components (Web IDE plugin, Companion App) are not affected by this.
Update 10 March 2018: since quite a number of users are confused about this announcement, I want to reiterate the following:
- HAT (Hybrid Application Toolkit) is NOT deprecated.
- We PLAN end-of-maintenance for one particular part in Q2 2018. We have not set a definitive date at this point.
- Even after end-of-maintenance takes effect, the tool is not going away.
- You will still be able to build hybrid apps in SAP Web IDE, making use of the Kapsel plugins.
Figure 2: Legacy and new version of SAP Web IDE as visible in the SAP Cloud Platform Cockpit
We have deprecated a few templates in the old SAP Web IDE that can only be built using the local add-on. For the time being, these templates (some refer to them as ‘Kapsel templates’) will be kept available on the old SAP Web IDE, with the deprecation notice. These templates will not be available or supported on SAP Web IDE Full-Stack.
Figure 3: Application templates related to HAT local add-on that are marked deprecated.
In the coming months, we will provide guidelines for existing customers on how to move their existing projects to SAP Web IDE Full-Stack and build the apps in the cloud using our Cloud Build Service. A reference to this information has been made available in the migration guide which is part of the SAP Web IDE Full-Stack documentation. When starting new projects, we recommend using SAP Web IDE Full-Stack to create apps based on the existing Fiori templates. Provided you have the HAT feature activated in SAP Web IDE, the following SAP Web IDE templates can be used to develop hybrid mobile apps:
- SAP Fiori Worklist Application
- CRUD Master-Detail Application
- SAP Fiori Master-Detail Application
- List Report Application
- SAP UI5 Application
Existing customers can continue to use the add-on. However, we encourage customers to move to the Cloud Build Service, which is part of the SAP Cloud Platform mobile service for development and operations offering. All customers who have subscribed to SAP Cloud Platform mobile service can make use of the cloud build service.
Figure 4: Cloud Build feature visible in the Mobile Service for Development and Operations Cockpit
Update 23 January 2018:
NOTE: the information below is for those users who are already using our Cloud Build Service to build apps. Those of you who are building apps locally using HAT local add-on are NOT affected by the messages below. Especially users building offline apps with HAT local add-on should continue using the HAT local add-on, until we provide guidance on how to transition.
Users who are not using Hybrid Application Toolkit with SAP Web IDE Full-Stack and choose to build – in the cloud – either a Packaged App or Developer Companion will now be notified and advised to move to SAP Web IDE Full-Stack. Users will still be able to build the apps using Cloud Build Services.
Users who are already using Hybrid Application Toolkit with SAP Web IDE Full-Stack, but have until now used Mobile Service for SAP Fiori to build the apps – in the cloud – are now advised to switch to Mobile Service for development and operations. The functionality will still be available though.
We are open to feedback on this. Feel free to comment on this blog post, or if you prefer, you can reach out to me or my colleagues from Product Management.
Ludo Noens , Product Owner – Hybrid Application Toolkit
Eric Solberg , Senior Director – Product Management
Britt Womelsdorf , Area Product Manager
Thanks for the info, Ludo.
Can you clarify this to me? "More than one year ago, SAP has introduced the Cloud Build Service as an alternative to building apps on a local machine. This service was originally added as part of the mobile service for SAP Fiori developer experience and in October of 2017 was added to SAP Cloud Platform mobile service for development and operations."
What has actually changed? I keep using this feature from Web IDE and I don't see any changes on it.
Thanks in advance. Happy Holidays!
If you are using SAP Web IDE (not SAP Web IDE Full-Stack) then there have not been any changes since March 2017. Neither SAP Web IDE, nor HAT has been updated on this version.
On the SAP Web IDE Full-Stack, there have been minor changes for end-users. Although the services used for building the mobile apps have changed, the impact for end-users is kept to a bare minimum.
One of the noticeable changes can be found in the HAT preferences, where the developer can select which service is being used for build the app in the cloud.
In the coming months we will make further changes. Stay tuned for more updates from my side.
Happy New Year !!!
I am working in project where I am converting Cloud platform HTML5 Application to Hybrid mobile application for iOS and Android using HAT 1.28.2 and I follow following process for building.
From your blog its seems like we can use Cloud Build in future instead of process I am using above. But will it also support for Non-Fiori Web application ?
I tried to used Cloud build but it seems like it only support Fiori Launchpad application (cloud or on premise).
Kindly suggest the roadmap for my application build process after End of Maintenance for local HAT.
Hi Vijay, Happy New Year!
Moving forward, we will focus on Cloud Build and allow developers full flexibility on which code is added to the project. So, you will be able to modify your app to cater for SAML based authentication; or other things we currently don't offer out-of-the-box. We plan to offer this before we get to end-of-maintenance for the HAT local add-on.
As for the templates supported: we do support a SAP UI5 template, which is a non-Fiori web app. As indicated above, you will be able to tailor the code to your own needs.
Hope this clarifies and takes away the concern.
Happy New Year!
With the HAT local-addon it was possible to build SAPUI5 hybrid apps (using only Cordova plugins and no Kapsel plugins) connecting directly to eg SAP Gateway with only a WebIDE subscription and without MobServDevOps or MobServFiori subscriptions.
What is the migration path for such customers?
Wishing you a Happy New Year as well!
This is kind of an edge case that I'll have to discuss with our Product Management. In theory, you could build mobile apps that do not make use of SAP Cloud Platform mobile services. However, for features such as offline and push notifications, you would have to develop your own things then. Since the cloud build is provided through mobile services, you would still require a mobile services subscription though.
thanks for the response.
Yes, I know, but my question is for apps not using Kapsel/MobServDevOps features.like offline or push. For these, it was possible to build with HAT with only a WebIDE subscription.
Would be glad if you could inform us here on the outcome of the discussion with Product Management. Perhaps there should be a WebIDE plus Cloud Build subscription possibility?
If you consider Cloud Build subscription = Mobile Services subscription, then we already have a solution. However, it sounds like you have an issue with this.
Technically, from Web IDE we are still interfacing with Mobile Services for this Cloud Build service. So Cloud Build won't work without a Mobile Services subscription.
We are using HAT for one of our SCP UI5 Offline hybrid application build. Can we immediately move to cloud build?? does these changes will impact only on how to create build or at code changes also required??
Assuming your current app is based on the now deprecated Kapsel offline master-detail template, there will be code changes required. Once the functionality is ready, we will share information on what is needed to make the transition to cloud build. For now, you can continue with what you have.
I've been playing around with the Cloud build in mobile service but came across some issues:
1: Yes, for now, it is required to deploy the app to SAP Cloud Platform and register it with Fiori Launchpad. Once this is done, a subsequent build will take the app and its dependencies from Fiori Launchpad and package it. The Cloud Build available in the SAP Cloud Platform Mobile Services cockpit can be used to build a custom Fiori Client. At this point, there is no functionality available to add more plugins through this cockpit. However, there is already a number of plugins added by default. Which plugins do you intend to add? Maybe they are already present in the app...
2: I don't think we support this scenario right now. But this will change in the near future. See 4.
3: Assuming you are referring to the device configuration ... this is only used for configuring the build through HAT local add-on. It is not used for the cloud build.
4: You can continue to use HAT local add-on for building apps on your machine. We will not remove this option in short term. The blog post is meant as an early warning of what's coming. We are streamlining the services and integrating it into Mobile Services. When this is done, the requirement for Cloud Portal is gone; the deployment is not required and Fiori Launchpad is no longer required. And then it should be possible to support your scenario as well.
Note: I do hope you are using SAP Cloud Platform Mobile Services, and not the on-premise SAP Mobile Platform here.
Thanks Ludo. I'm indeed talking about the SCP Mobile Services. In the meanwhile, I was able to create a fiori client with the build tool of our on premise Fiori launchpad. Would it be possible to now add fiori apps to the launchpad with, for example, offline functionality? How would that work? Will it make a connection to SCP MS from the on premise fiori launchpad in the fiori client?
A lot of questions 🙂 It's very confusing because it's not yet supporting everything .
Okay. So, if you are able to deploy an app from SAP Web IDE to SAPUI5 ABAP repository (assume this would be your on-premise system), then you could actually load the app in the Fiori Client you've built. However, this is a typical online app scenario. Offline won't work with Fiori Client.
For offline in the hybrid app scenario, you'll need a packaged app, and SCP Mobile Services. You can build those apps with Web IDE + HAT, or via other means (CLI, or other tools/IDE together with the Mobile SDK). It indeed requires SCP Mobile Services to act as a proxy for your connections.
We are planning to publish some more documentation and blog post around the upcoming changes. One of the main topics is Offline.
Thanks! this explains a lot. In my case, I still need to use the HAT despite of the fact that it will be deprecated...
Hope to see HAT functionality in the cloud build in the future 🙂
This is now very confusing with documentation all
over the place I’m afraid....
we very quickly need some information about the best practice way to put together an offline packaged Fiori app.
For now, all functionality for building hybrid offline apps with HAT remains available as-is. No changes here. Once we have the capability of building this type of apps through our cloud build service, we will provide updated documentation and ONLY THEN you should move.
Could you please comment more on this.
We are now using the HAT to build a 'standalone' hybrid app that is not deployed to FLP.
It just has some ui and consumes our cloud platform backend destination apis via mobile services.
So, the question is will the cloud build functionality be in some way suitable for us as we would also like to tweak the bootstraping process of Kapsel Logon plugin, for example?
Or it is all about the fiori client + flp stutt?
Or am I completely missing some points?
Thanks and best regards, Alex.
We are working on a Cloud Build integration that does not require FLP. The current cloud build requires this as part of the packaging process.
Yes, you will be able to tweak your bootstrap process.
For now, you can continue using HAT local add-on.
Thanks a lot for your prompt and meaningful response.
Looking forward to be able to use this promising feature.
Hi Ludo Noens
With the cloud service “Development and Operations” we are able to deploy hybrid apps for IoS and Android. Is there any option to deploy an hybrid app for Windows? We have some mobile devices (tablets) running on Windows, but we can’t really find an option to make it work. We need this to be able to use offline data.
Unfortunately, Windows is no longer a platform we focus on. You can still use the Hybrid SDK (Kapsel) plugins to accomplish this, but you'll have to use a development environment other than SAP Web IDE (e.g. Microsoft Visual Studio).
Thank you for the update. I am starting up offline development in Web IDE Full-Stack with the Cloud Build Service and I have currently gotten it to work when building the packaged App. As it takes a lot of time to test out code (deploy to SCP, build packaged app, download .ipa on iPad), I am hoping that we can build a developer companion with the kapsel offline components and use that for development. Do you know if this is possible?
Currently I get the following error in the web ide when trying to build the developer companion.
[2018-02-23 12:36:48.02072] [ET] Build failed for [IOS] [ErrorCode: 40001] [ErrorStatus: RESOURCE COLLECTION FAILED]
Do you know where I can find a 'how to guide' for the cloud build service ?
I created an offline app with HAT and SAP Web IDE and I want to migrate it on SAP Web IDE full stack.
Thank you for your help.
Migrating it to SAP Web IDE Full Stack should not be a problem, assuming your starting point was Web IDE with HAT local add-on. You can still use HAT local add-on.
For building offline apps with Cloud Build services, we are planning to publish new guidelines, once our service is integrated with Mobile Services (planned for May 2018).
Hi Ludo Noens,
This is regarding develop Hybrid Mobile Apps with offline Features, I have few questions below.
We have purchased following Services.
Our company is premium partner for SAP. We purchased HCP. Having said we are using Development operations with Mobile. We have access for all the services. Please tell me the process to develop Hybrid Mobile App with offline features?
Currently, when using Hybrid Application Toolkit, the recommended approach for building offline apps is to get started using the Kapsel Offline Master-Detail application template that is available in Web IDE (once you have activated the feature). When using this template, you can only build using HAT local add-on.
For building offline apps, you don't need companion app. Actually, Companion App is an online app by it's nature and does not help you for offline scenarios. So, please skip this step in the installation process.
If you need an example, please use the blog created by my colleague Rasheed Abdul Azeez. https://blogs.sap.com/2017/06/12/creating-offline-application-based-on-sap-web-ide-crud-master-detail-template-using-hybrid-app-toolkit/
But there is no "Kapsel Offline Master-Detail application template" anymore. Which feature needs to be switched on?
We don't intend to reintroduce this template in Web IDE Full-Stack. Instead, we plan to provide guidelines to let you add offline capabilities to your app. This is in the works.
thanks for sharing the information on the HAT.
Is it possible to use custom cordova plugins in the cloud build ? I didnt't find any information on this in the official documentation. My goal is to use the cloud build and integrate a special OCR cordova plugin.
Our current plans do not cover custom plugins, unless you can get those plugins published in the public Cordova plugin repository.
We do plan to offer you the option to download the complete project from cloud build. This is definitely not the perfect way to support custom plugins; but at least there is a way (although it is a rather troublesome one, I have to admit).
If enough users require this, we could consider adding this option.
Thanks for the fast response!
Is there any documentation on how to integrate a plugin from the public cordova plugin repo ?
When you open the context menu on your project, select Mobile > Select Cordova plugins
You will be able to select more than 2000 plugins from the public Cordova repository. Once your selection is saved, trigger a cloud build and they are included in the app.
Hope this answers your question.
Works like a charm!
My employer has license to SCP and I do see Mobile service enabled as well. Issue is when I do "select Mobile > Select Cordova plugins" we don't see list 2000+ plugins from the public Cordova repository. Instead show "0".
Thanks in advance.
that sounds like a glitch in our infrastructure... can you please raise a support ticket? Component CA-WDE-MOB.
Is there a way to debug mobile hybrid applications developed with Sap Web IDE full stack? I am referring to debugging directly on the mobile device, using inspect mode.
Yes, this works if you tick the "Build debug-enabled binaries" in the build wizard (step: platform).
For iOS apps, you can connect the Safari browser for remote debugging.
For Android apps, you can connect the Chrome browser for remote debugging.
We are using HAT to build a standalone hybrid app, and few days ago we are receiving error messages in build APK process:
ERROR: In <declare-styleable> FontFamilyFont, unable to find attribute android:font
ERROR: In <declare-styleable> FontFamilyFont, unable to find attribute android:fontStyle
ERROR: In <declare-styleable> FontFamilyFont, unable to find attribute android:fontVariationSettings
ERROR: In <declare-styleable> FontFamilyFont, unable to find attribute android:fontWeight
ERROR: In <declare-styleable> FontFamilyFont, unable to find attribute android:ttcIndex
The deprecation of HAT can be the reason of this errors? Where can I find a solution? We are looking for SAP notes without luck...
This issue is caused by changes in the tooling provided by Google. We are working on a patch to fix this.
Note: the HAT local add-on is not deprecated. We did announce the plan to call 'end-of-maintenance', which is not the same. As for this plan: we have not reached the point where cloud build can replace the local build. More on that in a future blog post !
Thank you so much for your fast answer. This fix patch will be included in a new version of HAT local add-on, or it is transparent for us? We are waiting for fix patch anxiously 🙂
Good point about HAT local add-on 'End-of-Maintenance'. When cloud build can replace local build, I'm absolutely sure we will work with it.
We had a few hiccups with the Android build service, but those have been fixed.
Thanks for the blog. I am having some doubts regarding the HAT Development . Currently we have an app which is developed in SAP Web IDE (Not Full Stack) with Offline and App Update feature using Local HAT Setup. we are working on the licensed version.
As per the future development consideration we are planning to move to SAP Full Stack Web IDE.
First of all, you can still use HAT local add-on with SAP Web IDE Full-Stack. What you will be missing is the Kapsel offline template.
For creating an offline app, I have recently published a blog post here: https://blogs.sap.com/2018/05/22/creating-an-offline-crud-hybrid-mobile-app-in-sap-web-ide-full-stack-with-hybrid-application-toolkit/
Migration steps for SAP Web IDE are described in the blog post by Natalia here: https://blogs.sap.com/2018/05/10/migrating-a-project-to-sap-web-ide-full-stack/
Migration is also mentioned in our documentation here: https://help.sap.com/viewer/825270ffffe74d9f988a0f0066ad59f0/CF/en-US/67a97b85476c41048f4203940f43766d.html
I recommend trying out SAP Web IDE Full-Stack and go through my blog post before migrating your project(s).
Thank you Ludo, I will try it.
there are many errors it shows after migrated.How do i resolve the below erroe.
After did some analysis I have identified the code checking area under the project settings category . After disabling the code check now I found zero errors. In some cases I have changed the category from error to warnings .
So is that the right way ?. Please suggest.
hello everybody , I need to download the lastest version of SAP_HAT_LOCAL , but I couldn't.
I have to sign in to continu to the SAP store, isn't it possible with my SAP Hana Trial account?
Thank you for your help.
For those still looking for HAT local add-on, which we have already removed from the SAP Store: please contact me.
The last version of the HAT local add-on was 1.29.8, released in December 2018. There will be no more updates, and we don’t provide further support on it.
Take note that the versions of the HAT local add-on do NOT match the versions of the HAT extension in SAP Web IDE Full-Stack.
Thank you, Ludo for your information,
for all of the current students of the following MOOC by SAP: "Developing Mobile Apps with SAP HANA Cloud Platform*Jeff Gebo and Dhimant Patel" what may be the tips to keep on attending the course since the relevant change in development environment from the cloud/local (previous) to cloud now?
We know there is the new updated upcoming version of the course in August, but for whom would like to follow the old one, self-paced and without time deadline may you address tips or at least the right persons to help us? Thank you.
The MOOC you are referring to is getting a bit dated. Unfortunately, the content has never been updated to reflect the latest status of the tools.
If you want to follow the MOOC mentioned, I recommend using one of my blogs to go through the steps of building a mobile app, based on a template such as Fiori Master-Detail or CRUD and build the app in the cloud. This will be much easier than setting up a local environment with all the dependencies (which have also become outdated) and challenges around environment settings. I can provide you a copy of the local add-on if your really want, but cannot provide further support.
Once you are familiar with the cloud build process, you could apply this with the MOOC. But you will obviously have to adapt where needed. If you are not very familiar with this, then the lack of step by step guidance will be a big challenge.
The upcoming MOOC will be based on recent development with Mobile Development Kit and Mobile Backend Generator. These are considered more modern tools to develop mobile SAP apps. I strongly recommend following this MOOC.
Thank you for your answer and availability,
I guess you’re referring to your blog article here: https://blogs.sap.com/2018/05/22/creating-an-offline-crud-hybrid-mobile-app-in-sap-web-ide-full-stack-with-hybrid-application-toolkit/
I’ll try your tip that would be the best option in terms of education too, but just in case I’d like you may provide a copy of the local add-on.
Thank you again for your fundamental support that will decide if go on with this SAP education opportunity.