Vai al contenuto

Guida introduttiva a Cordova Updater

GitHub

Questa guida ti accompagna nell'aggiunta di @capgo/cordova-updater a un'app Cordova per ricevere aggiornamenti live Capgo su iOS e Android.

  • Cordova CLI 12+
  • Cordova Android 13+ e/o Cordova iOS 7+
  • Un account Capgo (capgo.app/register)
  1. Installa il plugin da npm e passa il tuo app ID Capgo:

    Finestra del terminale
    cordova plugin add @capgo/cordova-updater --variable APP_ID=YOUR_CAPGO_APP_ID
  2. Opzionale: sovrascrivi i valori predefiniti in fase di installazione (stesse variabili dell'updater Capacitor):

    Finestra del terminale
    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. Prepara i progetti nativi dopo aver modificato le variabili del plugin:

    Finestra del terminale
    cordova prepare android ios
document.addEventListener('deviceready', async () => {
await cordova.plugins.Updater.notifyAppReady();
});
  • Non usare cordova-plugin-ionic-webview con questo plugin.
  • Chiama notifyAppReady() non appena il bundle viene caricato, prima che le operazioni pesanti sulla UI ritardino la finestra di rollback.
  • Mantieni corrette le impostazioni dello schema Cordova.

Dopo aver deviceready, il plugin è disponibile come 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 });
}
});

I tipi TypeScript sono inclusi nel pacchetto npm:

import type { UpdaterPlugin } from '@capgo/cordova-updater';
declare const cordova: { plugins: { Updater: UpdaterPlugin } };
  • Richiede Cordova Android 13+ in modo che la WebView venga servita dal default https://localhost/ predefinito.
  • Il plugin registra un CordovaPluginPathHandler per servire gli asset del bundle scaricato.

Fai il build dei tuoi asset web, poi fai l'upload con Capgo CLI (stesso workflow di Capacitor):

Finestra del terminale
bun run build
npx @capgo/cli@latest bundle upload --channel=production
  • Confronta le impostazioni con Configurazione dell'updater Capacitor — la maggior parte delle opzioni plugin.xml variabili.
  • Lettura Compatibilità Live update prima di rilasciare modifiche al plugin nativo.
  • Passerai a Capacitor in seguito? Mantieni lo stesso app ID e gli stessi canali di Capgo; cambia solo il pacchetto del plugin client.