Zum Inhalt springen

@capgo/capacitor-updater

Live update für capacitor Apps.

Capgo Live Updates sind nicht auf Capacitor beschränkt. Nutze dasselbe Backend und CLI mit weiteren Client-Plugins:

@capgo/capacitor-updater liefert JavaScript-Bundle-Updates für Capacitor Production-Apps, ohne auf das Store-Review zu warten. Signierte Bundles im Hintergrund herunterladen, Rollouts über Channels und Delay-Regeln steuern und zurückrollen, wenn notifyAppReady() nicht innerhalb des konfigurierten appReadyTimeout.

Typische Anwendungsfälle: Hotfixes für Produktionsfehler, gestaffelte Betas pro Channel, A/B-UI-Experimente und Notfall-Rollbacks auf das integrierte Bundle.

PlattformSupport
iOSJa
AndroidJa
WebBundles gelten für die WebView-Ebene in nativen Shells, nicht für gehostete statische Websites

Cordova- und Electron-Clients nutzen die oben verlinkten Schwester-Plugins mit demselben Capgo Backend.

  • notifyAppReady - Benachrichtigt den Native Layer, dass JavaScript erfolgreich initialisiert wurde.
  • setUpdateUrl - Setzt die Update-URL der App dynamisch zur Laufzeit.
  • setStatsUrl - Setzt die Statistics-URL der App dynamisch zur Laufzeit.
  • setChannelUrl - Setzt die Channel-URL der App dynamisch zur Laufzeit.
MethodeBeschreibung
notifyAppReadyBenachrichtigt den Native Layer, dass JavaScript erfolgreich initialisiert wurde.
setUpdateUrlSetzt die Update-URL der App dynamisch zur Laufzeit.
setStatsUrlSetzt die Statistics-URL der App dynamisch zur Laufzeit.
setChannelUrlSetzt die Channel-URL der App dynamisch zur Laufzeit.
downloadLädt ein neues Bundle von der angegebenen URL für die spätere Installation herunter.
nextLegt das nächste Bundle fest, das beim In-den-Hintergrund-Gehen oder Neustart der App aktiviert wird.
setSetzt das aktuelle Bundle und lädt die App sofort neu.
deleteLöscht ein Bundle aus dem lokalen Speicher, um Festplattenplatz freizugeben.
setBundleErrorMarkiert ein Bundle im manuellen Update-Modus manuell als fehlgeschlagen.
listRuft alle lokal heruntergeladenen Bundles ab, die in der App gespeichert sind.
resetSetze die App auf ein funktionierendes Bundle zurück.
currentRuft Informationen über das aktuell aktive Bundle ab.
reloadLädt die App manuell neu, um ein ausstehendes Update anzuwenden.
setMultiDelayKonfiguriert Bedingungen, die erfüllt sein müssen, bevor ein ausstehendes Update angewendet wird.
cancelDelayBricht alle Verzögerungsbedingungen ab und wendet das ausstehende Update sofort an.
getLatestPrüft den Update-Server auf die neueste verfügbare Bundle-Version.
setChannelLege einen lokalen Runtime-Update-Channel für dieses Gerät fest. Dadurch wird kein Dashboard- oder API Device-Override erstellt.
unsetChannelEntfernt die Channel-Zuweisung des Geräts und kehrt zum Standard-Channel zurück.
getChannelRuft den Channel ab, der diesem Gerät aktuell zugewiesen ist.
listChannelsRuft eine Liste aller Channels ab, die dieses Gerät selbst zuweisen kann.
setCustomIdSetzt eine benutzerdefinierte ID für dieses Gerät.
getBuiltinVersionRuft die integrierte Bundle-Version ab (die Originalversion, die mit deiner nativen App ausgeliefert wurde).
getDeviceIdRuft die eindeutige, datenschutzfreundliche ID für dieses Gerät ab.
getPluginVersionRuft die Version des Capacitor Updater-Plugins ab, die in deiner App installiert ist.
isAutoUpdateEnabledPrüft, ob automatische Updates aktuell aktiviert sind.
removeAllListenersEntfernt alle für dieses Plugin registrierten Event-Listener.
addListenerHört auf das Bundle-Download-Event in der App. Feuert, sobald ein Download gestartet ist, während des Downloads und wenn er abgeschlossen ist. Liefert dir während des Downloads den jeweiligen Download-Fortschritt in Prozent.
addListenerHört auf das 'No need to update'-Event – nützlich, wenn du bei jedem App-Start einen Force-Check durchführen willst.
addListenerAuf das Event für verfügbare Updates hören – ideal, um bei jedem App-Start einen Check zu erzwingen.
addListenerAuf downloadComplete-Events hören.
addListenerAuf Breaking-Update-Events hören, wenn das Backend ein Update als inkompatibel mit der aktuellen App markiert. Sendet denselben Payload wie das Legacy-System. majorAvailable Listener.
addListenerHöre auf Major-Update-Events in der App, um zu erfahren, wenn ein Major-Update durch das Setzen von disableAutoUpdateBreaking blockiert wird.
addListenerAuf das Update-Fail-Event in der App hören, um zu erfahren, wenn die Installation beim nächsten App-Start fehlgeschlagen ist.
addListenerAuf das Set-Event in der App hören, um zu wissen, wann ein Bundle erfolgreich angewendet wurde. Dieses Event wird nativ gespeichert, bis JavaScript es verarbeitet. Falls die App neu lädt, bevor dein Listener bereit ist, wird das letzte ausstehende set Event sofort nach dem Abonnement des Listeners ausgelöst.
addListenerAuf das Set-Next-Event in der App hören, um zu erfahren, wenn ein Bundle als nächstes zur Installation vorgemerkt wurde.
addListenerAuf das Download-Fail-Event in der App hören, um zu erfahren, wenn der Download eines Bundles fehlgeschlagen ist.
addListenerAuf das Reload-Event in der App hören, um zu wissen, wann ein Reload stattgefunden hat.
addListenerAuf das App-Ready-Event in der App hören, um zu wissen, wann die App einsatzbereit ist. Dieses Event wird nativ gespeichert, bis JavaScript es verarbeitet, sodass es auch nach einem Reload geliefert werden kann, selbst wenn der Listener erst später beim App-Start registriert wird.
addListenerAuf private Channel-Events hören, die ausgelöst werden, wenn versucht wird, einen Channel zu setzen, der kein Self-Assignment durch das Device erlaubt.
addListenerAuf Änderungen des flexible Update-Status unter Android hören.
isAutoUpdateAvailablePrüfen, ob das Auto-Update-Feature verfügbar ist (nicht durch eine benutzerdefinierte Server-Konfiguration deaktiviert).
getNextBundleErhalte Informationen über das Bundle, das für die Aktivierung beim nächsten Reload bereitsteht.
getFailedUpdateRufe Informationen über das letzte Bundle ab, das nicht geladen werden konnte.
setShakeMenuDas Shake-Gesture-Menü für Debugging und Tests aktivieren oder deaktivieren.
isShakeMenuEnabledPrüfen, ob das Shake-Gesture-Debug-Menü aktuell aktiviert ist.
setShakeChannelSelectorDen Shake-Channel-Selector zur Laufzeit aktivieren oder deaktivieren.
isShakeChannelSelectorEnabledPrüfen, ob der Shake-Channel-Selector aktuell aktiviert ist.
getAppIdDie aktuell konfigurierte App ID abrufen, die für die Kommunikation mit dem Update-Server genutzt wird.
setAppIdDie für die Kommunikation mit dem Update-Server genutzte App ID dynamisch ändern.
getAppUpdateInfoInformationen über die Verfügbarkeit der App im App Store oder Play Store abrufen.
openAppStoreÖffne die App-Seite im App Store oder Play Store.
performImmediateUpdateFühre ein sofortiges In-App-Update auf Android durch.
startFlexibleUpdateStarte ein flexibles In-App-Update auf Android.
completeFlexibleUpdateSchließe ein flexibles In-App-Update auf Android ab.

Diese Referenz wird synchronisiert von src/definitions.ts in capacitor-Updater.

Wenn du es nutzt @capgo/capacitor-updater Um die Arbeit an nativen Plugins zu planen, verbinde sie mit Verwendung von @capgo/capacitor-updater für die native Funktion in der Verwendung von @capgo/capacitor-updater, Capgo Plugin-Verzeichnis für den Produkt-Workflow im Capgo Plugin-Verzeichnis, Capacitor Plugins von Capgo für das Implementierungsdetail in Capacitor Plugins von Capgo, Plugins hinzufügen oder aktualisieren für das Implementierungsdetail beim Hinzufügen oder Aktualisieren von Plugins, und Ionic Enterprise Plugin-Alternativen für den Produkt-Workflow bei den Ionic Enterprise Plugin-Alternativen.