Apache Cordova is an application development platform which allows mobile applications to be written with web technology: HTML, CSS and JavaScript. Access to device APIs is provided by native plugins.
This implementation for BlackBerry 10 packages web assets into a BAR file which may be deployed to devices and simulators.
Install the latest BlackBerry 10 NDK:
https://developer.blackberry.com/native/download/
Setup environment variables:
source [BBNDK directory]/bbndk-env.sh
[BBNDK directory]\bbndk-env.bat
Install code signing keys:
https://developer.blackberry.com/html5/documentation/signing_setup_bb10_apps_2008396_11.html
Install node.js:
Ensure npm is installed:
More recent versions of Nodejs will come with npm included.
Create a new project:
bin/create <path to project>
A target is a device or simulator which will run the app.
This command will add a new target:
<path to project>/cordova/target add <name> <ip> <device | simulator> [-p | --password <password>] [--pin <devicepin>]
To remove a target:
<path to project>/cordova/target remove <name>
To set a target as default:
<path to project>/cordova/target default <name>
<path to project>/cordova/build
A project can be built in debug or release mode.
To run an application in debug mode, a debug token must first be installed on the device. The build script will automatically attempt to generate a token and install it. This requires code signing keys to be installed on the development machine. Debug mode will also enable WebInspector. A prompt will appear with the URL to access WebInspector from a remote machine.
If building in release mode, a unique buildId must be provided, either via command line or by setting it in config.xml.
Here is the build script syntax:
build command [<target>] [-k | --keystorepass] [-b | --buildId <number>] [-p | --params <json>] [-ll | --loglevel <level>]
Commands:
release [options] Build in release mode. This will sign the resulting bar. debug [options] Build in debug mode.
Options:
-h, --help output usage information -k, --keystorepass <password> Signing key password -b, --buildId <num> Specifies the build number for signing (typically incremented from previous signing). -p, --params <params JSON file> Specifies additional parameters to pass to downstream tools. -ll, --loglevel <loglevel> set the logging level (error, warn, verbose)`
To deploy the project to a target, use the run command:
<path to project>/cordova/run <target>
To add a plugin from a local path, you will first need to run fetch:
<path to project>/cordova/plugin fetch <path to plugin>
Now the plugin can be installed by name:
<path to project>/cordova/plugin install <name>
Plugins hosted remotely can be installed by name without using fetch. To see a list of available remote plugins use:
<path to project>/cordova/plugin ls