Zum Inhalt springen

Auto-Update

GitHub

Dienst Ihres Bundles

Sicherstellen Sie, dass Ihr Bundle über HTTPS bereitgestellt wird und der Server die richtigen CORS-Kopfzeilen hat, um dem App die Aktualisierung herunterzuladen.

Wenn Sie unbekannt sind, wie Sie ein Bundle bereitstellen, empfehlen wir Ihnen, __CAPGO_KEEP_0__ Cloud zu versuchen oder ein Beispiel hier zu sehen:

Ein Bundle bereitstellen https://myserver.com/app/updates/updates.json

If you’re unfamiliar with serving a bundle, we recommend you try Capgo Cloud or see an example here:

Hinzufügen updateUrl zu Ihrer capacitor.config.json.

{
"plugins": {
"CapacitorUpdater": {
"updateUrl": "https://myserver.com/app/updates/updates.json",
}
}
}

Das Plugin sendet bei jedem Öffnen der App einen POST-Anruf an Ihren API, mit diesem Body:

interface AppInfos {
"platform": "ios" | "android" | "electron",
"device_id": "UUID_of_device_unique_by_install",
"app_id": "APPID_FROM_CAPACITOR_CONFIG",
"custom_id": "your_custom_id_set_on_runtime",
"plugin_version": "PLUGIN_VERSION",
"version_build": "VERSION_NUMBER_FROM_NATIVE_CODE",
"version_code": "VERSION_CODE_FROM_NATIVE_CODE",
"version_name": "LAST_DOWNLOADER_VERSION" | "builtin"
"version_os": "VERSION_OF_SYSTEM_OS",
"is_emulator": boolean,
"is_prod": boolean,
}

Der Server API sollte in JSON antworten, auf die capacitor-Updater-Plugin. Mit dieser Daten, wenn ein Update notwendig ist:

{
"version": "1.2.3",
"url": "https://myserver.com/app/updates/my-new-app-2.0.0.zip",
"checksum": "sha256_checksum_of_bundle"
}

In der Auto-Update-Modus sollte der Server die Versionen vergleichen und die richtige zurückgeben, wenn die URL-Schlüssel vorhanden ist, startet das Plugin den Download-Prozess.

Wenn Sie die Schlüssel 'message' und 'error' hinzufügen, wird die Version nicht gesetzt und die Nachricht wird in den Protokollen angezeigt.

version Die Schlüssel sollte in semver Format.

Die Zip sollte haben index.html als Datei am Root oder nur eine Ordner am Root mit index.html drin.

Sie können den Befehl des CLI verwenden, um Ihre Bundle zu zippen:

Erstellen Sie ein Bundle mit Ihren Dateien, um es von Ihrem Server auszuspielen
npx @capgo/cli bundle zip --path [/path/to/my/bundle]

Bundle-Prüfsumme generieren

Abschnitt: "Bundle-Prüfsumme generieren"

Wichtig: Sie müssen die Capgo CLI verwenden, um Ihr Bundle-Zip-Datei zu erstellen. Die Capgo-Erweiterung erfordert eine spezifische Zip-Format und -Struktur, die nur dann garantiert ist, wenn Sie das offizielle CLI-Tool verwenden. Standard-Zip-Utilitäten können inkompatible Archive erstellen.

Um die Prüfsumme für Ihr Bundle zu generieren, verwenden Sie die Capgo CLI-Zip-Befehl mit dem --json Flag:

Bundle mit Prüfsummeninformationen erstellen
npx @capgo/cli bundle zip [appId] --json

Diese Befehlszeile wird Folgendes tun:

  • Einen korrekt formatierten Zip-Datei erstellen, der mit der Capgo-Erweiterung kompatibel ist
  • Die SHA256-Prüfsumme für die Integritätsüberprüfung generieren
  • Ausgabebundle Informationen in JSON-Format

Beispiel-Ausgabe:

{
"version": "1.2.3",
"checksum": "a1b2c3d4e5f6789...",
"size": 1234567
}

Verwenden Sie den checksum Wert aus dieser Ausgabe in Ihrer API-Antwort, um sicherzustellen, dass der Plugin die Bundle-Integrität vor der Installation überprüfen kann.

Weitermachen von Auto-Update

Wenn Sie Auto-Update

für die Planung von Migration und Unternehmensoperationen verwenden, verbinden Sie es mit Mit @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-Updater für die native Fähigkeit in Mit @__CAPGO_KEEP_0__/__CAPGO_KEEP_1__-Updater, Using @capgo/capacitor-updater for the native capability in Using @capgo/capacitor-updater, Capgo Enterprise für den Produktworkflow in Capgo Enterprise Ionic Enterprise Plugin Alternativen für den Produktworkflow in Ionic Enterprise Plugin Alternativen Capgo Alternativen für den Produktworkflow in Capgo Alternativen und Capgo Consulting für den Produktworkflow in Capgo Consulting.