Zum Inhalt springen

Von V3 zu V4

Nach vielen Gesprächen mit euch in der Discord-Community habe ich gemerkt, dass der manuelle Modus viel zu manuell und nicht sicher in der Nutzung war. Zum Beispiel war ein Auto-Revert nicht möglich – wenn ein Update im manuellen Modus fehlschlug, musste der User die App deinstallieren und neu installieren, was eine schreckliche UX ist.

Gleichzeitig habe ich das als Chance genutzt, euch mehr Freiheit zu geben und all die schlechten code zu entfernen, die ich gemacht habe.

npm i @capgo/capacitor-updater@4

Wenn ihr das Basisbeispiel in eurer App verwendet, könnt ihr bedenkenlos auf die neue Version migrieren – viel Spaß!

Für euch bleibt es einfach – die Änderungen sind:

  • Der Name der Einstellung von autoUpdateUrl in einem updateUrl
  • Die Endpoint-Methode wurde von GET per POST

Für dich ist das die wichtigste Änderung – aber zur besten! Du erhältst zahlreiche Verbesserungen. Lies genau.

  • autoUpdateUrl wird zu updateUrl da diese Einstellung jetzt auch im manuellen Modus verwendet werden kann
  • Löschen von cancelDelay und delayUpdate statt setDelay
  • Nicht mehr versionName im Set
  • Änderung version Key, der in den meisten Funktionen als Objekt zurückgegeben wurde BundleInfo
interface BundleInfo {
id: string;
version: string;
downloaded: string;
status: 'success' | 'error' | 'pending' | 'downloading'
}
  • Irreführende Namen jetzt umbenannt (auch wenn die Erklärung nicht immer klar sein kann, ist die neue Bezeichnung bei der Nutzung leicht zu verstehen):
    • was früher als version bezieht sich jetzt auf bundle
    • id bezieht sich auf den alten version der ein zufälliger String aus 10 Zeichen war, dies id ist der einzige zuverlässige und eindeutige Weg, auf deine Bundles zuzugreifen, Beispiel 7Dfcd2RedN.
    • version verweisen jetzt auf die versionName die du für ein Bundle wählst, zum Beispiel 1.0.0
  • updateUrl wechsel von get zu post, da benutzerdefinierte Header für einige von euch ein Problem waren und POST logischer ist, wandern alle bisherigen Header in den Body und bekommen das Präfix cap_ fallen weg.
  • versionName Methode entfällt zugunsten von getId
  • liefert jetzt eine Liste von BundleInfo
  • Umbenennen getId in einem getDeviceId
  • autoUpdate ist standardmäßig true; wenn du den Manual-Modus nutzt, setze es auf false.
  • Methode getLatest, mit dieser Methode können Sie von Ihrem Server-Set mit updateUrl der letzten verfügbaren Version abrufen.
  • Methode setDelay die nehmen {Art: „background“ | „kill“ | „nativeVersion“ | „date“, value? : string} als Argument, um die Verzögerung für verschiedene Modi zu setzen.
  • Methode next, um die Version beim nächsten Hintergrundieren festzulegen, im Gegensatz zu set die es sofort tun.
  • Methode isAutoUpdateEnabled, um zu erkennen, ob sich die App im Auto-Update-Kontext befindet
  • Event downloadComplete wenn der Download 100 % erreicht
  • Pflichtfeld hinzugefügt version in der Download-Methode
  • notifyAppReady ist auch im manuellen Modus Pflicht; wird es nicht nach 10 Sekunden aufgerufen, kehrt die App zur vorherigen Version zurück.

@lincolnthree Vielen Dank, dass du diese Arbeit aufgenommen hast. Ohne dich wäre es unmöglich gewesen, dieses Update zum Laufen zu bringen.

Weiter mit dem Upgrade von V3 auf V4

Abschnitt mit dem Titel „Weiter von V3 zu V4“

Wenn du es nutzt Von V3 zu V4 um die Auslieferung von live update zu planen, verbinde sie mit Capgo Live Updates für den Produkt-Workflow in Capgo Live Updates, Übersicht für die Implementierungsdetails in Overview, Funktionen für die Implementierungsdetails in Features, Update-Verhalten für die Implementierungsdetails in Update Behavior und Update-Typen für die Implementierungsdetails in Update Types.