Zum Hauptinhalt springen
Direkte Updates

Nutzer sehen beim App-Start sofort die neueste Version

Standardmäßig führt ein live update nach dem Download nur eine Session aus. Im Direct-Update-Modus wird er stattdessen beim Launch hinter deinem Splash Screen geladen, sodass Nutzer direkt die neue Version sehen.

autoUpdate: bei atInstall, onLaunch oder immer
Splashscreen bleibt aktiv, bis das Update bereit ist
Delta-Downloads minimieren die Wartezeit

Das Problem

Background-Updates kommen eine Session zu spät an

Was im Standardmodus passiert

1

Der User öffnet die App

Die App startet mit dem vorhandenen Bundle. Der Updater prüft im Hintergrund auf ein neues und lädt es herunter.

2

Die Session nutzt die aktuelle Version

Für den Rest der Session nutzt der User das code, das vor deinem Fix installiert wurde.

3

Das Update wird beim nächsten Resume angewendet

Sobald der Nutzer die App verlässt, installiert der Updater das neue Bundle. Beim nächsten App-Start ist es dann verfügbar.

Für die meisten Releases ist das der richtige Kompromiss. Wenn die Session nach deinem Upload direkt das neue code nutzen muss, verwende den Direct Update Modus.

Wenn die erste Session entscheidend ist

Ein fehlerhafter Payment- oder Login-Flow

User, die die App öffnen, sollten nicht noch einmal den fehlerhaften Screen sehen, bevor der Fix greift.

Ein Security-Fix auf Web-Layer-Ebene

Du willst das gepatchte JavaScript sofort beim Start nutzen, nicht erst in der nächsten Session.

Zeitkritische Änderungen

AGB, Hinweise oder Event-Inhalte, die auf dem ersten Screen aktuell sein müssen.

Die Lösung

Was sich im Direct Update Modus ändert

Der Updater prüft beim Start, während dein Splash Screen noch sichtbar ist. Ist ein neues Bundle verfügbar, wird es heruntergeladen und angewendet, bevor der Splash Screen verschwindet.

Standardmodus (atBackground)

1
Der User öffnet die App
2
Die App zeigt die aktuelle Version
3
Das Update lädt im Hintergrund
4
Update wird beim nächsten Resume angewendet

Keine Wartezeit beim Launch. Nutzer sehen das Update in der nächsten Session.

Direktmodus (onLaunch)

1
Der Nutzer öffnet die App und der Splashscreen bleibt sichtbar
2
Der Updater prüft und lädt die geänderten Dateien herunter
3
Das Update wird angewendet, der Splashscreen verschwindet, die neue Version erscheint

Nutzer sehen die neue Version direkt beim ersten Start. Während des Downloads verweilen sie auf dem Splash Screen.

Doku zum Update-Verhalten

So funktioniert es

Direct Updates einrichten

Der Direktmodus ist eine native Konfiguration und wird zuerst im Store-Build ausgeliefert. Danach folgt jedes live update. Die Commands stammen aus der Capgo Doku.

  1. Füge das Splash-Screen-Plugin hinzu und wähle einen Modus aus

    Installiere @capacitor/splash-screen, setze dann autoUpdate, autoSplashscreen und launchAutoHide in der 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. Config im Store-Build ausliefern

    capacitor.config wird in die Native Build integriert, sodass der neue Modus mit dem nächsten Store-Release bei den Usern ankommt. Capgo Build kann dies in der Cloud erstellen.

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

    User warten beim Start auf den Download, also sende nur geänderte Dateien. CLI erkennt Instant-Apply-Modi und fragt nach einem Delta-Upload.

    npx @capgo/cli@latest bundle upload --channel production --delta
    Delta-Updates Docs
  4. Automatisches Rollback aktivieren

    Rufe notifyAppReady() auf, sobald deine App gestartet ist. Wenn ein neues Bundle nicht startet, wechselt das Gerät automatisch zum letzten funktionierenden.

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

Wähle den passenden Modus für deine App

Direct Updates sind ein Kompromiss: eine kurze Wartezeit beim Start gegen die neue Version direkt auf dem ersten Screen.

Drei Modi für sofortige Updates

Setze autoUpdate in capacitor.config.ts. Jeder Modus bestimmt, wann ein Update während der Wartezeit des Nutzers angewendet wird.

  • atInstall: nur direkt nach einer Neuinstallation oder einem Store-Update der Native Build App
  • onLaunch: wenn die App aus einem beendeten Zustand startet (Cold Start)
  • immer: bei jedem Foreground-Check, auch wenn die App offen ist
Updater-Einstellungen

3

Sofortige Anwendungsmodi in autoUpdate

Splashscreen-Handling

Direktmodi benötigen @capacitor/splash-screen mit launchAutoHide auf false und autoSplashscreen auf true. Der Updater blendet den Splashscreen aus, sobald das Update angewendet wurde oder feststeht, dass kein Update nötig ist.

  • Kein manueller SplashScreen.hide() Aufruf erforderlich
  • keepUrlPathAfterReload hält den User nach dem Reload auf derselben Route
  • Nutze appReady für zusätzliche Aufgaben, sobald der Splashscreen ausgeblendet ist
Splashscreen-Handling

autoSplashscreen

Erforderlich für jeden Direktmodus

Abwägung von Trade-offs

Nutzer warten beim Start auf den Download, mit always kann die App während der Nutzung neu geladen werden. Plane beides ein.

  • Mit --delta uploaden, damit nur geänderte Dateien heruntergeladen werden
  • App-State speichern und wiederherstellen, damit beim Reload kein Fortschritt verloren geht
  • Standardmodus beibehalten, wenn eine Session Verzögerung okay ist
Delta-Updates-Doku

--delta

Empfohlen für jeden Direct-Update-Upload

Wann Direct Updates sinnvoll sind

Nutze einen Direct Mode, wenn die aktuelle Session das neue code ausführen muss. Sonst beim Standard bleiben.

Kritische Bugfixes

Zahlungs-, Login- oder Daten-Bugs, bei denen eine weitere Session mit dem alten code zu viel ist.

Onboarding beim ersten Start

atInstall wendet das neueste Bundle direkt nach der Installation oder einem Store-Update an, damit neue Nutzer sofort dein aktuelles Onboarding sehen.

Aktualität von Inhalten

Event-Seiten, Hinweise oder AGBs, die beim App-Start immer auf dem neuesten Stand sein müssen.

Security Patches

Sicherheitsfixes auf Web-Ebene, die direkt beim Start greifen sollten. Fixes im nativen code erfordern weiterhin ein Store-Release.

Routine-Releases

Styling-Anpassungen oder kleine Features rechtfertigen selten eine Wartezeit beim Start. Im Standardmodus werden sie eine Session später angewendet.

Apps mit langer Laufzeit

Mit always können periodische Checks (standardmäßig alle 10 Min.) Updates anwenden, während die App offen ist. Speichere den State vorher ab.

Wartezeiten beim Start minimieren

Die Wartezeit beim Start besteht aus dem Update-Check und dem Download. Delta-Updates beschränken den Download auf die geänderten Dateien.

~50ms

Typische API Latenz

Delta

Es werden nur geänderte Dateien heruntergeladen

1B+

Pro Monat bereitgestellte Updates

Apps mit Capacitor gebaut

Öffentliche Info-Apps brauchen schnelle Fixes

Notfall-, Gesundheits- und Behörden-Apps können nicht Tage warten, um eine fehlerhafte Checkliste, einen Link oder einen ortsspezifischen Hinweis zu korrigieren. Direct Updates ermöglichen es der Web-Layer, sofort nach der Freigabe des Fixes live zu gehen.

FEMA App Icon WETTER

FEMA

Notfall-Anleitungen, bei denen kleine Textfehler kritisch werden können.

Google Play Installs
1,6 Mio.
Store-Bewertung
4.0
Conecte SUS App-Icon MEDIZIN

SUS verbinden

Patientenakten und Anleitungen, bei denen korrigierte Texte sofort verfügbar sein müssen.

Google Play Installs
27,7 Mio.
Store-Bewertung
4.6
e-Título App-Icon SOCIAL

e-Título

Workflows für digitale Identität, bei denen geräteübergreifende, versionssichere Anleitung entscheidend ist.

Google Play Installs
54,9 Mio.
Store-Bewertung
4.8

Kundenstimmen

Das sagen Teams, die mit Capgo deployen

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

Kapil

Gründer, NuTriQ

“Die Möglichkeit, produktive OTA-Updates sofort zu pushen, ohne auf die kompletten Review-Zyklen des App Store warten zu müssen, ist ein enormer operativer Vorteil.”

Porträt von Sergiu S

Sergiu S

Lead Developer, drivolino GmbH

“Das Capgo Capacitor Updater Plugin hat unsere Art, Updates auszurollen, komplett revolutioniert. Was früher Tage dauerte, erledigen wir jetzt in wenigen Minuten.”

Porträt von Luis Dominguez

Luis Dominguez

Wer zahlt, bestimmt.

„Seit ich Capgo nutze, ist alles schneller, und ich kann meinen Usern die Zeit geben, die sie verdienen, ohne mein Privatleben zu vernachlässigen.“

FAQ

Fragen zu Direct Updates

Wann man sie nutzt, wie man sie einrichtet und was sie beim Launch kosten.

Sollten wir Direct Updates oder den Standard-Background-Modus nutzen?

Nutze den Standard für die meisten Releases: Es gibt keine Wartezeit beim Launch und Nutzer erhalten das Update in der nächsten Session. Nutze den Direct-Modus, wenn die Session, die nach deinem Upload startet, sofort das neue code ausführen muss – zum Beispiel bei einem defekten Checkout oder einem Security-Fix im Web-Layer.

Doku zum Update-Verhalten

Was ist der Unterschied zwischen atInstall, onLaunch und always?

atInstall wendet ein Update sofort nur nach einer Neuinstallation oder einem Store-Update der Native Build an und verhält sich danach wie der Standard. onLaunch wendet es sofort an, wenn die App aus einem beendeten Zustand startet. always prüft bei jedem Wechsel in den Vordergrund und wendet es an, sobald der Download fertig ist, selbst wenn der Nutzer gerade in der App ist.

Updater-Einstellungen

Warum ist das Splash Screen Plugin erforderlich?

Direct Modes wenden das Update an, während der Nutzer wartet. Ohne @capacitor/splash-screen, autoSplashscreen: true und launchAutoHide: false können Nutzer ein Flackern oder die alte UI vor dem Reload sehen. Mit diesen Einstellungen bleibt der Splash Screen so lange sichtbar, bis das Update angewendet wurde oder der Updater weiß, dass keines nötig ist.

Splash Screen Handling

Können wir Direct Updates mit einem live update aktivieren?

Nein, autoUpdate liegt in der capacitor.config, die beim Build in die native App eingelesen wird. Veröffentliche die neue Einstellung mit einem Store-Release. Danach folgt jedes live update dem neuen Modus.

Doku zur nativen Kompatibilität

Unsere Config nutzt directUpdate. Wird das noch unterstützt?

directUpdate ist deprecated, wird aber weiterhin erkannt. Die Werte entsprechen den autoUpdate-Modi atInstall, onLaunch und always. Verschiebe die Einstellung in deinem nächsten nativen Release zu autoUpdate.

Updater-Einstellungen

Bring deinen nächsten Fix direkt auf den ersten Screen

Teste einen direct update Modus in einem Test-Build während der Trial und miss die Wartezeit beim App-Launch selbst.

14 Tage kostenlos testen. Keine Kreditkarte erforderlich.