Developing apps with Apache Cordova
App Factory
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
-
TUXEDO Computers Unveils Linux Laptop Featuring AMD Ryzen CPU
This latest release is the first laptop to include the new CPU from Ryzen and Linux preinstalled.
-
XZ Gets the All-Clear
The back door xz vulnerability has been officially reverted for Fedora 40 and versions 38 and 39 were never affected.
-
Canonical Collaborates with Qualcomm on New Venture
This new joint effort is geared toward bringing Ubuntu and Ubuntu Core to Qualcomm-powered devices.
-
Kodi 21.0 Open-Source Entertainment Hub Released
After a year of development, the award-winning Kodi cross-platform, media center software is now available with many new additions and improvements.
-
Linux Usage Increases in Two Key Areas
If market share is your thing, you'll be happy to know that Linux is on the rise in two areas that, if they keep climbing, could have serious meaning for Linux's future.
-
Vulnerability Discovered in xz Libraries
An urgent alert for Fedora 40 has been posted and users should pay attention.
-
Canonical Bumps LTS Support to 12 years
If you're worried that your Ubuntu LTS release won't be supported long enough to last, Canonical has a surprise for you in the form of 12 years of security coverage.
-
Fedora 40 Beta Released Soon
With the official release of Fedora 40 coming in April, it's almost time to download the beta and see what's new.
-
New Pentesting Distribution to Compete with Kali Linux
SnoopGod is now available for your testing needs
-
Juno Computers Launches Another Linux Laptop
If you're looking for a powerhouse laptop that runs Ubuntu, the Juno Computers Neptune 17 v6 should be on your radar.