Saltare al contenuto

Tipi di aggiornamento

Capgo supporta diversi tipi di aggiornamenti over-the-air (OTA). Questa pagina elenca e spiega tutti di essi in modo che possiate scegliere la combinazione giusta per il vostro app.

Controlli quando un aggiornamento viene applicato dopo che è stato scaricato.

TipoDescrizioneUtilizzo
DefaultScarica in background, applica quando l'utente chiude il background o uccide l'appLa maggior parte degli app; minima interruzione
directUpdate: atInstallApplica immediatamente solo all'installazione fresca o aggiornamento dell'app storeNuovi utenti ricevono la versione più recente; gli utenti esistenti utilizzano il flusso predefinito
directUpdate: onLaunchApplica immediatamente all'installazione, aggiornamento dell'app store o dopo che l'app è stata uccisaEquilibrio tra freschezza e stabilità della sessione
directUpdate: alwaysApplica immediatamente ogni volta che viene scaricata un'aggiornamento (compreso al ripristino)Risoluzione critica, app con stato semplice

Configura in capacitor.config.ts:

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

Le condizioni che devono essere soddisfatte prima di un aggiornamento venga installato. Utilizza setMultiDelay per combinare le condizioni (tutte le condizioni devono essere soddisfatte).

CondizioneDescrizioneEsempio
dataAttendere fino a dopo una data/ora specificaCoordina con la rilascio server-side
backgroundAttendere un minimo di durata (ms) dopo che l'app è stata backgroundataEvita di applicare durante scambi di app veloci
versione nativaRichiedi una versione minima di binario nativoBlocca gli aggiornamenti su nativi incompatibili code
UccidiAttendere l'evento di uccisione dell'applicazione successivoApplica 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. Impostato tramite --disable-auto-update su canali.

StrategiaBlocchiConsenteCaso d'uso
nessunoNienteTutte le aggiornamentiPredefinito; aggiornamento auto completo
maggiore0.0.0 → 1.0.0Lo stesso maggiore (ad esempio 1.x → 1.y)Prevenire cambiamenti di rottura che raggiungono vecchie native
minore0.0.0 → 1.1.0, 1.1.0 → 1.2.0Lo stesso minore (ad esempio 1.2.x → 1.2.y)Controllo più stretto all'interno di una versione maggiore
patchQualsiasi cambiamento eccetto il bump di patchSolo 0.0.311 → 0.0.314Molto rigidi; aggiornamenti solo di patch
metadatiAggiornamenti senza min_update_versionAggiornamenti con metadati di compatibilità esplicitiRegole di compatibilità personalizzate per bundle
Finestra del terminale
npx @capgo/cli channel set production --disable-auto-update major

How the bundle is transferred to the dispositivo. Tipo Descrizione

Quando utilizzareTutto il bundleTutto il bundle JS viene scaricato
Prima installazione, grandi modifiche o quando il delta non è disponibileDelta (manifesto)Solo i file modificati vengono scaricati
Aggiornamenti più frequenti; più veloce e amichevole con la banda__CAPGO_KEEP_0____CAPGO_KEEP_0__
Finestra del terminale
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta
CategoriaTipi
Applica il timingPredefinito, atInstall, onLaunch, always
Condizioni di ritardodate, background, nativeVersion, kill
Blocco versionenone, major, minor, patch, metadata
ConsegnaPacco completo, Delta (manifesto)