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 en temps de 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 applications __CAPGO_KEEP_0__ Capacitor Les applications peuvent perturber les constructions, provoquer des plantages de temps d'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 courantes:

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

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

    • Bloquer les versions en package.json (par exemple, "@capacitor/core": "5.0.0").
    • Automatiser les contrôles de versions avec les outils CI/CD.
    • Utiliser les outils d'actualisation en direct comme Capgo pour des corrections plus rapides.

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

Capacitor Documentation du Framework sur le Site Web

Trouver les Problèmes de Mise à Jour Incohérente

Vous pouvez découvrir les problèmes de mise à jour incohérente 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 du console sur les conflits de dépendance
  • Erreurs d'installation pod iOS mettant en évidence les 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.

Contrôle de ligne de commande

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

  • npx cap doctorVérifie la santé de Capacitor et signale les incohérences.
  • npm list @capacitor/core @capacitor/ios @capacitor/androidAffiche les versions installées, ce qui facilite la détection des incohérences.

Examen du fichier de configuration

Enfin, examinez 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"
    }
  }
}

Recherchez la cohérence dans :

  • Packs de base Capacitor
  • Packs spécifiques au plateforme (iOS/Android)
  • Plugins et leurs dépendances

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

Mise à jour des versions de Core et de Plugin

Mises à jour des packages de Core

To update your core Capacitor packages, use the following npm command:

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

Mise à jour des versions de Plugin

Assurez-vous que vos plugins soient compatibles avec la version Capacitor que vous utilisez. Mettez-les à jour vers des 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, d'autres ajustements peuvent être nécessaires.

Changements de Version Majeure

Lors de la transition vers une nouvelle version majeure, suivez ces étapes :

  1. Sauvegarder Votre ProjetCréer une sauvegarde complète avant de commencer toute mise à jour.

  2. Vérifier le ChangelogExaminez le changelog officiel pour tout changement de rupture qui pourrait affecter votre projet.

  3. Mettre à Jour les DépendancesMettons à jour vos Capacitor paquets 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 Conflits de Versions Futurs

Outils de Verrouillage de Version

Fichier de verrouillage comme package-lock.json ou yarn.lock aidez à vous 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 des symboles de carete (^) ou de flèche (~) :

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

Mise à jour automatique

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 vérifier les dépendances obsolètes :

npm outdated @capacitor/*

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

En utilisant Capgo Mises à jour

Interface de tableau de bord d'actualisation en direct de Capgo

Capgo fournit un système d'actualisation en direct qui résout rapidement les conflits de version. Selon leurs données, 95 % des utilisateurs actifs installent des mises à jour dans les 24 heures [1].

“Nous avons déployé des mises à jour OTA de 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 suivant le déploiement de l'OTA sur @Capgo.” – colenso [1]

Voici comment tirer le meilleur parti de Capgo:

  • Configurez plusieurs canaux de distribution pour des fins de test.
  • Définissez 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 canal de Capgo 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 mondial de 82% pour les mises à jour [1].

Résumé

Guide de solutions rapides

En cas d'erreurs de version incompatible dans les Capacitor applications ? Voici quelques actions rapides que vous pouvez prendre :

  • Verrouiller les versions des dépendances dans votre package.json fichier et utiliser des fichiers de verrouillage pour garantir la cohérence.
  • Exécuter npm outdated @capacitor/* pour identifier les dépendances obsolètes.
  • Résoudre les conflits en utilisant les déploiements étalés de Capgo [1].

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

Meilleures Pratiques

Pour garantir la stabilité à long terme, considérez ces meilleures pratiques pour gérer efficacement les versions de Capacitor. [1].

  • Contrôle de Version

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

    “We practice agile development and @Capgo is mission-critical in delivering continuously to our users!” [2]

  • “Nous pratiquons le développement agile et @__CAPGO_KEEP_0__ est essentiel pour livrer continuellement à nos utilisateurs !” [2] Surveillance et Récupération [1].

  • Surveillez régulièrement les dépendances pour identifier les conflits tôt. Une surveillance appropriée a montré que 95% des utilisateurs actifs peuvent mettre à jour dans les 24 heures

    • Automatiser les vérifications de version dans les pipelines CI/CD.
    • Utiliser les canaux de test avant la distribution complète.
    • Maintenir des options de retrait pour les problèmes inattendus.
    • Suivre les taux de réussite des mises à jour pour évaluer les performances.
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 le biais de 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 la voie de revue normale.

Démarrer Maintenant

Dernières actualités de notre Blog

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