Zum Hauptinhalt springen
Tutorial

Wie man Capgo-Updates schlank und schnell hält

Ein praktischer Leitfaden, der zeigt, wie man mit Capgo kleinere, sicherere Live-Updates erstellt: Delta-Pakete, kanalbasierte Rollouts, native Baseline-Refreshes, PR-Vorschauen und direkte Update-Grenzen.

Martin Donadieu

Martin Donadieu

Content-Marketing-Beauftragter

Wie man Capgo-Updates schlank und schnell hält

Der beste Live-Update ist das, das Ihre Benutzer kaum bemerken.

Das bedeutet in der Regel drei Dinge:

  1. Der Download ist klein.
  2. Die Ausrollung ist kontrolliert.
  3. Die Wiederherstellung ist sofort möglich, wenn etwas schief geht.

Das gleiche „Halten Sie OTA lean“-Rat, der in der React Native-Land funktioniert, gilt auch für Capgo. Die Differenz ist, dass Capgo den Capacitor-Teams ein paar zusätzliche Hebel gibt: Delta-Updates, Kanäle, automatische Wiederherstellungen, Zielgruppen für Versionen, und optional End-to-End-Verschlüsselung.

Wenn Sie diese zusammen verwenden, erhalten Sie kleinere Payloads, schnellere Installationen und viel weniger operativen Aufruhr.

Lean ist auch dann wichtig, wenn sich der MAU nicht ändert

Ein nützliches Capgo-spezifisches Detail: Capgo MAU ist effektiv die Anzahl der monatlich aktiven Geräte, die das Update-Service in den letzten 30 Tagen kontaktiert haben.

Daher ist die Verkleinerung eines Bundles nicht hauptsächlich ein Trick, um die MAU-Zählung zu reduzieren. Es ist wichtig, weil es die Teile verbessert, die Benutzer und Teams wirklich spüren:

  • Schnellere Downloads über Mobilfunk oder schwachen Wi-Fi
  • Bessere Erfahrung mit direkten Updates
  • Geringere verlorene Bandbreite bei fehlgeschlagenen oder zurückgerollten Releases
  • Kleineres Ausfallgebiet bei der Testung oder Staging eines Releases

Lean-Updates sind wirklich über Geschwindigkeit, Sicherheit und operative Disziplin.

1. Standardmäßig Delta-Updates verwenden

Wenn Sie nur eines tun, tun Sie dies.

Capgo’s Delta-Updates senden Sie nur Dateien, die sich zwischen den Versionen geändert haben, anstatt das gesamte Web-Bundle erneut herunterzuladen. Das ist der größte einzelne Gewinn für die Routine-OTA-Leistung.

bun run build
bunx @capgo/cli@latest bundle upload --channel staging --delta

Wenn Ihre QA-Überprüfung abgeschlossen ist:

bunx @capgo/cli@latest bundle upload --channel production --delta

Wenn Sie möchten, dass CI streng bleibt, verwenden Sie --delta-only so dass niemand versehentlich auf vollständige-Bundle-Uploads zurückfällt:

bunx @capgo/cli@latest bundle upload --channel production --delta-only

Nur verwenden --delta-only wenn Ihr Produktionsflekt Delta-Updates unterstützt. Bei gemischten Plugin-Versionen werden ältere Geräte, die Manifest-basierte Delta-Lieferung nicht unterstützen, nicht in der Lage sein, das Update herunterzuladen.

Dies ist noch wichtiger, wenn Sie directUpdate, weil die Zeit zwischen „Update gefunden“ und „App neu geladen“ für den Benutzer sichtbar wird.

2. Behandeln Sie Assets wie Assets, nicht wie JavaScript-Beutel

Große Assets sind dort, wo sich OTA-Bundles leise aufblähen.

Some practical rules:

  • Vermeiden Sie große Bilder oder Medien in JavaScript, wenn ein normales Asset-File ausreicht.
  • Halten Sie häufig wechselnde Inhalte auf Ihrem eigenen CDN oder API wenn sie nicht innerhalb des verschickten App-Bundles leben müssen.
  • Seien Sie vorsichtig mit Marketing-Bildern, Onboarding-Videos und einmaligen Kampagnen-Inhalten, die alle paar Releases ersetzt werden.
  • Lassen Sie stabile Assets stabil bleiben. Mit Delta-Updates werden unveränderte Dateien wieder verwendet anstatt neu heruntergeladen.

Dies ist eine der einfachsten Möglichkeiten, Capgo schnell zu halten, während sich die App entwickelt. Der schlechteste Muster ist ein kleiner UI-Fix, der den Benutzern eine Menge unabhängiger Medien zum Herunterladen zwingt.

3. Halten Sie native Releases für echte native Änderungen

Capgo updates the web layer: HTML, CSS, JavaScript, and assets loaded at runtime.

Das ist nicht der richtige Kanal für:

  • neue native Plugins,
  • Änderungen von Berechtigungen,
  • capacitor.config.ts Änderungen,
  • Etwas, das den Zustand eines iOS- oder Android-Native-Projekts ändert.

Diese Zeile ist auch für die Leistung wichtig. Wenn Sie wiederholt große strukturelle Änderungen in die OTA-Lane schieben, wird Ihre Updatestrategie mit der Zeit schwerer und riskanter.

Verwenden Sie zwei Release-Lane absichtlich:

Native Lane

Für Plugin-Änderungen, Berechtigungsänderungen und native Konfiguration:

bun run build
bunx cap sync

Dann versenden Sie ein normales Store-Release.

Capgo Lane

Für sichere Web-Schicht-Iteration:

bun run build
bunx @capgo/cli@latest bundle upload --channel production --delta

Aktualisieren Sie auch regelmäßig Ihre native Basislinie, wenn Sie kürzlich viele langfristige Assets hinzugefügt haben. Ein frischer Store-Build enthält diese neue Basislinie, was zukünftige Capgo-Diffs kleiner hält.

4. Verwenden Sie Kanäle, um die Update-Größe klein zu halten

Ein "schlanker" Update ist nicht nur in Bezug auf Megabyte wichtig. Es ist auch darum, wie viele Geräte das Update erhalten, bevor Sie wissen, dass es gut ist.

Capgo's Kanal-System ist der sauberste Weg, um das zu kontrollieren:

  • staging für QA
  • beta für eingeladene Tester
  • production für jeden
  • hotfix für Notfall-Wiederherstellung

Ein einfacher Workflow sieht so aus:

  1. Hochladen auf staging.
  2. Validieren auf echten Geräten.
  3. Schrittweise ausrollen, ob über kontrollierte Kanäle oder auf Basis einer Prozentsatz-Rollout.
  4. Rückgängig machen, sobald die Gesundheit sinkt.

Wenn Ihre App mehrere native Baselines im Feld hat, paaren Sie Kanäle mit Zielgruppensprachauswahl. Das hält unkompatible oder unnötig schwere Bundles von älteren Binären fern.

Für Teams, die noch engere Review-Schleifen wollen, funktioniert Capgo auch gut für Vorschau auf Pull-Requests. Das ermöglicht es Produkt, QA und Stakeholdern, JS-Änderungen ohne auf neue TestFlight- oder Play-internal Builds zu warten.

5. Wenn Sie direkte Updates aktivieren, optimieren Sie die Startzeit

Je schneller Sie ein Update anwenden möchten, desto disziplinierter muss Ihre Startzeitpfad sein.

Capgo’s Updateverhalten Die Dokumentation empfiehlt es ausdrücklich, __CAPGO_KEEP_0__ mit Delta-Updates zu kombinieren. Das ist die richtige Standardkonfiguration. directUpdate Der zweite Schutzzaun ist

Die Dokumentation empfiehlt es ausdrücklich, __CAPGO_KEEP_0__ mit Delta-Updates zu kombinieren. Das ist die richtige Standardkonfiguration. notifyAppReady().

import { CapacitorUpdater } from '@capgo/capacitor-updater'

CapacitorUpdater.notifyAppReady()

Wenn Ihre App innerhalb der Standardzeit von 10 Sekunden oder der Zeit, die Sie in Ihrer __CAPGO_KEEP_0__-Konfiguration festgelegt haben, nicht als bereit gemeldet wird, kann __CAPGO_KEEP_1__ diese Bundle als ungültig kennzeichnen und die vorherige gute Version wiederherstellen. Diese Rollover-Vorgehensweise ist in der Produktion erwünscht, bedeutet aber auch, dass Sie den Start sauber halten sollten: notifyAppReady() Aufrufen Sie appReadyTimeout you set in your Capacitor config, Capgo can mark that bundle invalid and restore the previous good version. That rollback behavior is what you want in production, but it also means you should keep startup clean:

  • Vermeiden Sie langsamere Startzeit-Arbeiten im kritischen Pfad notifyAppReady() Speichern und wiederherstellen Sie den Anwendungsstatus sorgfältig, wenn Sie sofort neu laden
  • Testen Sie Szenarien mit schlechter Netzwerkverbindung und geringer Leistung von Geräten vor einer breiten Veröffentlichung
  • Wenn Sie es nicht kürzlich geprüft haben, lohnt sich ein erneutes Lesen des
  • notifyAppReady-Leitfadens

6. Verwenden Sie interne Update-Kanäle anstatt unnötiger nativer Rebuilds 6. Verwenden Sie interne Update-Kanäle anstatt unnötiger nativer Rebuilds 6. Verwenden Sie interne Update-Kanäle anstatt unnötiger nativer Rebuilds

6. Verwenden Sie interne Update-Kanäle anstatt unnötiger nativer Rebuilds

A viele mobile Teams verbringen viel Zeit damit, Binärdateien für Änderungen zu erstellen, die offensichtlich nur auf Web-Seiten stattfinden.

Wenn die Änderung ist:

  • Kopieren
  • Benutzeroberflächenglanz
  • Einrichtungsprozess
  • Preisliste-Logik
  • Analytik-Verkabelung
  • Funktionsschalter
  • Aufforderung oder API Antwort-Rendering

dann ist eine Capgo Aktualisierung oft das schnellere Review-Artikel.

Dies bedeutet weniger native Rebuilds, weniger TestFlight-Churn und eine engeres Feedback-Schleifen für das Team. Es ist einer der am wenigsten genutzten Vorteile von Capgo: Sie können mehr Review- und QA-Arbeit in die OTA-Spur ohne die native/Web-Grenze zu überschreiten.

Unser Leitfaden zu Staging mit einem mobilen App-ID beschreibt eine praktische Methode, dies im Laufe der Zeit sauber zu halten.

7. Halten Sie Lean getrennt von geheimen Informationen

Kleine Pakete und sichere Pakete lösen unterschiedliche Probleme.

Kanäle bestimmen die Berechtigung. Sie machen ein Paket nicht durch sich selbst vertraulich.

Wenn Sie stärkere Liefergarantien benötigen:

Das bedeutet nicht, dass die Updategröße irrelevant ist. Es bedeutet nur, dass Sie sich für beide Dimensionen optimieren sollten:

  • leicht für Geschwindigkeit,
  • verschlüsselt für Lieferkontrolle,
  • Kanäle für die Kontrolle der Auslieferung,
  • Rückgängigmachen für die Wiederherstellung.

Ein praktischer „leicht Capgo“ Workflow

Wenn Sie ein einfaches Standardbetriebsmodell wollen, verwenden Sie dies:

  1. Halten Sie native und OTA-Release-Linien getrennt.
  2. Hochladen von JS-Änderungen mit --delta standardmäßig.
  3. Verwenden Sie staging und beta Kanäle vorher production.
  4. Beobachte aktualisiere Statistiken und Protokolle nach dem Rollout und nicht nur davor.
  5. Wandele Pull Requests in installierbare Voranschau in Echtzeit um, wenn eine native Build unnötig ist.
  6. Halte große, häufig wechselnde Medien möglichst aus dem Bundle aus.
  7. Aktualisiere die native Basislinie nach bedeutenden Asset-Wachstum oder native Änderungen.
  8. Behandle notifyAppReady() und Rollback-Verhalten als Teil der Release-Engineering und nicht als Setup-Trivia.

Diese Combination bleibt viel länger schnell als der gängige „Upload nur das geänderte“ Ansatz.

Abschließende Gedanken

Für Capgo-Teams ist „lean and fast“ nicht nur ein Problem der Bundle-Größe.

Es ist ein Release-Design-Problem.

Verwenden Sie Delta-Updates für die Payload-Größe, Kanäle für die Rollout-Größe und Rollbacks für die Fehlergröße. Sobald Sie sich auf OTA so denken, bleiben Ihre Updates schnell, selbst wenn die App, das Team und die Benutzerbasis größer werden.

Fahren Sie mit How to Keep Capgo Updates Lean and Fast fort

Wenn Sie " How to Keep Capgo Updates Lean and Fast" verwenden um Kanalrouten und rollende Rollouts zu planen, verbinden Sie es mit Channels für die Implementierungsdetails in Channels, Channels für die Implementierungsdetails in Channels, Channels für die Implementierungsdetails in Channels, Beta-Testlösung für das Produktworkflow in der Beta-Testlösung und Versionziel-Lösung für das Produktworkflow für das Produktworkflow in der Versionziel-Lösung

Live-Updates für Capacitor-Anwendungen

Wenn ein Bug im Web-Schicht lebt, liefern Sie die Reparatur über Capgo anstatt Tage zu warten, bis die App-Store-Zulassung vorliegt. Die Benutzer erhalten die Aktualisierung im Hintergrund, während native Änderungen im normalen Review-Prozess bleiben.

Los geht's jetzt

Aktuelle Beiträge aus unserem Blog

Capgo bietet Ihnen die besten Einblicke, die Sie benötigen, um eine echte professionelle Mobilanwendung zu erstellen.