Have you used an Apache software in the last hour? Chances are, even unknown to yourself, you definitely have. If you have used a credit card, ordered something online, or used the web browser of your phone or desktop for anything – it is almost certain you must have used an Apache software. This is the impact of open source on the increase of mobile applications in an increasingly digital world – the openness of knowledge and ideas.
This is where Apache Cordova gives you the power to code web applications and continue to use device features that both Android and iOS support almost with a single codebase.
What is Apache Cordova
Apache is the world’s largest Open Source foundation that provides >227 million lines of code made available to the public at large at no cost. Plus, Cordova compiles applications into a package file (IPA or APPX) that are required by most app stores – giving developers the benefit of writing code once and deploying everywhere with ease.
Despite all its over-abundant advantages, Cordova does have a few limitations – rather pitfalls – one should always keep in mind.
Overcoming common plugin limitations in Cordova
It’s true whatever you can achieve with native code, you can achieve with Cordova – except for a few limitations. One, poor documentation makes it difficult to find specific information or which packages are required with the Android SDK Manager. Second, since apps built with Cordova are contained in web views, they cannot perform as well as their native counterparts – limiting the kind of apps you can build. Finally, given not every device is the same, not all plugins will work on every device. This means such projects will require extra effort in creating testing environments. SAP allows configuration of Cordova apps on Fiori, for instance.
Regardless, Cordova does indeed make the process of developing apps comfortable, especially for organizations that look to transition into mobile-first app development with negligible efforts. The tool can also be used in integrated development environments, including Visual Studio, XCode, Eclipse, and the likes.
Last but not least, the speed of creation and integration is merely broken by a little extra effort in creating custom plugins once – which is not a big problem for a seasoned developer.