メインコンテンツへスキップ

Cordova Updater の始め方

GitHub

このガイドでは、次の手順を説明します: @capgo/cordova-updater Cordovaアプリに追加して、iOSとAndroidでCapgoのライブアップデートを受け取れるようにします。

  • Cordova CLI 12+ 以上
  • Cordova Android 13+ および/または Cordova iOS 7+
  • Capgo アカウント(capgo.app/register)
  1. npm からプラグインをインストールし、Capgo アプリ ID を渡します:

    ターミナル
    cordova plugin add @capgo/cordova-updater --variable APP_ID=YOUR_CAPGO_APP_ID
  2. 任意:インストール時にデフォルト値を上書きします(Capacitor アプデーターと同じ変数):

    ターミナル
    cordova plugin add @capgo/cordova-updater \
    --variable APP_ID=YOUR_CAPGO_APP_ID \
    --variable DEFAULT_CHANNEL=production \
    --variable UPDATE_URL=https://plugin.capgo.app/updates \
    --variable AUTO_UPDATE=atBackground
  3. プラグインの変数を変更した後は、ネイティブプロジェクトを準備します:

    ターミナル
    cordova prepare android ios
document.addEventListener('deviceready', async () => {
await cordova.plugins.Updater.notifyAppReady();
});
  • このプラグインと cordova-plugin-ionic-webview を併用しないでください。
  • 呼び出す notifyAppReady() バンドルが読み込まれたらすぐに。重い UI 処理でロールバックの猶予が遅れる前に。
  • Cordova のスキーム設定が正しいことを確認してください。

完了後、 devicereadyプラグインは次のように利用できます: cordova.plugins.Updater:

document.addEventListener('deviceready', async () => {
const { Updater } = cordova.plugins;
await Updater.notifyAppReady();
const latest = await Updater.getLatest();
if (latest.url && !latest.error) {
const bundle = await Updater.download({
url: latest.url,
version: latest.version,
checksum: latest.checksum,
});
await Updater.next({ id: bundle.id });
}
});

TypeScript の型定義は npm パッケージに同梱されています:

import type { UpdaterPlugin } from '@capgo/cordova-updater';
declare const cordova: { plugins: { Updater: UpdaterPlugin } };

プラットフォーム別の注意点

「プラットフォームの注意点」セクション
  • Cordova Android 13 以上が必要です。WebView はデフォルトの https://localhost/ スキームで配信されます。
  • プラグインは次を登録します: CordovaPluginPathHandler ダウンロード済みのバンドルアセットを配信するため。

Webアセットをビルドし、Capgo CLI でアップロードします(Capacitor と同じワークフロー):

ターミナル
bun run build
npx @capgo/cli@latest bundle upload --channel=production
  • 設定を次と比較してください Capacitor updaterの設定 — ほとんどのオプションは plugin.xml 変数に対応しています。
  • 読む Live updateの互換性 ネイティブプラグインの変更をリリースする前に。
  • 後で Capacitor へ移行する場合は、同じ Capgo アプリ ID とチャネルを維持してください。変更されるのはクライアントプラグインのパッケージのみです。