csantanapr/grunt-cordovacli
{ "createdAt": "2013-08-26T19:14:36Z", "defaultBranch": "master", "description": "Wraps web app with Cordova CLI using GruntJS", "fullName": "csantanapr/grunt-cordovacli", "homepage": null, "language": "JavaScript", "name": "grunt-cordovacli", "pushedAt": "2016-11-29T18:13:10Z", "stargazersCount": 60, "topics": [], "updatedAt": "2023-11-03T17:10:34Z", "url": "https://github.com/csantanapr/grunt-cordovacli"}grunt-cordovacli 
Section titled “grunt-cordovacli ”“Wraps a web application as a hybrid app with Apache Cordova CLI or Crome Cordova Apps CLI”
- More information about Apache Cordova Command-line Interface
- More information about Chrome Apps for Mobile
First Install Cordova or CCA
Section titled “First Install Cordova or CCA”- This plugin requires Grunt
>=0.4.5 - NPM module
cordova-cliversion >=3.0.0 orcca>=0.5.1 needs to be install locally or at peer location as node module grunt-cordovacli, or in a node_module directory of the parent directory structure
npm install cordova@latest --saveor
npm install cca@latest --saveGettings Started with Grunt and the Cordova/CCA Grunt Plugin
Section titled “Gettings Started with Grunt and the Cordova/CCA Grunt Plugin”If you haven’t used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you’re familiar with that process, you may install this plugin with this command:
npm install grunt-cordovacli --save-devOnce the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-cordovacli');The “cordovacli” task
Section titled “The “cordovacli” task”Run this task with the grunt cordovacli command.
Overview
Section titled “Overview”In your project’s Gruntfile, add a section named cordovacli to the data object passed into grunt.initConfig().
Usage Examples
Section titled “Usage Examples”cordovacli: { options: { path: 'myHybridAppFolder', cli: 'cordova' }, cordova: { options: { command: ['create','platform','plugin','build'], platforms: ['ios','android'], plugins: ['device','dialogs'], path: 'myHybridAppFolder', id: 'io.cordova.hellocordova', name: 'HelloCordova' } }, create: { options: { command: 'create', id: 'com.myHybridApp', name: 'myHybridApp' } }, add_platforms: { options: { command: 'platform', action: 'add', platforms: ['ios', 'android'] } }, add_plugins: { options: { command: 'plugin', action: 'add', plugins: [ 'battery-status', 'camera', 'console', 'contacts', 'device', 'device-motion', 'device-orientation', 'dialogs', 'file', 'geolocation', 'globalization', 'inappbrowser', 'media', 'media-capture', 'network-information', 'splashscreen', 'vibration' ] } }, remove_plugin: { options: { command: 'plugin', action: 'rm', plugins: [ 'battery-status' ] } }, build_ios: { options: { command: 'build', platforms: ['ios'] } }, build_android: { options: { command: 'build', platforms: ['android'] } }, emulate_android: { options: { command: 'emulate', platforms: ['android'], args: ['--target','Nexus5'] } }, add_facebook_plugin: { options: { command: 'plugin', action: 'add', plugins: [ 'com.phonegap.plugins.facebookconnect' ], args:['--variable','APP_ID=fb12132424','--variable','APP_NAME=myappname'] } }}Options
Section titled “Options”options.cli
Section titled “options.cli”Type: String
Default value: 'cordova'
Valid values for String: 'cordova' 'cca'
Specify the cli to use
options.command
Section titled “options.command”Type: String or Array
Valid values for String: 'create' 'platform' 'plugin' 'build' 'emulate' 'prepare' 'compile' 'run' 'serve'
Specify the cordova command when using String
Valid values for Array: 'create' 'platform' 'plugin' 'prepare' 'compile' 'build'
Specify a full cycle or series of cordova commands when is an Array
options.id
Section titled “options.id”Type: String
Default value: 'io.cordova.hellocordova'
Use with Command: 'create'
Specify the ID (reverse-domain-style package name) for the Cordova App
options.name
Section titled “options.name”Type: String
Default value: 'HelloCordova'
Use with Command: 'create'
Specify the Name for the Cordova App
options.path
Section titled “options.path”Type: String
Default value: 'HelloCordova'
Specify the path to the Cordova project directory
options.action
Section titled “options.action”Type: String
Valid value: 'add' 'rm' 'remove'
Required for Commands: 'platform'
Specify the action to perform
options.platforms
Section titled “options.platforms”Type: String 'Array'
Valid value: 'ios' 'android' 'blackberry10' 'wp8' 'ubuntu' 'firefoxos' 'amazon-fireos'
Version can be specified like 'ios@3.7.0'
Can also pass a directory containing a platform git repository
Required for Commands: 'platform'
Not Applicable for Commands: 'plugin'
Optional for other commands
If using with option.action=add and platform is already present, then the add action it’s skip
Specify the platform type
options.plugins
Section titled “options.plugins”Type: String 'Array'
Shortcut values for Apache Cordova plugins:
'battery-status''camera''console''contacts''device''device-motion''device-orientation''dialogs''file''geolocation''globalization''inappbrowser''media''media-capture''network-information''splashscreen''vibration'Use with Commands: 'plugin'
Specify the plugin to add to the Cordova project It can be specify in 4 forms:
- Shortcut (i.e. ‘camera’ it will be downloaded form plugins.cordova.io)
- ID or ID@version (i.e. org.apache.cordova.device it will be downloaded from plugins.cordova.io)
- Git Url (i.e. https://git-wip-us.apache.org/repos/asf/cordova-plugin-file.git)
- Directory Path (~/userid/cordova/plugins/plugin1)
If using with option.action=add and using ID or ID@version, and plugin is already present, cordova will skip it If using remove or rm options.command to remove a plugin only Shortcut or ID are supported
Contributing
Section titled “Contributing”Biggest contribution you can do is to open issues. You will need to have signed off on the Apache CLA in order for changes to be accepted. For more information, refer to: http://www.apache.org/licenses/#clas In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.