Passer à la navigation

Problèmes d'actualisation courants

Lorsqu'une vérification de mise à jour échoue, Capgo retourne généralement un error code et un message dans le /updates réponse. Cette page explique les échecs les plus courants et les corrections les plus rapides.

  • no_new_version_available est un état normal, pas une erreur.
  • Beaucoup de rapports « mise à jour trouvée mais non appliquée » sont des refus de politique/configurations plutôt que des retards de cache, surtout lorsqu'il y a une réponse explicite error code.
  • Utilisez npx @capgo/cli@latest app debug tandis que vous reproduisez le problème pour voir les détails de la requête/réponse.

Cause

Votre canal bloque les mises à jour majeures (disable_auto_update = major) et la version majeure du bundle cible est supérieure à la version de base du dispositif.

Symptôme typique

version: 1.0.8 avec old: 0.0.0 signifie que le dispositif signale la version de base 0.0.0, donc les mises à jour majeures sont rejetées.

Comment l'interpréter

Le serveur compare les versions majeures en utilisant la base de ligne de commande old et cible version.

  • Si la cible est 1.0.1, la version majeure de la base de ligne de commande doit être 1 (par exemple 1.0.0).
  • Si la cible est 10.0.1, la version majeure de la base de ligne de commande doit être 10 (par exemple 10.0.0).

Option de correction A (recommandée) : aligner la version majeure de la base de ligne de commande

Définir plugins.CapacitorUpdater.version en capacitor.config.* donc c'est MAJOR correspond à la version MAJOR que vous souhaitez délivrer (par exemple 1.0.0 pour 1.0.1, 10.0.0 pour 10.0.1).

Appliquez ensuite cette configuration à l'application installée une fois :

  1. Exécuter npx cap sync.
  2. Rebâtir et réinstaller l'application native.

Option de correction B : assouplir la politique de canal

Autoriser les mises à jour automatiques inter-majeures dans les paramètres du canal (seulement si cette stratégie de lancement est intentionnelle).

Documents liés :

disable_auto_update_to_minor / disable_auto_update_to_patch

Section intitulée “disable_auto_update_to_minor / disable_auto_update_to_patch”

Cause

La politique du canal est plus stricte (minor ou patch) que l'actualisation proposée.

Fix

  • Télécharger un bundle compatible avec la politique actuelle, ou
  • modifier la politique du canal dans le tableau de bord/CLI.

Documentation connexe :

Cause

Le canal utilise une ciblage basé sur les métadonnées (version_number) et le niveau de base du dispositif est inférieur à la version requise min_update_version.

Fix

  • Alignez le niveau de base du dispositif (CapacitorUpdater.version) avec la version native de l'application installée, ou
  • ajustez min_update_version la stratégie du canal.

Documents liés :

Cause

Le canal empêche les dégradations en dessous du niveau de base natif.

Réparation

  • Téléchargez une version de bundle supérieure ou égale au niveau de base natif, ou
  • désactivez la protection de dégradation « sous natif » pour ce canal.

Documents liés :

Cause

Le canal sélectionné/par défaut n'autorise pas l'attribution automatique du dispositif.

Réparation

  • Utilisez un canal différent avec l'attribution automatique activée, ou
  • rendez le canal public / activez l'attribution automatique.

Documents liés :

Cause

La version de base du périphérique est manquante (unknown) ou non validité de semver.

Correction

  • Définir plugins.CapacitorUpdater.version à une version de semver valide comme 1.2.3.
  • Synchronisez et reconstruisez l'application native.

Documents liés :

Cause

La version du plugin de mise à jour est trop ancienne pour les exigences actuelles du serveur de backend.

Réparation

  • Mettre à jour @capgo/capacitor-updater.
  • Exécuter npx cap sync.
  • Reconstruire et réinstaller l'application native.

Problème

Le canal a désactivé les mises à jour pour cette plateforme.

Correction

  • Activer le bouton de la plateforme sur le canal.

disable_prod_build / disable_dev_build / disable_device / disable_emulator

Section intitulée “disable_prod_build / disable_dev_build / disable_device / disable_emulator”

Problème

Le canal interdit le type de build actuel ou le cible de runtime.

Correction

  • Aligner les options du canal (allow_prod, allow_dev, allow_device, allow_emulator) avec votre cible de test.

Problème

Les clés d'encryption du bundle et la clé de l'appareil diffèrent.

Réparation

  • Utilisez la même clé d'encryption/clé publique dans la configuration de l'application et le flux de workflow d'encryption du bundle.

Cause

Aucun canal valide n'a été résolu pour l'appareil.

Réparation

  • Définissez un canal par défaut dans le cloud, ou
  • configurez defaultChannel dans les builds de test, ou
  • attribuez une surcharge de canal pour appareil.

Documents connexes :

La cause

Le serveur backend a retourné HTTP 429 avec on_premise_appCela se produit dans trois situations :

  1. L'ID de l'application n'existe pas dans Capgo — le app_id le message envoyé par le dispositif n'est pas enregistré, donc le serveur n'a pas de dossier sur lui.
  2. L'application est étiquetée comme sur site — l'application existe mais est configurée pour les mises à jour auto-hébergées, donc le point de terminaison cloud Capgo refuse de le servir.
  3. Le plan de l'organisation est annulé — l'application n'a plus d'abonnement actif.

Erreur courante

Une faute d'orthographe dans plugins.CapacitorUpdater.appId (en capacitor.config.ts) ou un désaccord avec l'ID de l'application enregistré dans le tableau de bord Capgo. Le serveur ne peut pas distinguer « application inconnue » de « application sur site », il retourne donc le même erreur code.

Réparer

  • Vérifiez que app_id correspond exactement à ce qui est affiché dans le tableau de bord Capgo (sensibilité à la casse).
  • Si l'application n'est pas encore enregistrée, exécutez npx @capgo/cli@latest app add.
  • Si l'application est intentionnellement sur site, définissez plugins.CapacitorUpdater.updateUrl à votre point de terminaison d'actualisation auto-hébergé au lieu de l'URL Cloud Capgo.
  • Si le plan d'organisation a expiré, renouvelez ou mettez à niveau le plan.

Liste de vérification rapide de diagnostic

Section intitulée « Vérification rapide de diagnostic »
  1. Confirmer l'ID de l'application et le canal sont corrects pour la construction.
  2. Confirmer CapacitorUpdater.version correspond à la version native de l'application installée.
  3. Confirmer la politique du canal (disable_auto_update) correspond à la mise en œuvre prévue.
  4. Confirmer les paramètres de plateforme/contrôle de construction permettent cet appareil.
  5. Exécuter npx @capgo/cli@latest app debug et lire les erreurs du serveur backend code.

Si vous utilisez Common Update Problems pour planifier le travail de plugin natif, connectez-le à En utilisant @capgo/capacitor-mises-à-jour pour la capacité native dans En utilisant @capgo/capacitor-mises-à-jours, Répertoire de plugin Capgo pour le flux de travail du produit dans Répertoire de plugin Capgo, Plugins Capacitor par Capgo pour le détail d'implémentation dans Plugins Capacitor par Capgo Ajouter ou Mettre à Jour les Plugins pour le détail d'implémentation dans Ajouter ou Mettre à Jour les Plugins, et Alternatives de Plugins Entreprise Ionic pour le flux de travail du produit dans Alternatives de Plugins Entreprise Ionic.