Leveraging Native UI in Apache Cordova Apps Using Project Ace
This article comes to us from Premier Developer consultant Wael Kdouh.
When it comes to Cross Platform Mobile Development there are two options that stand out today. The first option is Xamarin which allows users to use C# and XAML to develop once and deploy everywhere natively. The second option is Apache Cordova which allows users to use their web skills (JS, CSS, and HTML) to develop once and deploy a native shell everywhere that hosts a WebView.
The Need for Native UI
Whereas Apache Cordova resonates a lot with teams that utilize their web skills to build Cross Platform Mobile Development, there are many instances where people desire to mix native UI controls with the Cordova WebView capabilities. Some typical scenarios for using Native UI include:
Case 1: Utilizing an existing UI component that the development team doesn’t want to rewrite in HMTL/CSS/JS.
Case2: Using a specific UI animation that is created with a tool like Xcode interface builder which the team wants to integrate with the rest of the Apache Cordova application.
Ace is a prototype to enable mixing native UI with Cordova. It can be included in Apache Cordova project as a plugin which means it can easily be integrated into your existing Ionic or Cordova app development workflow. Things like attaching debuggers to the WebView, or live-reload continue to work like before.
What can you do with Project Ace?
The following combinations are possible with Ace:
Ace also supports Android specific capabilities like floating and widgets.
Ace exposes different ways of building raw native controls directly:
Ace is still a prototype and will be refined based on the feedback from developers. If you think this is an interesting scenario for your app or have questions about the idea, you can get in touch with the product team at firstname.lastname@example.org or open issues on the github page of Project Ace.