Passer au contenu principal

Réparez les erreurs de version incompatible dans les applications Capacitor

Découvrez comment résoudre rapidement les erreurs de version incompatible dans les applications Capacitor pour éviter les interruptions de construction et les crashes au moment de l'exécution.

Martin Donadieu

Martin Donadieu

Responsable de la création de contenu

Réparez les erreurs de version incompatible dans les applications Capacitor

Les erreurs de version incompatible dans les Capacitor applications peuvent perturber les constructions, provoquer des crashes au moment de l'exécution et retarder les mises à jour. Ces problèmes surgissent lorsque les packages de base, les plugins ou les dépendances sont mal alignés. Voici comment les résoudre rapidement :

  • Causes courants:

    • Mises à jour partielles ou conflits de dépendances.
    • Erreurs dans les package.json ou les fichiers pod.
    • Mises à jour automatiques créant des incohérences.
  • Réparations rapides:

    • Exécuter npx cap doctor ou npm list @capacitor/* pour détecter les incohérences.
    • Aligner les versions dans package.json (par exemple, @capacitor/core, @capacitor/ios, @capacitor/android).
    • Utilisez npm install pour mettre à jour tous les packages et plugins de base.
  • Prévenir les problèmes futurs:

    • Fixer les versions dans package.json (par exemple, "@capacitor/core": "5.0.0").
    • Automatiser les vérifications de versions avec les outils CI/CD.
    • Utilisez les outils d'actualisation en direct comme Capgo pour des corrections plus rapides.

Résoudre l'exception d'affichage sans correspondance dans Capacitor

Capacitor Documentation du site Web du Framework

Trouver les problèmes de version incohérente

Vous pouvez découvrir les incohérences de version en suivant ces étapes :

Signes et messages d'erreur

Commencez par examiner les sorties d'erreur :

  • Échecs de construction mentionnant « version incompatible »
  • Exceptions de temps d'exécution faisant référence à « version incohérente »
  • Avertissements de la console sur les conflits de dépendances
  • Erreurs d'installation de pod iOS signalant des problèmes de version

Ces messages d'erreur, qu'ils proviennent du terminal ou de votre IDE, révèlent souvent des conflits. Faites attention aux avertissements qui incluent des numéros de version - ils peuvent vous aider à identifier le problème.

Vérifications en ligne de commande

Utilisez des outils en ligne de commande pour confirmer la cohérence des versions :

  • npx cap doctor: Vérifiez l'état de Capacitor et signalez les incohérences.
  • npm list @capacitor/core @capacitor/ios @capacitor/android: Affiche les versions installées, facilitant ainsi la détection des incohérences.

Config File Review

Dernièrement, passez en revue vos fichiers de configuration pour vous assurer de l'alignement des versions.

package.json

{
  "dependencies": {
    "@capacitor/core": "5.0.0",
    "@capacitor/ios": "5.0.0",
    "@capacitor/android": "5.0.1"  // Version mismatch!
  }
}

capacitor.config.json

{
  "appId": "com.example.app",
  "appName": "MyApp",
  "plugins": {
    "SomePlugin": {
      "version": "3.0.0"
    }
  }
}

Vérifiez la cohérence sur :

  • Les packages de base de Capacitor
  • Les packages spécifiques à la plateforme (iOS/Android)
  • Les plugins et leurs dépendances

Maintenir ces versions alignées aide à éviter les problèmes de compatibilité.

Fixing Core and Plugin Versions

Actualisations du Package de Base

Pour mettre à jour vos packages de base Capacitor, utilisez la commande suivante : npm

npm install @capacitor/core@latest @capacitor/ios@latest @capacitor/android@latest

Si vous avez besoin d'une version spécifique, remplacez @latest par le numéro de version souhaité. Par exemple :

npm install @capacitor/core@5.0.0 @capacitor/ios@5.0.0 @capacitor/android@5.0.0

Une fois les mises à jour terminées, synchronisez votre projet avec :

npx cap sync

Corrections de Versions de Plugin

Assurez-vous que vos plugins sont compatibles avec la version Capacitor que vous utilisez. Mettez à jour les versions testées et compatibles, et assurez-vous de tester la fonctionnalité après chaque mise à jour.

Si un plugin nécessite Capacitor 5.x mais que vous utilisez 6.x, vous avez deux options :

  • Mettez à jour le plugin vers la dernière version :

    npm install @plugin-name@latest
  • Réduisez Capacitor pour qu'il corresponde aux exigences du plugin :

    npm install @capacitor/core@5.x

Pour les mises à jour impliquant des changements de rupture, des ajustements supplémentaires peuvent être nécessaires.

Changements de Version Majeure

When vous passez à une nouvelle version majeure, suivez ces étapes :

  1. Sauvegarder votre projet: Effectuez une sauvegarde complète avant de commencer toute mise à jour.

  2. Vérifier le Changelog: Examinez le changelog officiel pour toute modification de rupture qui pourrait affecter votre projet.

  3. Mettre à jour les Dépendances: Mettez à jour vos Capacitor packages aux versions requises. Par exemple :

    npm install @capacitor/core@7.0.0 @capacitor/ios@7.0.0 @capacitor/android@7.0.0

Capgo fournit des mises à jour en temps réel pour Capacitor 8, vous permettant d'appliquer des correctifs sans avoir besoin d'approbations de l'App Store [1].

Éviter les Conflicts de Versions Futurs

Outils de Verrouillage de Version

Verrouiller des fichiers comme package-lock.json ou yarn.lock assurer que tous les membres de votre équipe utilisent les mêmes versions de dépendances. Pour éviter les mises à jour inattendues, définissez des numéros de version exacts au lieu d'utiliser les symboles de care (^) ou de flèche (~) :

{
  "dependencies": {
    "@capacitor/core": "5.0.0",
    "@capacitor/ios": "5.0.0",
    "@capacitor/android": "5.0.0"
  }
}

Mise à Jour Automatisée

Configurez des contrôles de version automatiques dans votre pipeline CI/CD pour signaler les conflits dès le début. Par exemple, utilisez la commande suivante pour détecter les dépendances obsolètes :

npm outdated @capacitor/*

Vous pouvez intégrer ce pas dans des outils comme GitHub Actions, GitLab CI, ou Jenkins pour garantir des builds cohérents. Pour un contrôle encore plus grand, considérez l'utilisation du système d'actualisation de Capgo pour simplifier le processus.

Utilisation Capgo Interface de tableau de bord de mise à jour en temps réel __CAPGO_KEEP_0__

Mise à jour en temps réel Capgo fournit un système de mise à jour en temps réel qui résout rapidement les conflits de version. Selon leurs données, 95 % des utilisateurs actifs installent des mises à jour dans les 24 heures

“Nous avons déployé des mises à jour OTA Capgo en production pour notre base d’utilisateurs de +5000. Nous constatons une opération très fluide, presque tous nos utilisateurs sont à jour dans les minutes qui suivent le déploiement de l’OTA sur @__CAPGO_KEEP_1__.” – colenso [1].

“We rolled out Capgo OTA updates in production for our user base of +5000. We’re seeing very smooth operation almost all our users are upto date within minutes of the OTA being deployed to @Capgo.” – colenso [1]

Here’s how to make the most of Capgo:

  • Configurez des retours automatiques en cas de problèmes critiques.
  • Surveillez les taux de réussite pour vous assurer que les mises à jour sont efficaces.
  • Utilisez des déploiements étalés pour minimiser les risques.
  • Pour les équipes gérant plusieurs versions d'applications, le système de canaux de __CAPGO_KEEP_0__ permet de tester les mises à jour avec des groupes d'utilisateurs spécifiques avant une mise en production plus large. Cette approche a atteint un taux de réussite global de 82 % pour les mises à jour

For teams handling multiple app versions, Capgo’s channel system allows you to test updates with specific user groups before a wider release. This approach has achieved an 82% global success rate for updates [1].

__CAPGO_KEEP_1__

Guide de solutions rapides

Vous rencontrez des erreurs de version incohérentes dans Capacitor applications ? Voici quelques actions rapides à prendre :

  • Verrouillez les versions des dépendances dans votre package.json fichier et utilisez des fichiers de verrouillage pour garantir la cohérence.
  • Exécutez npm outdated @capacitor/* pour identifier les dépendances obsolètes.
  • Address conflicts by utilizing Capgo’s staged rollouts [1].

Ces étapes résument les méthodes de diagnostic discutées précédemment.

Pratiques recommandées

To ensure long-term stability, consider these best practices for managing Capacitor versions effectively. These methods have been successfully applied in over 750 production apps [1].

  • Gestion de version

    • Maintenez les versions des dépendances cohérentes.
    • Synchronisez la gestion des versions dans tous les environnements d'équipe.
    • Décrit clairement les exigences de version pour une référence facile.
  • Gestion des Mises à Jour Rodrigo Mantica partage :

    “Nous pratiquons le développement agile et @Capgo est essentiel à la livraison continue à nos utilisateurs !” [2]

  • Surveillance et Rétablissement Surveillez régulièrement les dépendances pour identifier les conflits tôt. [1].

  • La surveillance appropriée a montré que 95 % des utilisateurs actifs peuvent mettre à jour dans les 24 heures

    • Conseils Clés d'Implémentation
    • Automatisez les vérifications de version dans les pipelines CI/CD.
    • Maintenez les options de retrait pour les problèmes inattendus.
    • Suivez les taux de réussite des mises à jour pour évaluer les performances.

Continuez à partir de la correction des erreurs de version Capacitor

Si vous utilisez Corriger les erreurs de version Capacitor pour planifier l'automatisation CI/CD, connectez-le à Capgo CI/CD for the product workflow in Capgo CI/CD, Capgo CI/CD, Capgo Builds natifs Capgo Integrations Capgo Builds natifs, et pour les intégrations dans le flux de travail du produit dans le module de CI/CD de Capgo Integrations, Intégration CI/CD pour les détails d'implémentation dans l'intégration CI/CD, et Intégration d'Actions GitHub pour les détails d'implémentation dans l'intégration d'Actions GitHub.

Mises à jour en temps réel pour les applications Capacitor

Lorsqu'un bug de la couche web est en ligne, expédiez la correction par Capgo au lieu d'attendre des jours pour l'approbation de la boutique d'applications. Les utilisateurs reçoivent la mise à jour en arrière-plan tandis que les changements natifs restent dans le chemin de revue normal.

Commencez dès maintenant

Dernières actualités de notre Blog

Capgo vous donne les meilleures informations dont vous avez besoin pour créer une application mobile vraiment professionnelle.