Zum Inhalt springen

Update-Typen

Capgo unterstützt mehrere Arten von drahtlosen (OTA) Updates. Diese Seite listet und erklärt alle davon, damit Sie die richtige Combination für Ihre App wählen können.

Steuerung als Ein Update wird nach dem Download angewendet. Der Plugin prüft Updates, wenn die App in den Vordergrund bewegt wird und auf einem wiederholten Timer, während die App geöffnet bleibt. periodCheckDelay Steuert diese Intervall (Standard 10 Minuten).

TypBeschreibungVerwendungsfall
autoUpdate: atBackgroundÜberprüfen und herunterladen bei jedem Vordergrund-Check, anwenden, wenn die App in den Hintergrund bewegt wirdDie meisten Apps; minimaler Störung
autoUpdate: atInstallAnwenden, sobald nur nach einer frischen Installation oder einem Update aus dem Native App Store; andernfalls verwenden atBackgroundNew users get latest; existing users use background apply
autoUpdate: onLaunchSofort anwenden nur bei kaltem Start (beendet → Vordergrund); dann auf Fall-back zurückgreifen atBackgroundBalance zwischen Aktualität und Sitzungsstabilität
autoUpdate: alwaysÜberprüfen Sie bei jeder Vordergrundübergabe und wenden Sie die Änderung sofort an, sobald eine Aktualisierung verfügbar ist.Kritische Fixes, Apps mit einfacher Zustandsanzeige
autoUpdate: onlyDownloadÜberprüfen und automatisch herunterladen, ausgeben updateAvailable, und wenden Sie sich nie automatisch anApps, die ihre eigene Update-Anzeige anzeigen oder genau dann aufrufen, wenn sie es wünschen set()

Konfigurieren Sie in capacitor.config.ts:

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

Bedingungen, die erfüllt sein müssen vorher Bevor ein Update installiert wird. Verwenden Sie setMultiDelay um sie kombinieren (alle Bedingungen müssen erfüllt sein).

BedingungBeschreibungBeispiel
DatumWarten, bis nach einem bestimmten Datum/UhrzeitCoordinate with server-side release
HintergrundWarten Sie eine Mindestdauer (ms) nachdem die App im Hintergrund geschaltet wurdeVermeiden Sie die Anwendung während schneller App-Wechsel
nativeVersionErhalten Sie eine Mindestversion des nativen BinärsBlockieren Sie Updates auf inkompatiblen nativen code
killWarten Sie, bis zum nächsten App-TötungsereignisErstwählen Sie nur bei vollständiger Neustart
import { CapacitorUpdater } from '@capgo/capacitor-updater';
await CapacitorUpdater.setMultiDelay({
delayConditions: [
{ kind: 'date', value: '2023-06-01T00:00:00.000Z' },
{ kind: 'background', value: '60000' },
],
});

Regelt, welche semver-Updates ein Kanal automatisch liefern wird. Über --disable-auto-update auf Kanäle gesetzt.

StrategieBlöckeErmöglichtAnwendungsfall
keineKeinJede Ziel-Bundle-VersionStandard; Vollautomatik
GroßHöherer Hauptversion als version_build, zum Beispiel 1.2.3 -> 2.0.0Das gleiche Groß, zum Beispiel 1.2.3 -> 1.9.0 oder 1.2.3 -> 1.2.4Verhindere, dass wichtige Änderungen alte native code erreichen
minorVerschiedene Haupt- oder Minorversion als version_build, zum Beispiel 1.2.3 -> 1.3.0Bleiben Updates innerhalb einer native Minorlinie 1.2.3 -> 1.2.4Halten Sie Updates innerhalb einer nativen Minor-Linie
patchAny major, minor, or patch number change, for example 1.0.0 -> 1.0.1bleibt identisch, zum Beispiel MAJOR.MINOR.PATCH bleibt identisch, zum Beispiel 1.0.0-beta.1 -> 1.0.0-beta.2 or 1.0.0+build.1 -> 1.0.0+build.2Stricteste Modus: keine Kernversionsbewegung
metadataFehlend min_update_version, oder version_build DarunterZielpaket, dessen min_update_version kleiner oder gleich version_buildBenutzerdefinierte Kompatibilitätsregeln pro Paket

Diese Prüfungen vergleichen das Zielpaket mit der native Baseline, die als version_build, nicht das derzeit installierte heruntergeladene Paket, das als version_name.

Terminalfenster
npx @capgo/cli channel set production --disable-auto-update major

zum Gerät. Übertragungsarten zur Geräte.

TypBeschreibungWann verwenden
VollbundleDas gesamte JS-Bundle wird heruntergeladenZuerst installieren, große Änderungen oder wenn Delta nicht verfügbar ist
DeltaNur geänderte Dateien werden heruntergeladenDie meisten Updates; schneller und bandbreitenfreundlich
Terminalfenster
# Full bundle (default)
npx @capgo/cli bundle upload --channel production
# Delta updates
npx @capgo/cli bundle upload --channel production --delta
KategorieArten
Anwendungszeitpunktoff, atBackground, atInstall, onLaunch, always, onlyDownload
Verzögerungsbedingungendate, background, nativeVersion, kill
Version blockierennone, major, minor, patch, metadata
ZustellungVollpaket, Delta

Wenn Sie __CAPGO_KEEP_0__ verwenden Update-Typen um live update-Lieferungen zu planen, verbinden Sie es mit Capgo Live Updates für den Produktworkflow in Capgo Live Updates, Overview für die Implementierungsdetails im Überblick Features für die Implementierungsdetails in Features, Updateverhalten für die Implementierungsdetails in Updateverhalten, und Zur Einführung für die Implementierungsdetails in Zur Einführung.