Tipi di Aggiornamento
Copiare un prompt di configurazione con i passaggi di installazione e la guida markdown completa per questo plugin.
Capgo supporta diversi tipi di aggiornamenti over-the-air (OTA). Questa pagina elenca e spiega tutti di loro in modo che possa scegliere la combinazione giusta per la sua app.
Applica il timing
Sezione intitolata “Applica il timing”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 controlli quell'intervallo (impostazione predefinita 10 minuti).
| Tipo | Descrizione | Utilizzo |
|---|---|---|
autoUpdate: atBackground | Controlla e scarica su ogni controllo in primo piano, applica quando l'app si sposta in background | La maggior parte degli app; minimo disturbo |
autoUpdate: atInstall | Applica immediatamente solo dopo un'installazione fresca o un aggiornamento della store nativa; altrimenti utilizza atBackground | Gli utenti nuovi ricevono la versione più recente; gli utenti esistenti utilizzano l'aggiornamento in background |
autoUpdate: onLaunch | Applica immediatamente solo all'avvio (killed → foreground); quindi ricade su atBackground | Equilibrio tra freschezza e stabilità della sessione |
autoUpdate: always | Controlla ogni transizione in primo piano e applica immediatamente ogni volta che è disponibile un aggiornamento | Risolvere le criticità, app con stato semplice |
autoUpdate: onlyDownload | Controlla e scarica automaticamente, emetti updateAvailablee non applica mai automaticamente | App 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' }}Condizioni di ritardo
Sezione intitolata “Condizioni di ritardo”Le condizioni che devono essere soddisfatte prima di un aggiornamento venga installato. Utilizza setMultiDelay per combinarele (tutte le condizioni devono essere soddisfatte).
| Condizione | Descrizione | Esempio |
|---|---|---|
| data | Aspettare fino a una data specifica/ora | Coordina con la rilascio server-side |
| background | Aspettare un minimo di durata (ms) dopo che l'app è stata backgroundata | Evita l'applicazione durante i rapidi switch di app |
| nativeVersion | Richiedi una versione minima di binario nativo | Blocca gli aggiornamenti su nativi code incompatibili |
| uccidi | Aspetta l'evento di uccisione dell'applicazione successivo | Applica 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' }, ],});Blocco versione (Politica del canale)
Sezione intitolata “Blocco versione (Politica del canale)”Controlla quali aggiornamenti semver un canale auto-distribuirà. Impostato via --disable-auto-update su canali.
| Strategy | Blocks | Consente | Utilizzo |
|---|---|---|---|
| nessuno | Niente | Qualsiasi versione del bundle di destinazione | Predefinito; aggiornamento auto completo |
| maggiore | Maggiore di maggiore version_buildad esempio 1.2.3 -> 2.0.0 | stesso major, ad esempio 1.2.3 -> 1.9.0 o 1.2.3 -> 1.2.4 | Prevenire le modifiche di rottura da raggiungere le native code |
| minore | Di diverso major o minore di version_build, ad esempio 1.2.3 -> 1.3.0 | stesso major e minore, ad esempio 1.2.3 -> 1.2.4 | Mantieni gli aggiornamenti all'interno di una linea minorativa nativa |
| patch | Qualsiasi cambiamento di numero di major, minore o patch, ad esempio 1.0.0 -> 1.0.1 | Solo 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.2 | Modalità più rigorosa: nessuna versione core in movimento |
| metadati | Mancante min_update_version, o version_build sotto di esso | Il bundle di destinazione il cui min_update_version è inferiore o uguale a version_build | Regole di compatibilità personalizzate per bundle |
Queste verifiche confrontano il bundle di destinazione con la baseline nativa inviata come version_build, non il bundle scaricato e installato correntemente inviato come version_name.
npx @capgo/cli channel set production --disable-auto-update majorTipi di consegna
Sottosezione intitolata “Tipi di consegna”Come il bundle viene trasferito al dispositivo.
| Tipo | Descrizione | Quando utilizzare |
|---|---|---|
| Bundle completo | Tutto il bundle JS viene scaricato | Prima installazione, grandi modifiche o quando non è disponibile il delta |
| Delta (manifesto) | Solo i file modificati vengono scaricati | Maggior parte degli aggiornamenti; più veloce e amichevole con la banda |
# Full bundle (default)npx @capgo/cli bundle upload --channel production
# Delta updatesnpx @capgo/cli bundle upload --channel production --deltaRiferimento rapido
Sezione intitolata “Riferimento rapido”| Categoria | Tipi |
|---|---|
| Applica ritardo | off, atBackground, atInstall, onLaunch, always, onlyDownload |
| Condizioni di ritardo | date, background, nativeVersion, kill |
| Blocco versione | none, major, minor, patch, metadata |
| Consegna | Pacco completo, Delta (manifesto) |
Relazionato
Sezione intitolata “Relazionato”- Aggiorna comportamento — Configura l'applicazione del ritardo e delle pause
- Versione di destinazione — Routing delle versioni basato sui canali
- Aggiornamenti (manifesto) Delta — Abilita download parziali
- Canali — Configurazione e precedenza dei canali
Continua da Tipi di Aggiornamento
Sezione intitolata “Continua da Tipi di Aggiornamento”Se stai utilizzando Tipi di Aggiornamento per pianificare la consegna di aggiornamenti in tempo reale, connettilo con Capgo Aggiornamenti in Tempo Reale per il flusso di lavoro del prodotto in Capgo Aggiornamenti in Tempo Reale, Panoramica per i dettagli di implementazione in Overview Caratteristiche per i dettagli di implementazione in Caratteristiche Comportamento dell'aggiornamento per i dettagli di implementazione in Comportamento dell'aggiornamento, e Avvio per i dettagli di implementazione in Avvio.