command line tool to easily build a wavemaker mobile project
npm install @wavemaker/wm-cordova-cliA command line untility to build mobile apps created using WaveMaker product.
The main goal of wm-cordova-cli is to simplify generation of APK or IPA for WaveMaker developers. ``wm-cordova-cli`` combines multiple cordova commands into a single command. First, one has to make sure all the required hardware and software are available and installed. Then execute the command with the appropriate values for arguments.
- Linux or MAC or Windows
- Latest Android Studio
- Node 20.17.x (https://nodejs.org/en/blog/release/v20.17.0/)
- GIT (https://git-scm.com/download)
- Java 17 (for Wavemaker 11.2 and WaveMaker 10.16 projects) or Java 8 for earlier versions
- Gradle 8.13 (https://gradle.org/releases/)
- KeyStore file for production release builds (https://developer.android.com/studio/publish/app-signing#generate-key)
- Install wm-cordova-cli (npm install -g @wavemaker/wm-cordova-cli)
- Make sure JAVA_HOME, ANDROID_SDK and GRADLE_HOME are set in the environment variables and also in PATH.
- For development build, keystore is optional.
- For production build, keystore is required.
wm-cordova build android
| Argument | Description |
|--|--|
| src_dir | DEFAULT: current working directory.
Path to the cordova zip (or) path to the cordova project folder. |
|dest_dir|OPTIONAL: Path to the directory where all build files are to be kept.|
|\-\-cordovaVersion|OPTIONAL: Cordova cli version to use|
|\-\-cordovaAndroidVersion|OPTIONAL: Version of cordova-ios to use|
|\-\-aKeyStore|Absolute path of the key store. If keystore is not given then android debug key is used.|
|\-\-aStorePassword|Password to key store|
|\-\-aKeyAlias|Alias name of the key|
|\-\-aKeyPassword|Key Password|
|\-\-packageType|DEFAULT: apk
'apk' or 'bundle' (for aab)
|\-\-buildType|DEFAULT: development
development or production
Use ‘production’ with keystore specified.|
|\-\-allowHooks|DEFAULT: true
this flag can be used to turn on and off cordova hooks functionality.|
~~~
wm-cordova build android "/path/to/src"
~~~
- MAC machine
- Latest XCODE
- CocoaPods (https://guides.cocoapods.org/using/getting-started.html#toc_3)
- Node 18.x (https://nodejs.org/en/blog/release/v10.18.0/)
- GIT (https://git-scm.com/download/mac)
- Apple developer or distribution P12 certificates
- Provisioning profile
- Install wm-cordova-cli (npm install -g @wavemaker/wm-cordova-cli)
- For development build, development certificate and development provisioning file are required.
- For production build, distribution certificate and distribution provisioning file are required.
NOTE: Before building an app, please make sure that neither iPhone nor iPad is not connected to Mac. This is open issue on cordova-ios.
wm-cordova build ios
| Argument | Description |
|--|--|
| src_dir | DEFAULT: current working directory.
Path to the cordova zip (or) path to the cordova project folder. |
|dest_dir|OPTIONAL: Path to the directory where all build files are to be kept.|
|\-\-cordovaVersion|OPTIONAL: Cordova cli version to use|
|\-\-cordovaIosVersion|OPTIONAL: Version of cordova-ios to use|
|\-\-iCertificate|Absolute path of P12 certificate location|
|\-\-iCertificatePassword|Password to unlock the certificate.|
|\-\-iProvisioningFile|Absolute path of provisioning file|
|\-\-buildType|DEFAULT: development
development or production
Use ‘production’ with an AppStore distribution certificate.|
|\-\-allowHooks|DEFAULT: true
this flag can be used to turn on and off cordova hooks functionality.|
~~~
wm-cordova build ios "/path/to/src" \
--iCertificate="/path/to/distribution.p12" \
--iCertificatePassword="unlock_password" \
--iProvisioningFile="/path/to/profile.mobileprovision" \
--buildType="production"
~~~
| PHONEGAP-CLI | CORDOVA | CORDOVA-ANDROID | CORDOVA-IOS |
|--|--|--|--|
| cli-9.0.0 | 9.0.0 | 8.0.0 | 5.1.1 |
| cli-8.1.1 | 8.1.1 | 7.1.2 | 4.5.5 |
| cli-8.0.0 | 8.0.0 | 7.0.0 | 4.5.4 |
2. In config.xml, the above cordova values can be overridden by setting preferences with the below mentioned names.
wm-cordova
wm-cordova-android
wm-cordova-ios
3. Cordova versions can also be mentioned as command line arguments.
1. Destination folder path is logged at the start of the build.
2. Build log files are present at
3. The artifact built is available at