Deltas-Updates
Kopieren Sie eine Setup-Vorlage mit den Installationsanweisungen und der vollständigen Markdown-Guideline für diesen Plugin.
Capgo’s Live Update-System kann Updates schneller und effizienter liefern, indem nur die geänderten Dateien gesendet werden, anstatt das gesamte JS-Bundle.
Dies ist besonders vorteilhaft für Benutzer mit langsameren oder abgerechneten Netzwerkverbindungen, da es die Menge an Daten minimiert, die heruntergeladen werden muss.
Dies ist insbesondere für Benutzer auf langsamen oder meterierten Netzwerkverbindungen von Vorteil, da es die Menge an herunterzuladender Daten minimiert.
Wie Delta-Updates funktionieren
Wie Delta-Updates funktionierenDelta updates in Capgo are handled by the Capgo plugin installed in your app. When you upload a new version of your app using the --delta flag, Capgo tut Folgendes:
- Jedes Datei in Ihrem Build wird einzeln als Differenzdatei hochgeladen
- Für jede Differenzdatei werden Prüfsummen generiert
- Die Liste der Differenzdateien, mit ihren Pfaden und Prüfsummen, wird im Capgo-Datenbank gespeichert
Wenn ein Gerät, das Ihre App ausführt, nach einer Aktualisierung sucht, erhält das Capgo-Plugin die Liste der Differenzdateien für das neue Bundle. Es vergleicht sie mit den Dateien, die es bereits hat, und identifiziert die geänderten Dateien auf der Grundlage der Prüfsummen und Dateipfaden
Das Plugin lädt dann nur die geänderten Dateien herunter, anstatt das gesamte JS-Bundle. Es rekonstruiert die neue Version der App, indem es diese heruntergeladenen Dateien mit den unveränderten Dateien kombiniert, die es bereits hat
Welche Geräte erhalten Delta und welche das volle Zip
Abschnitt mit dem Titel "Welche Geräte erhalten Delta und welche das volle Zip"Ein Bundle, das mit --delta hat sowohl ein volles Zip als auch Differenzdateien. Auf einem Kanal mit der Standard Zip + Delta Herunterladungsformat, jedes Gerät erhält das beste Paket, das es unterstützt:
- Geräte auf einer Plugin-Version mit Delta-Unterstützung (
5.10.0+,6.25.0+,7.0.35+, oder8+) laden nur die geänderten Delta-Dateien herunter. - Geräte auf einer älteren Plugin-Version ohne Delta-Unterstützung laden das volle Zip herunter.
- Bundles, die ohne
--deltahaben keine Delta-Dateien, daher laden alle Geräte das volle Zip herunter.
Es ist also zu erwarten, dass Sie nach der Aktivierung von Delta immer noch einige volle Zip-Downloads sehen. Sie stammen von Geräten, die noch eine ältere native Build mit einer alten Plugin-Version laufen. Sie verschwinden, wenn die Benutzer die App aus dem Store aktualisieren.
Sie können dies pro Kanal mit der Einstellung ändern. setting.
Deltas und Bandbreitenverbrauch
Abschnitt mit dem Titel “Deltas und Bandbreitenverbrauch”Deltas reduzieren auch Ihren Capgo Bandbreitenverbrauch. Die Bandbreite wird nur für die Dateien gezählt, die ein Gerät tatsächlich herunterlädt, daher zählen bei Delta nur die geänderten Dateien, nicht das gesamte Bundle. Dateien oder vollständige Zip-Dateien, die bereits an der Edge gecached sind, werden nicht gezählt, und unterbrochene Downloads werden an der Stelle fortgesetzt, an der sie abgebrochen wurden, ohne dass der heruntergeladene Teil zweimal gezählt wird. Siehe Wie wird der Bandbreitenverbrauch gezählt?.
Delta-Updates aktivieren
Abschnitt mit dem Titel “Delta-Updates aktivieren”Um Delta-Updates für Ihre Capgo App zu aktivieren, verwenden Sie einfach die --delta Flag bei der Hochladen einer neuen Version:
npx @capgo/cli@latest bundle upload --deltaWenn autoUpdate auf eine sofortige Anwendungsmethode ("atInstall", "onLaunch", oder "always") in Ihrem capacitor.config, das CLI erkennt es. In nicht interaktiven Umgebungen sendet es Delta-Updates automatisch, und in interaktiven Umgebungen fragt es Sie nach Bestätigung, bevor es hochlädt. directUpdate config wird weiterhin erkannt. Verwenden Sie --no-delta um eine vollständige Bundle-Upload zu erzwingen.
Delta-Update-Begrenzungen
Sektion mit dem Titel “Delta-Update-Begrenzungen”- Leere Dateien: Das CLI protokolliert
Ignoring empty file...und schließt leere Dateien aus den Delta-Dateien aus. Es schlägt die Upload-Operation nicht aus, daher kann das Hinzufügen einer leeren Datei das Ergebnis-Bundle ohne Unterbrechung der Bereitstellung ändern. Fügen Sie keine leeren Dateien in Delta-Bundle-Pfade ein. - Leerzeichen in Pfaden: Delta-Uploads scheitern, bevor sie Dateien hochladen, wenn ein Bundle-Pfad Leerzeichen enthält. Benennen Sie die Datei oder den Ordner um, um Leerzeichen zu entfernen, bevor Sie ein Delta-Update hochladen.
Delta-Updates zwingen
Abschnitt mit dem Titel “Delta-Updates durchsetzen”Wenn Sie sicherstellen möchten, dass alle Uploads Delta-Updates sind und keine ungewollten vollständigen Bundle-Uploads zulassen, können Sie das verwenden: --delta-only Flag:
npx @capgo/cli@latest bundle upload --delta-onlyWhen --delta-only is used, Capgo will only upload the delta files, without a full zip. Any device on a plugin version without Delta support will not be able to download the update.
Sie möchten möglicherweise --delta-only if:
- Sie setzen ein CI/CD-Pipeline ein und möchten sicherstellen, dass alle automatisierten Uploads Delta-Updates sind
- Ihr App ist groß und die Bandbreite ist eingeschränkt, daher müssen Sie die Upload- und Download-Größen minimieren
- Ihre App ist groß und die Bandbreite ist eingeschränkt, daher müssen Sie die Upload-/Download-Größe minimieren.
Wenn Sie eine vollständige Bundle-Upload benötigen, während --delta-only ist gesetzt, führen Sie einfach den Upload-Befehl ohne --delta-onlydies wird die Einstellung für diesen einzelnen Upload überschreiben, sodass Sie eine vollständige Bundle pushen können, wenn Sie dies benötigen.
Fehlerbehebung
Abschnitt mit dem Titel „Fehlerbehebung“Wenn Delta-Updates nicht funktionieren (d. h. Geräte laden immer die vollständige JS-Bundle herunter, auch bei kleinen Änderungen), überprüfen Sie, ob Sie
- Jede neue Version
--deltaJedes Mal, wenn Sie eine neue Version hochladen - If using
--delta-onlystellen Sie sicher, dass Sie versehentlich nichts ausgelassen haben.--deltaflag - Ihr Gerät läuft mit einer Pluginversion mit Delta-Unterstützung ("
5.10.0+,6.25.0+,7.0.35+oder8+) - Die Kanal-Download-Format ist nicht Nur Vollzip
- Dein Gerät hat eine stabile Netzwerkverbindung und kann die Capgo-Server erreichen
Du kannst auch die Capgo-Webanwendung verwenden, um die Details deiner letzten Uploads zu überprüfen:
- Gehe zur Webanwendung
- Klicke auf deine App
- Klicke auf die Anzahl der Pakete in der Statistikleiste.
- Wähle das letzte Paket
- Überprüfe die
Delta filesZeile. Sie zeigt No Delta-Dateien Wenn das Bundle als vollständiges Zip-Datei hochgeladen wurde.
Wenn Sie weiterhin Schwierigkeiten haben, wenden Sie sich bitte an Capgo-Support, um weitere Unterstützung zu erhalten. Sie können die Server-Protokolle überprüfen, um sicherzustellen, dass Ihre Delta-Uploads korrekt verarbeitet werden und dass Geräte die Delta-Dateien empfangen.
Das ist alles! Die --delta Flaggtell Capgo an, die einzelnen Delta-Dateien hochzuladen, die für Delta-Updates erforderlich sind.
Hinweis: Sie müssen --delta jedes Mal verwenden, wenn Sie eine neue Version hochladen, die Sie als Delta-Update liefern möchten. Wenn Sie die Flagg omissieren, wird Capgo die gesamte JS-Bundle als einzelne Datei hochladen und Geräte werden die ganze Bundle herunterladen, selbst wenn nur ein kleiner Teil geändert wurde.
Fortsetzen mit Delta-Updates
Sektion mit dem Titel “Fortsetzen mit Delta-Updates”Wenn Sie Delta-Updates verwenden Delta-Updates um live update Lieferung zu planen, verbinden Sie es mit Capgo Live Updates für den Produktworkflow in Capgo Live Updates, Overview für die Implementierungsdetail in Überblick, Übersicht für die Implementierungsdetails in Features, Aktualisierungsverhalten für die Implementierungsdetails in Updateverhalten, und Updateverhalten für die Implementierungsdetails in Update-Typen.