Passer à la navigation

Auto Update

GitHub

Cette documentation expliquera comment exécuter votre serveur d'actualisation automatique.

Assurez-vous que votre bundle est servi sur HTTPS, et que le serveur a les bonnes en-têtes CORS pour permettre à l'application de télécharger l'actualisation. Par exemple : https://myserver.com/app/updates/updates.json

Si vous êtes inconnu de la mise en ligne d'un bundle, nous vous recommandons de tenter Capgo Cloud ou de consulter un exemple ici :

Ajoutez un updateUrl à votre capacitor.config.json.

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

Le plugin effectuera une requête POST vers votre API chaque fois que l'application est ouverte, avec ce corps :

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,
}

Le serveur API doit répondre, en JSON, au plugin de mise à jour capacitor. Avec ces données, si une mise à jour est nécessaire :

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

En mode de mise à jour automatique, le serveur devrait comparer les versions et retourner la bonne, si la clé URL est présente, le plugin démarre le processus de téléchargement.

Si vous ajoutez les clés « message » et « erreur », la version ne sera pas définie, et le message sera affiché dans les journaux à la place.

version La clé devrait être dans semver le format.

Le zip devrait avoir index.html comme un fichier à la racine, ou seulement un dossier à la racine avec index.html à l'intérieur.

Vous pouvez utiliser la commande du CLI pour zipper votre bundle :

Créez un bundle avec vos fichiers pour les servir à partir de votre serveur
npx @capgo/cli bundle zip --path [/path/to/my/bundle]

Génération du checksum du Bundle

Génération du checksum du Bundle

Important : Vous devez utiliser les Capgo CLI pour créer votre fichier zip de bundle. Le plugin Capgo nécessite un format et une structure zip spécifiques qui ne sont garantis que lorsque vous utilisez l'outil officiel CLI. Les utilitaires zip standard peuvent créer des archives incompatibles.

Pour générer la somme de contrôle de votre bundle, utilisez la commande Capgo CLI zip avec la --json flag :

Créer un bundle avec informations de checksum
npx @capgo/cli bundle zip [appId] --json

Cette commande créera :

  • Créer un fichier zip correctement formatté compatible avec le plugin Capgo
  • Générez le checksum SHA256 pour la vérification d'intégrité
  • Affichez les informations du paquet sous forme de JSON

Exemple de sortie :

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

Utilisez le checksum valeur de ce résultat dans votre réponse API pour vous assurer que le plugin puisse vérifier l'intégrité du bundle avant l'installation.

Continuez avec l'auto-mise à jour

Continuez de l'Auto Mise à jour

Sous-titre « Continuez de l'Auto Mise à jour » Si vous utilisez to plan migration and enterprise operations, connect it with Utilisation de @capgo/capacitor-mise à jour pour la capacité native dans l'utilisation de @capgo/capacitor-metteur à jour, Capgo Entreprise pour le flux de travail du produit dans Capgo Enterprise, Alternatives de plugins Ionic Enterprise pour le flux de travail du produit dans les alternatives du plugin Enterprise Ionic Capgo Alternatives pour le flux de travail du produit dans Capgo Alternatives, et Capgo Conseil de consultation pour le flux de travail du produit dans Capgo Consulting.