Capgo verwendet 2 Hauptvariablen, um Versionen in Ihrer Capacitor-Anwendung zu verwalten:
- Nativversion
- JavaScript-Versionen
Alle Versionen werden von Capgo serverseitig entschieden.
Versionsverwaltungssystem
Verwenden Sie das SemVer-System, um die Version Capgo zu verwalten. Lesen Sie die SemVer-Spezifikation oder prüfen Sie die Capgo-Update-Kompatibilität mit dem Semver-Tester.
Versionen
Wo Capgo die Version finden, um sie zu vergleichen
Sie können dieses Verhalten überschreiben, indem Sie die Versions-Schlüssel in
capacitor.config.jsonDatei Dokumentation Die native Version wird für alle Plattformen ignoriert.
iOS
In IOS wird die Variable auf Ihrem Projekt hier gesetzt ios/App/App/Info.plist unter der SchlüsselCFBundleShortVersionString oder ios/App/App.xcodeproj/project.pbxproj unter der Schlüssel MARKETING_VERSION if MARKETING_VERSION unter der Schlüssel Info.plist oder
Android
In Android wird die Variable auf Ihrem Projekt hier gesetzt android/app/build.gradle unter der Schlüssel defaultConfig.versionName
JavaScript ( Capgo Paketversion )
In JavaScript kann die var in Ihrem package.json unter der Schüssel version
Ansonsten müssen Sie es im Upload-Befehl bereitstellen.
Standardverhalten
Dies ist das Verhalten, das Ihr Capgo-Kanal aufweist, wenn Sie keine Einstellungen geändert haben.
Dieses Verhalten wird auf der einzigartigen Standardkanal basieren, den Sie erstellt haben.
Wenn eine frische Installation Ihres Capacitor-Apps
Wenn der Benutzer Ihre Ionic-App zum ersten Mal heruntergeladen und geöffnet hat und die App den Capgo-Server kontaktiert.
Derzeit können 4 Ergebnisse auftreten:
- Die native Bundle-Version (1.2.3) ist niedriger als die Capgo-Bundle-Version (1.2.4), Capgo sendet die Bundle an den Benutzer.
- Die native Bundle-Version (1.2.3) ist gleich der Capgo-Bundle-Version (1.2.3), Capgo sendet 'keine Aktualisierung erforderlich'.
- Die native Bundle-Version (1.2.4) ist höher als die Capgo-Bundle-Version (1.2.3), Capgo sendet 'keine Aktualisierung erforderlich'.
- Die native Bundle-Version (1.2.3) ist MAJOR niedriger als die Capgo-Bundle-Version (2.2.3), Capgo sendet 'keine Aktualisierung erforderlich'.
Sonstige Einstellungen
Unter Native deaktivieren
Wenn Sie diese Einstellung auf false ändern, wird Capgo immer als vertrauenswürdige Quelle der Version angesehen. Dann wird das Verhalten wie folgt :
- Die native Version (1.2.4) ist höher als die Capgo-Version (1.2.3)
Capgo sendet seine Version an den Benutzer.
Deaktivieren Sie die Auto-Upgrade-Strategie
Es gibt ein paar Strategien, die Sie auswählen können. Sie können mehr darüber erfahren here
JavaScript-Bundle-Version
Die JavaScript-Bundle-Version ist die, die Sie senden, wenn Sie npx @capgo/cli@latest bundle upload --channel production
Wenn Sie die Option nicht verwendet haben --bundle 1.2.3, Capgo wird die Bundle-Version von Ihrem package.json Datei (im Schlüsselversion).
Nachdem Ihre Ionic-App eine Version von Capgo installiert hat, wird diese Version für die Vergleichsoperation verwendet:
- Ihr JavaScript-Bundle-Version (1.2.3) ist niedriger als die Capgo-Bundle-Version (1.2.4), Capgo sendet daher das Bundle an den Benutzer.
Unter bestimmten Bedingungen:
- Wenn die native Bundle-Version höher ist als die Capgo-Version, wird die
Disable auto downgrade under nativeBedingung angewendet. - Wenn die native Bundle-Version kleiner als die Capgo-Version ist,
Disable auto upgrade above majorBedingung angewendet.
App-Store-Update
Wenn Sie Ihre Capacitor JS-Anwendung im App Store veröffentlichen, ist das, was passiert, einfach.
Ihr Benutzer erhält die neue Version aus dem Store und entfernt alle lokalen Updates in ihrer App standardmäßig.
Wenn Sie das Verhalten ändern möchten, müssen Sie die Einstellung resetWhenUpdate Mehr darüber lesen hier
Dies kann nur auf der App-Seite geändert werden, nicht wie andere Einstellungen von der Cloud.
Andere Einstellungen
Nachdem diese Verhaltensweise erreicht ist, können Sie oben noch spezifische Einstellungen für das Geräte-ID vergeben.
In Capgo können Sie entscheiden, das Verhalten für jede Geräte-ID zu überschreiben.
Sie können eine Geräte-ID mit:
- einer bestimmten Bundle-Version
- einer bestimmten Kanal
Dies überspringt alle oben getroffenen Einstellungen.
Mehr darüber erfahren Sie in dem Artikel unten.
Weitergehen von How version work in Capgo
Wenn Sie __CAPGO_KEEP_0__ verwenden Wie funktionieren Versionen in Capgo? um native Plugin-Arbeit zu planen, verbinden Sie es mit Capgo-Plugin-Verzeichnis für den Produktworkflow in Capgo-Plugin-Verzeichnis Capacitor-Plugins von Capgo für die Implementierungsdetails in Capacitor-Plugins von Capgo Hinzufügen oder Aktualisieren von Plugins für die Implementierungsdetails in Hinzufügen oder Aktualisieren von Plugins Ionic Enterprise Plugin Alternativen für den Produktworkflow in Ionic Enterprise Plugin Alternativen und Capgo-Native Builds für den Produktworkflow in Capgo Native Builds.