Zum Inhalt springen

Auto-Update

GitHub

Dokumentation, die erklärt, wie Sie Ihren Auto-Update-Server ausführen.

Stellen Sie sicher, dass Ihr Bundle über HTTPS bereitgestellt wird und der Server die richtigen CORS-Kopfzeilen hat, um dem App die Aktualisierung herunterzuladen. e.g. https://myserver.com/app/updates/updates.json

Wenn Sie unbekannt sind mit dem Bereitstellen eines Bundles, empfehlen wir Ihnen, Capgo Cloud auszuprobieren oder ein Beispiel hier anzusehen.

Fügen Sie ein updateUrl zu Ihrem capacitor.config.json.

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

Das Plugin wird eine POST-Anfrage an Ihren API stellen, sobald die App geöffnet wird, 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 antworten, in JSON, auf die capacitor-aktualisierungs-Plugin. Mit dieser Daten, wenn eine Aktualisierung erforderlich ist:

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

In 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 der 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 innerhalb.

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

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

Wichtig: Sie müssen das Capgo CLI verwenden, um Ihr Bundle-Zip-Datei zu erstellen. Das Capgo-Plugin 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 das Capgo CLI Zip-Befehl mit dem Flag: --json flag:

Dieser Befehl wird Folgendes tun:
npx @capgo/cli bundle zip [appId] --json

Die SHA256-Prüfsumme für die Integritätsüberprüfung generieren

  • Erstellen Sie ein korrekt formatiertes Zip-Datei, das mit dem Capgo-Plugin kompatibel ist.
  • Erstellen Sie den SHA256-Prüfsummenwert zur Integritätsüberprüfung.
  • Bundeldaten in JSON-Format ausgeben

Create bundle with checksum information

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

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

Wenn Sie Auto Update Auto Update zum Planen der Migration und Unternehmensoperationen, verbinden Sie es mit Verwendung von @capgo/capacitor-Updater für die native Fähigkeit in der Verwendung von @capgo/capacitor-Updater, Capgo Enterprise für den Produktworkflow in Capgo Enterprise, Ionic Enterprise Plugin Alternativen für das Produktworkflow in Ionic Enterprise Plugin Alternativen Capgo Alternativen für das Produktworkflow in Capgo Alternativen und Capgo Beratung für das Produktworkflow in Capgo Consulting.