Saltare al contenuto

Tipi di aggiornamento

Capgo supporta diversi tipi di aggiornamenti in tempo reale (OTA). Questa pagina elenca e spiega tutti di loro, in modo che tu possa scegliere la combinazione giusta per la tua app.

Controlli quando Un aggiornamento viene applicato dopo essere stato scaricato. Il plugin controlla gli aggiornamenti quando l'app si sposta in primo piano e su un timer ripetuto mentre l'app rimane aperta. periodCheckDelay Controlla questo intervallo (impostazione predefinita 10 minuti).

TipoDescrizioneUtilizzo
autoUpdate: atBackgroundControlla e scarica su ogni controllo in primo piano, applica quando l'app si sposta in backgroundLa maggior parte degli app; minimo disturbo
autoUpdate: atInstallApplica immediatamente solo dopo un installazione fresca o aggiornamento di un'app nativa; altrimenti utilizza atBackgroundNew users get latest; existing users use background apply
autoUpdate: onLaunchApplica immediatamente solo all'avvio freddo (killed → foreground); quindi ricadere su atBackgroundEquilibrio tra freschezza e stabilità della sessione
autoUpdate: alwaysControlla ogni volta che si passa a un'altra applicazione e applica immediatamente l'aggiornamento disponibileRisolvere i problemi critici, app con stato semplice
autoUpdate: onlyDownloadVerifica e scarica automaticamente, emette updateAvailableE mai applicare automaticamenteApp che mostrano la propria finestra di aggiornamento o controllano esattamente quando chiamare set()

Configura in capacitor.config.ts:

plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground', // default; true is still accepted
// or: 'off' | 'atInstall' | 'onLaunch' | 'always' | 'onlyDownload'
}
}

Le condizioni che devono essere soddisfatte prima context: prima di lavorare su una nuova funzionalità. setMultiDelay per combinare (tutte le condizioni devono essere soddisfatte).

CondizioneDescrizioneEsempio
DataAspettare fino a una data/ora specificaCoordina con la versione del server
backgroundAspetta un minimo di tempo (ms) dopo che l'app è stata messa in backgroundEvita di applicare durante scambi di app veloci
nativeVersionRichiedi una versione minima del binario nativoBlock updates on incompatible native code
killWait until the next app kill eventApplica 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 auto-distribuirà. Impostato tramite --disable-auto-update su canali.

StrategiaBlocchiConsenteUtilizzo
nessunaNienteQualsiasi versione del pacchetto di destinazionePredefinito; aggiornamento auto completo
maggioreAggiornamento maggiore di version_buildper esempio 1.2.3 -> 2.0.0Con lo stesso numero maggiore, ad esempio 1.2.3 -> 1.9.0 o 1.2.3 -> 1.2.4Prevenire cambiamenti di rottura da raggiungere vecchie native code
minoreDiverso maggiore o minore di version_build, ad esempio 1.2.3 -> 1.3.0Lo stesso maggiore e minore, ad esempio 1.2.3 -> 1.2.4Keep updates inside one native minor line
patchQualsiasi cambiamento di numero maggiore, minore o patch, ad esempio 1.0.0 -> 1.0.1Solo cambiamenti di suffisso mentre MAJOR.MINOR.PATCH rimane identico, ad esempio 1.0.0-beta.1 -> 1.0.0-beta.2 o 1.0.0+build.1 -> 1.0.0+build.2Modalità più rigorosa: nessuna versione del core aggiornata
metadataMancato min_update_version, o version_build Sotto di essoBundle di destinazione min_update_version Regole di compatibilità personalizzate per bundle version_buildRegole di compatibilità personalizzate per bundle

, non il bundle scaricato e installato correntemente inviato come version_build, non il bundle attualmente installato scaricato inviato come version_name.

Copia negli appunti
npx @capgo/cli channel set production --disable-auto-update major

Tipi di distribuzione

pacchetto viene trasferito

al dispositivo. Tipi di Consegna aggiornamento sul dispositivo.

TipoDescrizioneQuando utilizzare
Pacco completoTutto il pacchetto JS viene scaricatoPrima installazione, grandi modifiche o quando non è disponibile il delta
DeltaVengono scaricati solo i file modificatiAggiornamenti standard; più veloci e risparmiatori di banda
Finestra del terminale
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta
CategoryCategoria
Applica il timingoff, atBackground, atInstall, onLaunch, always, onlyDownload
Condizioni di ritardodate, background, nativeVersion, kill
Aggiornamento di versionenone, major, minor, patch, metadata
ConsegnaConsegna completa, Delta

Se stai utilizzando Tipi di Aggiornamento per pianificare la live update consegna, connettilo con Capgo Aggiornamenti in Tempo Reale for the product workflow in Capgo Live Updates, Overview per i dettagli di implementazione nella panoramica Features per i dettagli di implementazione nei Features, Comportamento dell'aggiornamento per il dettaglio di implementazione in Comportamento dell'aggiornamento, e Getting Started per il dettaglio di implementazione in Iniziare.