Vai al contenuto

@capgo/capacitor-updater

Live update per le app capacitor.

Gli aggiornamenti live di Capgo non sono limitati a Capacitor. Usa lo stesso backend e CLI con plugin client correlati:

@capgo/capacitor-updater che spedisce aggiornamenti del bundle JavaScript alle app Capacitor in produzione senza attendere la revisione degli store. Scarica bundle firmati in background, gestisci il rollout con i canali e le regole di delay, e fai il rollback se notifyAppReady() non viene chiamato entro il appReadyTimeout.

Casi d'uso tipici: hotfix per bug in produzione, beta graduali per canale, esperimenti UI A/B e rollback di emergenza al bundle predefinito.

PiattaformaSupporto
iOSSì
AndroidSì
WebI bundle si applicano al layer WebView nelle shell native, non ai siti statici ospitati

I client Cordova ed Electron utilizzano i plugin correlati sopra con lo stesso backend Capgo.

  • notifyAppReady - Notifica al layer nativo che l'inizializzazione di JavaScript è avvenuta con successo.
  • setUpdateUrl - Imposta dinamicamente l'URL degli update dell'app a runtime.
  • setStatsUrl - Imposta dinamicamente l'URL delle statistiche dell'app a runtime.
  • setChannelUrl - Imposta dinamicamente l'URL del canale dell'app a runtime.
MetodoDescrizione
notifyAppReadyNotifica al layer nativo che l'inizializzazione di JavaScript è avvenuta con successo.
setUpdateUrlImposta dinamicamente l'URL degli update dell'app a runtime.
setStatsUrlImposta dinamicamente l'URL delle statistiche dell'app a runtime.
setChannelUrlImposta dinamicamente l'URL del canale dell'app a runtime.
downloadScarica un nuovo bundle dall'URL fornito per l'installazione successiva.
nextImposta il prossimo bundle da attivare al background o al riavvio dell'app.
setImposta il bundle corrente e ricarica immediatamente l'app.
deleteElimina un bundle dallo storage locale per liberare spazio su disco.
setBundleErrorSegna manualmente un bundle come fallito/errato in modalità update manuale.
listRecupera tutti i bundle scaricati localmente nella tua app.
resetRipristina l'app a un bundle noto e funzionante.
currentOttieni informazioni sul bundle attualmente attivo.
reloadRicarica manualmente l'app per applicare un update in sospeso.
setMultiDelayConfigura le condizioni da soddisfare prima di applicare un update in sospeso.
cancelDelayAnnulla tutte le condizioni di ritardo e applica subito l'update in sospeso.
getLatestControlla sul server di update l'ultima versione del bundle disponibile.
setChannelImposta un canale di aggiornamento locale per questo dispositivo. Non crea un override su dashboard o API.
unsetChannelRimuove l'assegnazione del canale al dispositivo e torna al canale predefinito.
getChannelOttieni il canale attualmente assegnato a questo dispositivo.
listChannelsOttieni l'elenco di tutti i canali disponibili per l'auto-assegnazione su questo dispositivo.
setCustomIdSet a custom identifier for this device.
getBuiltinVersionOttieni la versione del bundle integrata (la versione originale inclusa nel tuo Native Build).
getDeviceIdOttieni l'identificativo univoco e privacy-friendly per questo dispositivo.
getPluginVersionOttieni la versione del plugin Capacitor Updater installata nella tua app.
isAutoUpdateEnabledControlla se gli aggiornamenti automatici sono attualmente abilitati.
removeAllListenersRimuove tutti gli event listener registrati per questo plugin.
addListenerAscolta l'evento di download del bundle nell'App. Si attiva all'inizio, durante e al termine del download, restituendo la percentuale di avanzamento.
addListenerAscolta l'evento 'no need to update', utile se vuoi forzare il controllo ad ogni avvio dell'app.
addListenerAscolta l'evento di aggiornamento disponibile, utile se vuoi forzare un controllo ogni volta che l'app viene avviata.
addListenerAscolta gli eventi downloadComplete.
addListenerAscolta gli eventi breaking update quando il backend segnala un aggiornamento incompatibile con l'app attuale. Emette lo stesso payload del vecchio majorAvailable listener.
addListenerAscolta l'evento di Major update nell'app per sapere quando un aggiornamento importante viene bloccato impostando disableAutoUpdateBreaking.
addListenerAscolta l'evento di errore dell'aggiornamento nell'App per sapere se l'installazione è fallita al prossimo avvio.
addListenerAscolta l'evento set nell'app: ti avvisa quando un bundle è stato applicato con successo. L'evento è mantenuto nativamente finché JavaScript non lo consuma, quindi se l'app si ricarica prima che il listener sia collegato, l'ultimo set evento viene consegnato non appena il listener si iscrive.
addListenerAscolta l'evento set next nell'app per sapere quando un bundle è in coda per l'installazione successiva.
addListenerAscolta l'evento download fail nell'app: ti avvisa quando il download di un bundle è fallito.
addListenerAscolta l'evento di reload nell'App per sapere quando è avvenuto il ricaricamento.
addListenerAscolta l'evento app ready nell'app: ti avvisa quando l'app è pronta all'uso. L'evento è mantenuto nativamente finché JavaScript non lo consuma, quindi può ancora essere consegnato dopo un reload, anche se il listener viene collegato più tardi durante l'avvio.
addListenerAscolta l'evento privato del canale, emesso quando si tenta di impostare un canale che non consente l'auto-assegnazione del dispositivo.
addListenerAscolta i cambiamenti di stato degli aggiornamenti flessibili su Android.
isAutoUpdateAvailableVerifica se la funzione di auto-update è disponibile (non disabilitata da una configurazione server personalizzata).
getNextBundleOttieni informazioni sul bundle in coda per l'attivazione al prossimo reload.
getFailedUpdateRecupera informazioni sul bundle più recente che non è riuscito a caricarsi.
setShakeMenuAbilita o disabilita il menu del gesto shake per il debug e i test.
isShakeMenuEnabledVerifica se il menu di debug tramite gesto shake è attualmente abilitato.
setShakeChannelSelectorAbilita o disabilita a runtime il selettore di canale tramite gesto shake.
isShakeChannelSelectorEnabledVerifica se il selettore di canale tramite gesto shake è attualmente abilitato.
getAppIdOttieni l'App ID attualmente configurato per la comunicazione con il server di aggiornamento.
setAppIdCambia dinamicamente l'App ID usato per la comunicazione con il server di aggiornamento.
getAppUpdateInfoOttieni informazioni sulla disponibilità dell'app su App Store o Play Store.
openAppStoreApri la pagina dell'app su App Store o Play Store.
performImmediateUpdateEsegui un aggiornamento in-app immediato su Android.
startFlexibleUpdateAvvia un aggiornamento in-app flessibile su Android.
completeFlexibleUpdateCompleta un aggiornamento in-app flessibile su Android.

Questo riferimento è sincronizzato da src/definitions.ts nella capacitor-updater.

Se stai usando @capgo/capacitor-updater per pianificare il lavoro sui plugin nativi, collegalo a Usando @capgo/capacitor-updater per la funzionalità nativa in Usando @capgo/capacitor-updater, Directory dei plugin di Capgo per il workflow del prodotto nella Capgo Plugin Directory, Plugin Capacitor di Capgo per i dettagli di implementazione in Capacitor Plugins di Capgo, Aggiunta o aggiornamento dei plugin per i dettagli su come aggiungere o aggiornare i plugin, e Alternative ai plugin Ionic Enterprise per il workflow del prodotto in Alternative ai plugin Ionic Enterprise.