cordova-lib を読み込めば Gulp スクリプト内で Cordova コマンドが叩ける

ローカルに cordova をインストールすると、cordova-lib というモノが読み込めるようになるらしく、これを Gulp スクリプト内で require() してやると、Gulp スクリプトから Cordova コマンドを叩くようなことができる。

例えば iPhone7 シミュレータを開く $ cordova emulate --target=iPhone-7 コマンドを Gulp スクリプトで再現するなら、以下のようになる。

const gulp = require('gulp');

// Cordova Lib を読み込む
const cordova = require('cordova-lib').cordova;

// $ cordova emulate --target=iPhone-7 と同様の処理を実行する
gulp.task('cordova-emulate-iphone7', () => {
  return cordova.emulate({
    'platforms': ['ios'],
    'options': ['--target=iPhone-7']
  });
});

options はオプションを1つずつ配列に分けて指定すれば良いだけ。

その他の操作もできる。

// cordova build
cordova.build({
  options: ['--release']
});

// cordova run : 引数は emulate() と同様
cordova.run();

// cordova platform : add・remove が可能
cordova.platform('add', 'ios');
cordova.platform('remove', 'ios');