In 2009, a startup called Nitobi developed a framework named PhoneGap, which was an open source API for accessing native mobile resources, with an aim to enable developers to build mobile applications using standard web technologies. As per Nitobi’s vision, most mobile applications would soon be developed using PhoneGap, but developers would still have the option of writing native code when necessary, be it due to performance issues, or lack of a method of accessing specific hardware.
Nitobi was acquired by Adobe in 2011. However, the open source core was donated to the Apache Software Foundation and PhoneGap was rebranded under the name ‘Cordova’. The differences between Cordova and PhoneGap were nominal at the beginning. With time, Adobe developed its own set of proprietary features, while Cordova was (and still is) supported by the open source community. This Apache Cordova review article will examine Cordova app development in more detail.
Capabilities of Apache Cordova
Apache Cordova comes with a set of already-developed plugins which allows access to the device’s camera, file system, GPS, etc. As mobile devices emerge, providing more support for additional hardware simply result in developing new plugins.
Finally, Cordova applications will be installed just like native applications. This means that building your code for Android an .APK file, for iOS will produce an .IPA file, , and building for Windows Phone produces an .XAP file. If you put your best effort into the development process, your users might not even realize that they aren’t using a native application.
Advantages of Cordova
•Cordova offers one platform for building hybrid mobile apps so we can develop one app that will be used on different mobile platform IOS, Windows Phone, Android, Amazon-fireOS, Firefox OS, blackberry, Ubuntu and tizien.
•It is quicker to develop a hybrid app than native app so Cordova can save a lot of development time and cost.
•There are number of community add-ons available that can be used with Cordova. Lots of libraries and frameworks are optimized for working with it.
Limitations of Cordova
• As compared, hybrid apps are slightly slower than native ones so it is not optimal to use Cordova for large apps that require lots of data and functionality.
• Cross browser compatibility can sometimes create lots of issues. Since, we are building apps for various platforms so the testing and optimizing process can take a lot of the time since we need to cover large number of devices and operating systems.
• Some plugins are incompatible with different devices and platforms. Also, there are some native APIs that aren't yet backed by Cordova.
Also Read: How to Install and Setup Apache Cordova