Zum Hauptinhalt springen
Direkte Updates

Zeigen Sie der Benutzer die neueste Version, wenn sie Ihre App öffnen

Durch die Standardkonfiguration läuft ein live update eine Sitzung nach dem Download. Direkte Update-Modi wenden es stattdessen an, sobald die App gestartet wird, hinter Ihrem Splash-Screen, so dass die erste Seite, die die Benutzer sehen, bereits die neue Version ist.

Menschliche Unterstützung von Martin

autoUpdate: bei der Installation, beim Start oder immer
Splash-Screen wird bis der Update bereit ist gehalten
Delta-Downloads halten die Wartezeit kurz

Das Problem

Hintergrundaktualisierungen kommen eine Sitzung zu spät

Was passiert in der Standardmodus

1

Der Benutzer öffnet die App

Die App startet auf dem Bundle, das sie bereits hat. Der Updater überprüft, ob ein neues verfügbar ist und lädt es im Hintergrund herunter.

2

Die Sitzung läuft mit der aktuellen Version

Für den Rest dieser Sitzung läuft der Benutzer mit der code, die vor Ihrer Korrektur installiert wurde.

3

The update applies on the next resume

Wenn der Benutzer die App verlässt, installiert der Updater das neue Bundle. Sie sehen es das nächste Mal, wenn sie die App öffnen.

Bei den meisten Releases ist das die richtige Kompromisslösung. Wenn die Sitzung, die nach Ihrem Upload startet, die neue code ausführen muss, verwenden Sie einen direkten Aktualisierungsmodus.

Wenn die erste Sitzung zählt

Ein fehlerhafter Zahlungs- oder Anmeldevorgang

Benutzer, die die App öffnen, sollten nicht durch das beschädigte Bildschirmfenster gehen, bevor die Reparatur angewendet wird.

Aufbau eines Sicherheitspatches auf der Web-Schicht

Sie möchten das gepatchte JavaScript bereits bei der Startphase laufen lassen, nicht erst bei der nächsten Sitzung.

Eine veraltete Änderung

Termine, Hinweise oder Ereignisinhalt, die auf der ersten Bildschirmseite aktuell sein müssen.

Die Lösung

Was sich mit einer direkten Aktualisierungsmodus ändert

Der Updater überprüft bei der Startphase, während sich die Splash-Schleife noch zeigt. Wenn ein neuer Bundle verfügbar ist, lädt er ihn herunter und appliziert ihn, bevor die Splash-Schleife sich versteckt.

Standardmodus (atBackground)

1
Der Benutzer öffnet die App
2
Der Benutzer öffnet die App
3
Die App zeigt die aktuelle Version an.
4
The update applies on the next resume

Keine Wartezeit beim Start. Die Benutzer sehen die Aktualisierung eine Sitzung später

Direkter Modus (onLaunch)

1
Der Benutzer öffnet die App und das Splash-Screen bleibt hoch
2
Der Updater überprüft und lädt die geänderten Dateien herunter
3
The update applies, the splash hides, the new version shows

Die Benutzer sehen die neue Version auf dem ersten Bildschirm. Sie warten auf das Splash-Screen, während es herunterlädt

Aktualisierungsverhalten-Docs

Wie es funktioniert

Wie man direkte Aktualisierungen einrichtet

Ein direkter Modus ist eine native Konfiguration, daher wird er in einem Store-Build zuerst geliefert. Anschließend folgt jeder live update ihm. Befehle stammen aus den Capgo-Dokumenten

  1. Hinzufügen des Splash-Screen-Plugins und Auswahl eines Modus

    Install @capacitor/splash-screen, dann setzen Sie autoUpdate, autoSplashscreen und launchAutoHide in capacitor.config.ts.

    npm install @capacitor/splash-screen
    npx cap sync
    
    // capacitor.config.ts
    plugins: {
      CapacitorUpdater: {
        autoUpdate: 'onLaunch', // or 'atInstall' / 'always'
        autoSplashscreen: true,
        keepUrlPathAfterReload: true,
      },
      SplashScreen: { launchAutoHide: false },
    }
    Splash screen-Handling
  2. Versenden Sie die Konfiguration in einem Store-Build

    capacitor.config wird in die native App kompiliert, sodass die neue Modus bei Ihrer nächsten Store-Veröffentlichung erreicht wird. Capgo Build kann es in der Cloud erstellen.

    npx @capgo/cli@latest build request --platform ios
    npx @capgo/cli@latest build request --platform android
    Capgo Build-Dokumentation
  3. Upload-Bundles als Deltas

    Benutzer warten auf das Download, also senden Sie nur die geänderten Dateien. Der CLI erkennt Instant-Apply-Modi und fordert eine Delta-Upload-Anfrage.

    npx @capgo/cli@latest bundle upload --channel production --delta
    Delta-Updates-Dokumentation
  4. Automatische Rollover aufrechterhalten

    Rufen Sie notifyAppReady() auf, sobald Ihre App gestartet ist. Wenn ein neuer Bundle fehlschlägt, geht das Gerät zurück zur letzten funktionierenden.

    import { CapacitorUpdater } from '@capgo/capacitor-updater'
    
    await CapacitorUpdater.notifyAppReady()
    notifyAppReady()-Dokumentation

Wählen Sie den Modus, der Ihrem App passt

Direkte Updates sind ein Handel: ein kurzer Wartezeit bei der Veröffentlichung gegen die neue Version auf dem ersten Bildschirm.

Drei sofortige Anwendungsmodi

Setzen Sie autoUpdate in capacitor.config.ts. Jeder Modus entscheidet, wann ein Update angewendet werden kann, während der Benutzer wartet.

  • nach der Installation: nur nach einer frischen Installation oder einem Laden-Update der native App
  • onLaunch: wenn die App von einem getöteten Zustand (kalte Start) aus startet
  • always: bei jedem Vordergrund-Check, auch während die App geöffnet ist
Updater-Einstellungen

3

Instant-Apply-Modi in autoUpdate

Umgang mit Splash-Screens

Bei direkten Modi ist @capacitor/splash-screen erforderlich, mit launchAutoHide auf false und autoSplashscreen auf true. Der Updater versteckt die Splash-Screen, sobald die Aktualisierung angewendet wurde oder sobald er weiß, dass keine Aktualisierung erforderlich ist.

  • Keine manuelle SplashScreen.hide()-Aufruf erforderlich
  • keepUrlPathAfterReload hält den Benutzer auf derselben Route, nachdem der Neustart erfolgt ist
  • Hören Sie auf appReady, wenn Sie nach dem Verschwinden des Splashscreens noch Arbeit benötigen
Umgang mit Splash-Screens

autoSplashscreen

Für jeden direkten Modus erforderlich

Vor- und Nachteile zu berücksichtigen

Benutzer müssen beim Start warten, bis das Download abgeschlossen ist, und können währenddessen die App neu laden. Planen Sie für beide Fälle.

  • Laden Sie mit --delta, sodass nur geänderte Dateien heruntergeladen werden.
  • Save and restore app state so a reload does not lose user progress
  • Behalten Sie die Standardmodus bei, wenn ein einstündiger Zeitverzug ausreicht
Deltaktualisierungen-Dokumentation

--delta

Empfohlen für jeden direkten Update-Upload

Wann direkte Updates verwenden

Verwenden Sie den direkten Modus, wenn die aktuelle Sitzung das neue code. ausführen muss. Lassen Sie das Standardverhalten für alles andere bestehen.

Kritische Fehlerkorrekturen

Behebungen von Zahlungs-, Anmelde- oder Datenfehlern, bei denen die Ausführung der alten code für eine weitere Sitzung zu viel ist.

Einstieg bei der ersten Ausführung

atInstall wird die aktuellste Bundle direkt nach einer frischen Installation oder einem Store-Update angewendet, sodass neue Benutzer mit Ihrem aktuellen Einstieg starten.

Veraltete Inhalte

Event-Seiten, Benachrichtigungen oder Bedingungen, die aktuell sein müssen, wenn Benutzer die App öffnen.

Sicherheitspatches

Web-layer security fixes that should run from launch. Fixes in native code still need a store release.

Routine-Updates

Styling-Anpassungen und kleine Funktionen, die selten einen Warten bei der Ausführung rechtfertigen. Die Standardmodus anwendet sie eine Sitzung später.

Apps, die stundenlang geöffnet bleiben

Mit ständigen, periodischen Überprüfungen (standardmäßig alle 10 Minuten) können Updates während der App-Öffnung angewendet werden. Speichern Sie den Zustand vorher, um darauf zu vertrauen.

Kurze Wartezeit bei der Ausführung

Die Wartezeit bei der Ausführung ist die Überprüfung plus der Download. Delta-Updates halten den Download auf die geänderten Dateien beschränkt.

~50ms

Typische API Latenz

Delta

Nur geänderte Dateien werden heruntergeladen

1B+

Updates delivered per month

Apps, die mit Capacitor erstellt wurden

Öffentliche Informationen-Apps benötigen dringende Inhaltsergänzungen

Krisen-, Gesundheits- und Bürger-Apps können nicht Tage warten, um einen gebrochenen Checklisten, einen verknüpften Ressourcenlink oder eine ortsspezifische Ankündigung zu korrigieren. Direkte Updates ermöglichen es der Web-Schicht, sobald die Korrektur genehmigt wurde, zu bewegen.

FEMA-App-Icon Wetter

FEMA

Dringende Anweisungen, bei denen kleine Inhaltsfehler zu einer Notlage werden können.

Google Play-Installationen
1,6M
Ladenegging
4.0
Conecte SUS-App-Icon MEDIZIN

Verbinde SUSE

Gesundheitsdaten und Anweisungen, bei denen genehmigte Inhaltsänderungen schnell geliefert werden müssen.

Google Play-Installationen
27,7M
Store-Bewertung
4.6
e-Título-App-Icon SOCIAL

e-Título

Zivilstandsverwaltung, bei der sichere Versionsführung auf allen Geräten wichtig ist.

Google Play-Installationen
54,9M
Store-Bewertung
4.8

Kundenbeweis

Was Teams mit Capgo sagen

5.0/5 bewertet von Entwicklerteams 9,400+ Teams Lesen Sie Bewertungen

Kapil

Gründer, NuTriQ

‚Es war ein enormer operativer Vorteil, sofort OTA-Updates in der Produktion pushen zu können, ohne auf die vollständige App-Store-Überprüfung warten zu müssen.‚

Portrait von Sergiu S

Sergiu S

Leiter der Entwicklung, drivolino GmbH

“Der Capgo Capacitor Updater-Plugin hat unsere Update-Veröffentlichung komplett umgestaltet. Was früher Tage dauerte, dauert jetzt nur noch Minuten.”

Bildnis von Luis Dominguez

Luis Dominguez

Wer zahlt, Anirol

“Seit ich Capgo verwende, ist alles schneller, und ich kann meinen Nutzern die Zeit geben, die sie verdienen, ohne meine tägliche Arbeit vernachlässigen zu müssen.”

FAQ

Häufig gestellte Fragen

Wann sie verwenden, wie sie einrichten und was sie bei der Einführung kosten.

Wann sie verwenden, wie sie einrichten und was sie bei der Veröffentlichung kosten.

Use the default for most releases: there is no wait at launch, and users get the update one session later. Use a direct mode when the session that starts after your upload must run the new code, for example a broken checkout or a web-layer security fix.

Aktualisierungsverhalten

Welche ist die Differenz zwischen atInstall, onLaunch und immer?

atInstall wird eine Aktualisierung sofort nur nach einer frischen Installation oder einem Store-Update der nativen App angewendet, dann verhält sie sich wie die Standard-Einstellung. onLaunch wird sofort angewendet, wenn die App von einem beendetem Zustand gestartet wird. immer prüft sie auf jedem Vordergrund und wird angewendet, sobald der Download abgeschlossen ist, auch während der Benutzer sich im App befindet.

Einstellungen für den Updater

Weshalb ist das Splash-Screen-Plugin erforderlich?

Direkte Modi führen die Aktualisierung während der Wartezeit durch. Ohne @capacitor/splash-screen, autoSplashscreen: true und launchAutoHide: false, können Benutzer ein Flackern oder die alte Oberfläche sehen, bevor die Neuladung erfolgt. Mit ihnen bleibt das Splash-Screen bis zur Anwendung der Aktualisierung oder bis der Updater weiß, dass keine Aktualisierung erforderlich ist.

Behandlung des Splash-Screens

Können wir die direkten Updates mit einem live update aktivieren?

Nein. autoUpdate befindet sich in capacitor.config, das in die native App bei der Erstellung gelesen wird. Versenden Sie die neue Einstellung in einer Store-Veröffentlichung. Danach folgt jeder live update der neuen Modus.

Kompatibilitätsdokumente für native Apps

Kann man die direkten Updates mit einem __CAPGO_KEEP_0__ aktivieren?

directUpdate ist abgelegt, aber noch erkannt. Seine Werte entsprechen den autoUpdate-Modi atInstall, onLaunch und immer. Bewegen Sie die Einstellung in autoUpdate in Ihrer nächsten native Veröffentlichung.

Einstellungen für den Updater

Setzen Sie Ihre nächste Reparatur auf der ersten Seite

Probieren Sie einen direkten Update-Modus auf einer Testversion während der Probezeit und messen Sie die Wartezeit auf Ihrer eigenen App

Menschliche Unterstützung von Martin

14-tägige kostenlose Testphase. Keine Kreditkarte erforderlich.