Passer au contenu principal
Tutoriel

Comment les versions fonctionnent dans Capgo

Comprenez comment Capgo gère les versions dans votre application Capacitor, et utilisez-la au mieux. Apprenez l'importance des majeures, mineures et de révision.

Martin Donadieu

Martin Donadieu

Responsable de contenu

Comment les versions fonctionnent dans Capgo

Capgo utilise 2 variables principales pour gérer les versions dans votre Capacitor application :

  • Version native
  • Versions JavaScript
Capacitor système d'actualisation

Toutes les options de version sont décidées côté serveur par Capgo.

Système de versionnement

Pour gérer la version Capgo utilisez le système SemVer. Lisez la Spécification SemVer ou vérifiez la compatibilité d'Capgo avec le Testeur Semver.

Versions

Où Capgo trouve la version à comparer

Vous pouvez contourner ce comportement en définissant la clé de version dans capacitor.config.json __CAPGO_KEEP_0__ ici La version native sera ignorée pour tous les plateformes.

IOS

Dans IOS, la variable est définie dans votre projet ici ios/App/App/Info.plist sous la cléCFBundleShortVersionString ou ios/App/App.xcodeproj/project.pbxproj sous la clé MARKETING_VERSION si MARKETING_VERSION était définie dans votre Info.plist __CAPGO_KEEP_0__

Android

Sur Android, la variable est définie dans votre projet ici android/app/build.gradle sous la clé defaultConfig.versionName

JavaScript ( Capgo version de bundle )

Sur JavaScript, la variable peut être définie dans votre package.json sous la clé version Sinon, vous devez la fournir dans la commande d'upload.

Comportement par défaut

C'est ainsi que le canal Capgo se comportera si vous n'avez pas modifié les paramètres.

Ce comportement sera basé sur le canal unique que vous avez défini par défaut.

Lors d'une installation fraîche de votre application Capacitor

Lorsque l'utilisateur télécharge votre application Ionic pour la première fois et ouvre l'application, elle se connecte au serveur Capgo.

Actuellement, 4 sorties peuvent se produire :

  • La version du paquet natif (1.2.3) est inférieure à la version du paquet Capgo (1.2.4), Capgo envoie le paquet à l'utilisateur.
  • La version du paquet natif (1.2.3) est égale à la version du paquet Capgo (1.2.3), Capgo envoie « pas besoin de mettre à jour ».
  • La version du paquet natif (1.2.4) est supérieure à la version du paquet Capgo (1.2.3), Capgo envoie « pas besoin de mettre à jour ».
  • La version du paquet natif (1.2.3) est MAJOR inférieure à la version du paquet Capgo (2.2.3), Capgo envoie « pas besoin de mettre à jour ».

Autres paramètres

Désactiver la mise à niveau automatique sous native

Si vous modifiez cette configuration en false, Capgo considérera toujours comme la source fiable de la version. Ensuite, le comportement devient :

  • La version native (1.2.4) est supérieure à la version Capgo (1.2.3)

Capgo envoie sa version à l'utilisateur.

Stratégie de mise à niveau automatique

Il existe plusieurs stratégies que vous pouvez choisir. Vous pouvez en savoir plus sur cela ici

La version du bundle JavaScript

La version du bundle JavaScript est celle que vous envoyez lors de la mise en œuvre npx @capgo/cli@latest bundle upload --channel production

Si vous n'avez pas utilisé l'option --bundle 1.2.3, Capgo récupérera la version du bundle à partir de votre package.json fichier (dans la clé de version).

Après que votre application Ionic ait installé une version de Capgo, c'est cette version qui sera comparée pour :

  • Leur version du bundle JavaScript (1.2.3) est inférieure à la version de Capgo du bundle (1.2.4), Capgo envoie son bundle à l'utilisateur.

Avec certaines conditions de garde :

  • Si la version du bundle natif est supérieure à la version de Capgo, la Disable auto downgrade under native condition est appliquée.
  • Si la version du bundle natif est MAJOR inférieure à la version de Capgo, la Disable auto upgrade above major La condition est appliquée.

Mise à jour de l'App Store

Lorsque vous publiez votre Capacitor application JS sur l'App Store, ce qui se passe est simple.

Votre utilisateur recevra la nouvelle version depuis l'App Store et supprimera toutes les mises à jour locales dans leur application par défaut.

Si vous souhaitez modifier ce comportement, vous devez configurer la mise en forme resetWhenUpdate En savoir plus Ici

Cela ne peut être modifié que côté application, et non depuis le cloud comme les autres paramètres.

Autres paramètres

Après ce comportement, vous pouvez avoir des comportements spécifiques liés à l'ID de l'appareil.

Dans Capgo, vous pouvez décider de contourner le comportement pour chaque ID de l'appareil.

Vous pouvez lier un ID de l'appareil à :

  • une version de bundle spécifique
  • un canal spécifique

Cela contournera toutes les paramètres effectués ci-dessus.

En savoir plus à ce sujet dans l'article ci-dessous.

Continuez de la même manière à partir de la page sur la façon dont fonctionnent les versions dans Capgo

Si vous utilisez La façon dont fonctionnent les versions dans Capgo pour planifier le travail de plugin natif, connectez-le à Répertoire de plugin Capgo pour le flux de travail du produit dans Répertoire de plugin Capgo Plugins Capacitor par Capgo pour les détails d'implémentation dans Plugins Capacitor par Capgo, Ajout ou Mise à Jour de Plugins pour le détail d'implémentation dans Ajout ou Mise à Jour de Plugins, Alternatives de Plugins d'Entreprise Ionic pour le flux de travail du produit dans Alternatives de Plugins d'Entreprise Ionic, et Capgo Builds Natives pour le flux de travail du produit dans Capgo Builds Natives.

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 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.