Vai al contenuto

Tipi di Aggiornamento

Capgo supporta diversi tipi di aggiornamenti over-the-air (OTA). Questa pagina elenca e spiega tutti i tipi disponibili in modo da poter scegliere la combinazione giusta per la tua app.

Controlla quando un aggiornamento viene applicato dopo essere stato scaricato.

TipoDescrizioneCaso d’Uso
DefaultScarica in background, applica quando l’utente mette in background o chiude l’appLa maggior parte delle app; interruzione minima
directUpdate: atInstallApplica immediatamente solo su installazione nuova o aggiornamento dall’app storeI nuovi utenti ottengono l’ultima versione; gli utenti esistenti usano il flusso predefinito
directUpdate: onLaunchApplica immediatamente all’installazione, aggiornamento store o dopo la chiusura dell’appEquilibrio tra aggiornamento e stabilità della sessione
directUpdate: alwaysApplica immediatamente ogni volta che viene scaricato un aggiornamento (anche al ripristino)Correzioni critiche, app con stato semplice

Configura in capacitor.config.ts:

plugins: {
CapacitorUpdater: {
directUpdate: false, // default
// or: 'atInstall' | 'onLaunch' | 'always'
}
}

Condizioni che devono essere soddisfatte prima che un aggiornamento venga installato. Usa setMultiDelay per combinarle (tutte le condizioni devono essere soddisfatte).

CondizioneDescrizioneEsempio
dateAttendi fino a dopo una data/ora specificaCoordina con il rilascio lato server
backgroundAttendi una durata minima (ms) dopo che l’app è stata messa in backgroundEvita l’applicazione durante rapidi cambi di app
nativeVersionRichiedi una versione minima del binario nativoBlocca aggiornamenti su codice nativo incompatibile
killAttendi fino al prossimo evento di chiusura dell’appApplica solo al riavvio completo
import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.setMultiDelay({
delayConditions: [
{ kind: 'date', value: '2023-06-01T00:00:00.000Z' },
{ kind: 'background', value: '60000' },
],
});

Controlla quali aggiornamenti semver un canale consegnerà automaticamente. Imposta tramite --disable-auto-update sui canali.

StrategiaBloccaConsenteCaso d’Uso
noneNienteTutti gli aggiornamentiPredefinito; aggiornamento automatico completo
major0.0.0 → 1.0.0Stesso major (es. 1.x → 1.y)Previeni modifiche breaking dal raggiungere vecchi nativi
minor0.0.0 → 1.1.0, 1.1.0 → 1.2.0Stesso minor (es. 1.2.x → 1.2.y)Controllo più rigoroso all’interno del major
patchQualsiasi modifica eccetto incremento patchSolo 0.0.311 → 0.0.314Molto rigoroso; solo aggiornamenti patch
metadataAggiornamenti senza min_update_versionAggiornamenti con metadati di compatibilità esplicitiRegole di compatibilità personalizzate per bundle
Terminal window
npx @capgo/cli channel set production --disable-auto-update major

Come il bundle viene trasferito al dispositivo.

TipoDescrizioneQuando Usarlo
Full bundleL’intero bundle JS viene scaricatoPrima installazione, grandi modifiche o quando il delta non è disponibile
Delta (manifest)Vengono scaricati solo i file modificatiLa maggior parte degli aggiornamenti; più veloce e risparmia banda
Terminal window
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta
CategoriaTipi
Tempistiche di applicazioneDefault, atInstall, onLaunch, always
Condizioni di ritardodate, background, nativeVersion, kill
Blocco delle versioninone, major, minor, patch, metadata
ConsegnaFull bundle, Delta (manifest)