Mise à jour automatique
Copiez un prompt de configuration avec les étapes d'installation et la guide Markdown complet pour ce plugin.
Cette documentation expliquera comment exécuter votre serveur d'auto-mise à jour.
Servez votre bundle
Section intitulée “Servez votre bundle”Veuillez vous assurer 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 la mise à jour.
Exemple : https://myserver.com/app/updates/updates.json
Si vous n'êtes pas familiarisé avec le service d'un bundle, nous vous recommandons de tenter Capgo Cloud ou de consulter un exemple ici :
Configuration
Ajoutez unà votre updateUrl Copier dans le presse-papiers capacitor.config.json.
{ "plugins": { "CapacitorUpdater": { "updateUrl": "https://myserver.com/app/updates/updates.json", } }}Update API
Section intitulée « Mettre à jour API »Le plugin effectuera une requête POST vers votre API chaque fois que l'application sera 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 devrait répondre, au format JSON, au plugin de mise à jour capacitor-updater. 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 une, 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 en semver format.
Le zip devrait avoir index.html comme un fichier au niveau de la racine, ou seulement un dossier au niveau de la racine avec index.html dans.
Vous pouvez utiliser la commande de CLI pour compresser votre bundle :
npx @capgo/cli bundle zip --path [/path/to/my/bundle]Vérification de la somme de contrôle du Bundle
Section intitulée “Vérification de la somme de contrôle du Bundle”Important : Vous devez utiliser la commande de 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 l'on utilise 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 de Capgo CLI zip avec la --json flag :
npx @capgo/cli bundle zip [appId] --jsonCette commande fera :
- Créez un fichier zip compatible avec le plugin Capgo
- Générez le checksum SHA256 pour la vérification de l'intégrité
- Affichez les informations du bundle sous forme de JSON
Exemple de sortie :
{ "version": "1.2.3", "checksum": "a1b2c3d4e5f6789...", "size": 1234567}Utilisez la checksum valeur de cette sortie dans votre réponse API pour vous assurer que le plugin peut vérifier l'intégrité du bundle avant l'installation.