Zum Hauptinhalt springen
Tutorial

How to Keep Capgo Updates Lean and Fast

Eine praktische Anleitung, um Capgo-Updates klein, sicher und schnell zu halten

Martin Donadieu

Martin Donadieu

Inhaltsmarketer

How to Keep Capgo Updates Lean and Fast

Der beste Live-Update ist der, den die Benutzer kaum bemerken.

Das bedeutet normalerweise drei Dinge:

  1. Der Download ist klein.
  2. Die Veröffentlichung ist kontrolliert.
  3. Die Wiederherstellung ist sofort, wenn etwas schief geht.

The same “keep OTA lean” advice that works in React Native land also applies to Capgo. The difference is that Capgo gives Capacitor teams a few extra levers: Delta-Updates, Kanäle, automatische Rückschritte, Version-Zielsetzung, und optional Wenn Sie diese zusammen verwenden, erhalten Sie kleinere Payloads, schnellere Installationen und viel weniger operativen Aufruhr..

Lean ist wichtig, auch wenn sich die MAU nicht ändert

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

One useful Capgo-specific detail: Capgo MAU is effectively the number of monthly active devices that contacted the update service in the last 30 days.

Schnellere Downloads über Mobilfunk oder schwachen Wi-Fi

  • Bessere Erfahrung mit
  • Bessere Erfahrung beim direkte Aktualisierungen
  • Kleinerer Ausfallbereich bei fehlgeschlagenen oder zurückgezogenen Releases
  • Kleinerer Ausfallbereich bei der Testung oder Staging eines Releases

Lean Aktualisierungen sind wirklich um Geschwindigkeit, Sicherheit und Betriebsdisziplin bemüht.

1. Standardmäßig Delta-Aktualisierungen verwenden

Wenn du nur eines tust, dann das.

Capgo’s Delta-Aktualisierungen senden nur Dateien, die zwischen den Versionen geändert wurden, anstatt das vollständige Web-Bundle neu herunterzuladen.

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 damit niemand versehentlich auf volle-Bundle-Uploads zurückfällt:

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

Nur verwenden Sie --delta-only wenn Ihr Produktionspool Delta-Updates unterstützt. Bei gemischten Plugin-Versionen können ältere Geräte, die Manifest-basierte Delta-Lieferung nicht unterstützen, nicht auf das Update zugreifen.

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

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

Große Assets sind der stillschweigende Ort, an dem sich OTA-Bundles aufblähen.

Einige praktische Regeln:

  • Vermeiden Sie es, große Bilder oder Medien innerhalb von JavaScript einzubinden, wenn ein normales Asset-File getan werden kann.
  • Keep frequently changing content on your own CDN or API if it does not need to live inside the shipped app bundle.
  • Lassen Sie stabile Assets stabil. Mit Delta-Updates werden unveränderte Dateien wieder verwendet und nicht erneut heruntergeladen.
  • Dies ist eine der einfachsten Möglichkeiten, __CAPGO_KEEP_0__ schnell zu halten, während sich Ihre App entwickelt. Das schlimmste Muster ist ein kleiner UI-Fix, der Benutzern eine Menge unabhängiger Medien zum Herunterladen zwingt.

Capgo

3. Bewahren Sie native Releases für echte native Änderungen auf

Capgo aktualisiert die Web-Schicht: HTML, CSS, JavaScript und Assets, die bei Laufzeit geladen werden.

Es ist nicht der richtige Kanal für:

  • neue native Plugins,
  • Änderungen der Berechtigungen,
  • capacitor.config.ts Änderungen,
  • Alles, was den Zustand des iOS- oder Android-native-Projekts ändert.

Diese Zeile ist auch für die Leistung wichtig. Wenn Sie immer wieder 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 Spurstrack

Für eine sichere Web-Schicht-Iteration:

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

Regelmäßig aktualisieren Sie auch Ihre native Basis, wenn Sie kürzlich viele lang lebende Assets hinzugefügt haben. Ein frischer Store-Bau integriert diese neue Basis, was zukünftige Capgo-Differenzen 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 geht 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 alle
  • hotfix für Notfall-Wiederherstellung

Ein einfacher Workflow sieht so aus:

  1. Hochladen auf staging.
  2. Validieren auf echten Geräten.
  3. Warten Sie, bis Sie langsam durch kontrollierte Kanäle oder eine prozentuale Verteilung ausrollen.
  4. Wenn die Gesundheit sinkt, sollten Sie sofort zurückrollen.

Wenn Ihre App mehrere native Baselines im Feld hat, funktioniert die Pairing von Kanälen mit Versionen . Das hält inkompatible oder unnötig schwere Pakete 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-Internetaufbauten zu warten.

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

Je schneller Sie eine Aktualisierung anwenden möchten, desto disziplinierter muss Ihre Startsequenz sein.

Capgo’s __CAPGO_KEEP_0__’s Aktualisierungsverhalten Die Dokumentation empfiehlt ausdrücklich die Kombination mit Delta-Updates. Das ist die richtige Standardkonfiguration. directUpdate Die zweite Sicherheitsbarriere ist

Wenn Ihre App innerhalb der Standardzeit von 10 Sekunden oder innerhalb der Zeit, die Sie in Ihrer __CAPGO_KEEP_0__-Konfiguration festgelegt haben, nicht bereit meldet, kann __CAPGO_KEEP_1__ das Bundle als ungültig markieren und die vorherige gute Version wiederherstellen. Diese Rollover-Verhaltensweise ist in der Produktion erwünscht, bedeutet aber auch, dass Sie die Startsequenz sauber halten sollten: notifyAppReady().

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

CapacitorUpdater.notifyAppReady()

Aufrufen Sie notifyAppReady() am richtigen Ort 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:

  • __CAPGO_KEEP_1__ notifyAppReady() __CAPGO_KEEP_0__
  • __CAPGO_KEEP_1__
  • Sparen und den Anwendungsstatus sorgfältig wiederherstellen, wenn Sie sofort neu laden
  • Testen Sie die Szenarien "schlechte Netzwerk" und "geringe Endgeräte" vor einer breiten Veröffentlichung

Wenn Sie es kürzlich nicht gelesen haben, ist die "notifyAppReady"-Anleitung wertvoll, wiederzulesen. 6. Verwenden Sie interne Update-Kanäle anstatt unnötiger nativer Rebuilds Einige mobile Teams verbringen viel Zeit damit, Binärdateien für Änderungen zu erstellen, die offensichtlich nur auf der Webseite vorgenommen wurden.

Wenn die Änderung: ist

kopieren

UI-Polish

  • Onboarding-Flow
  • Preisbild-Logik
  • ist
  • wird
  • Analytik-Kabel
  • Funktionsschalter
  • Anfrage oder API Antwort-Anzeige

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

That means fewer native rebuilds, less TestFlight churn, and a tighter feedback loop for the team. It is one of the most underused benefits of Capgo: you can move more review and QA work into the OTA lane without breaking the native/web boundary.

Es ist einer der wenig genutzten Vorteile von __CAPGO_KEEP_0__: 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 einen praktischen Weg, dies über die Zeit sauber zu halten.

7. Halten Sie Lean separat von geheim

Kleine Pakete und sichere Pakete lösen unterschiedliche Probleme.

Kanäle steuern die Berechtigung. Sie machen ein Paket nicht selbstverständlich durch sich selbst geheim.

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

  • sich für Geschwindigkeit richten
  • verschlüsselt für Lieferungskontrolle
  • Kanäle für die Kontrolle der Ausrollung
  • Rückgängig für die Wiederherstellung.

Ein praktischer „lean Capgo“ Workflow

Wenn Sie ein einfaches Standardbetriebsmodell wollen, verwenden Sie dies:

  1. Halten Sie native und OTA-Release-Linien getrennt.
  2. JS-Änderungen hochladen mit --delta standardmäßig.
  3. Verwenden Sie staging und beta Kanäle vor production.
  4. Beobachten Aktualisieren Sie Statistiken und Protokolle nach dem Rollout und nicht nur vorher.
  5. Wandeln Sie Pull Requests in installierbare Vorabversionen um, wenn eine native Build unnötig ist.
  6. Halten Sie große, häufig wechselnde Medien möglichst aus dem Bundle heraus.
  7. Aktualisieren Sie die native Basislinie nach größeren Asset-Wachstum oder native Änderungen.
  8. Behandeln Sie Upload- und Rollback-Verhalten als Teil der Release-Engineering und nicht als Setup-Trivia. notifyAppReady() Diese Combination bleibt viel länger schnell als der gängige "Upload einfach alles, was geändert wurde"-Ansatz.

Schlussgedanke

Für __CAPGO_KEEP_0__-Teams ist "schlank und schnell" nicht nur ein Problem der Bundle-Größe.

For Capgo teams, “lean and fast” is not just a bundle-size problem.

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

Fahren Sie weiter von Wie __CAPGO_KEEP_0__ Updates Lean und Fast zu halten

Wenn Sie "Wie Capgo Updates Lean und Fast zu halten" verwenden

um Kanalrouten und rollende Veröffentlichung zu planen, verbinden Sie es mit How to Keep Capgo Updates Lean and Fast Behandeln Sie Upload- 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 einfach alles, was geändert wurde"-Ansatz. 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 den Produktworkflow in der Beta-Testlösung, und Versionziel-Lösung für den Produktworkflow in der Versionziel-Lösung.

Live-Updates für Capacitor-Anwendungen

Wenn ein Web-Schicht-Bug live ist, schicken Sie die Korrektur über Capgo anstatt Tage zu warten, bis die App-Store-Zulassung genehmigt ist. Die Benutzer erhalten die Aktualisierung im Hintergrund, während native Änderungen im normalen Review-Verfahren bleiben.

Los geht's

Neuestes aus unserem Blog

Capgo gibt Ihnen die besten Einblicke, die Sie benötigen, um eine wirklich professionelle mobile App zu erstellen.