Developing apps with Apache Cordova
App Factory

© Lead Image © venimo, 123RF.com
Roll out an app elegantly and quickly for up to eight operating systems using the Cordova framework. According to the Apache Foundation, the only requirements are knowledge of HTML, CSS, and JavaScript.
In early 2009, the small company Nitobi introduced a software tool named PhoneGap. Web developers could use this tool to develop complete apps in HTML, CSS, and JavaScript that simultaneously ran on iPhones, Androids, and BlackBerrys. Only two-and-a-half years later, Adobe took over Nitobi, and PhoneGap along with it. Adobe passed the source code on to the Apache Foundation, which is developing the framework under the name Cordova [1] (see the "Oh, You Beautiful Cordovas" box).
Oh, You Beautiful Cordovas
Cordova is a small town in an idyllic location on the Gulf of Alaska. Geographers will find another place of the same name in central Alabama. Cordova is also the name of a suburb of Memphis, Tennessee. However, it is much more likely that you will know the Spanish city of Córdoba in Andalusia, which is also capital of the Province of Córdoba. In English, Córdoba is usually written as Cordova.
The takeover did not change the basic way the framework functions. As a developer, you can program a complete app in HTML, CSS, and JavaScript in Cordova, which then runs on iOS, Android, BlackBerry 10, Windows, Firefox OS, WebOS, Ubuntu Touch, and even as a normal web application in the browser. Cordova also supports Amazon's FireOS, although this option is considered deprecated.
Practical Testing
The source code is subject to Apache License 2.0. Cordova has already helped launch numerous apps, including fitness app Sworkit [2] and the baby monitoring software Clever Baby [3]. Many other developer tools harness the Cordova framework and development environment, such as Ionic [4] and PhoneGap by Adobe [5]. The company continues to use the original name of the project.
Toolkit
First, Cordova requires the desired target platforms' SDKs for its work. If you want to offer your app on Android devices, you have to install the Android Studio or Android SDK (aka Android command-line tools) in addition to a Java Development Kit (JDK)[6]. In the case of Android, some environment variables should also be set; for example, JAVA_HOME
prompts the JDK installation, ANDROID_HOME
is the directory with the Android SDK, and PATH
should contain the tools
and platform-tools
subdirectories from the Android SDK.
Node in the Bag
A range of command-line tools make it easier to build apps as a Cordova developer. These tools are based in turn on Node.js [7], which is found in most distros' repositories. Cordova expects the framework under the program name node
, although Ubuntu calls the program nodejs
. To remedy this, additionally install the nodejs-legacy
package, which adds a matching symlink to nodejs
.
The npm
command, which is the Node.js package manager installs Cordova with a simple:
sudo npm install -g cordova
A short moment later, you can create a first small sample application.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you've found an article to be beneficial.
News
-
The GNU Project Celebrates Its 40th Birthday
September 27 marks the 40th anniversary of the GNU Project, and it was celebrated with a hacker meeting in Biel/Bienne, Switzerland.
-
Linux Kernel Reducing Long-Term Support
LTS support for the Linux kernel is about to undergo some serious changes that will have a considerable impact on the future.
-
Fedora 39 Beta Now Available for Testing
For fans and users of Fedora Linux, the first beta of release 39 is now available, which is a minor upgrade but does include GNOME 45.
-
Fedora Linux 40 to Drop X11 for KDE Plasma
When Fedora 40 arrives in 2024, there will be a few big changes coming, especially for the KDE Plasma option.
-
Real-Time Ubuntu Available in AWS Marketplace
Anyone looking for a Linux distribution for real-time processing could do a whole lot worse than Real-Time Ubuntu.
-
KSMBD Finally Reaches a Stable State
For those who've been looking forward to the first release of KSMBD, after two years it's no longer considered experimental.
-
Nitrux 3.0.0 Has Been Released
The latest version of Nitrux brings plenty of innovation and fresh apps to the table.
-
Linux From Scratch 12.0 Now Available
If you're looking to roll your own Linux distribution, the latest version of Linux From Scratch is now available with plenty of updates.
-
Linux Kernel 6.5 Has Been Released
The newest Linux kernel, version 6.5, now includes initial support for two very exciting features.
-
UbuntuDDE 23.04 Now Available
A new version of the UbuntuDDE remix has finally arrived with all the updates from the Deepin desktop and everything that comes with the Ubuntu 23.04 base.