Passer au contenu principal
Guide de démarrage

Comment fonctionnent les versions dans Capgo

Comprenez comment Capgo gère les versions dans votre application Capacitor et utilisez-l’au mieux. Apprenez à comprendre les versions majeures, mineures et de maintenance.

Crédits de l'article

Martin Donadieu

Auteur

Valeria

Relecteur

Jordan

Éditeur

Comment fonctionnent les versions dans Capgo

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

  • Version native
  • Versions JavaScript
Le système d'Capacitor mise à jour

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

Le système de versionnage

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

Versions

Où Capgo trouve la version à comparer

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

IOS

Sur 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 contexte : fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `alternatives_cta_questions`). Page/zone : page de comparaison des alternatives de mise à jour en direct de Capacitor. Rôle : long paragraphe de marketing ou juridique. Vu dans : page alternatives.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `alternatives_cta_questions` (Questions de lien d'actions alternatives). | Fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `appflow_cta_questions`). Page/zone : page de comparaison/migration de Appflow. Rôle : long paragraphe de marketing ou juridique. Vu dans : page ionic-appflow.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `appflow_cta_questions` (Questions de lien d'actions Appflow). | Fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `capwesome_cta_questions`). Page/zone : page de comparaison de Capawesome. Rôle : long paragraphe de marketing ou juridique. Vu dans : page capwesome.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `capwesome_cta_questions` (Questions de lien d'actions Capawesome). | Fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `consulting_faq_subtitle`). Page/zone : page de services de conseil. Rôle : sous-titre ou slogan de section. Vu dans : page consulting.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `consulting_faq_subtitle` (Sous-titre des questions fréquentes de conseil). | Page/zone : page de comparaison/migration d'Appflow. Rôle : étiquette de navigation ou élément de navigation court. Vu dans : page ionic-appflow.astro, page ionic-enterprise-plugins.astro, page solutions/ionic-enterprise-plugins.astro. Clé de message `appflow_plugins_or` (Appflow Plugins ou). MARKETING_VERSION sous la clé : fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `alternatives_cta_questions`). Page/zone : page de comparaison des alternatives de mise à jour en direct de Capacitor. Rôle : long paragraphe de marketing ou juridique. Vu dans : page alternatives.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `alternatives_cta_questions` (Questions de lien d'actions alternatives). | Fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `appflow_cta_questions`). Page/zone : page de comparaison/migration de Appflow. Rôle : long paragraphe de marketing ou juridique. Vu dans : page ionic-appflow.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `appflow_cta_questions` (Questions de lien d'actions Appflow). | Fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `capwesome_cta_questions`). Page/zone : page de comparaison de Capawesome. Rôle : long paragraphe de marketing ou juridique. Vu dans : page capwesome.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `capwesome_cta_questions` (Questions de lien d'actions Capawesome). | Fragment de texte HTML d'une chaîne de dialogue Capgo plus longue (clé parente `consulting_faq_subtitle`). Page/zone : page de services de conseil. Rôle : sous-titre ou slogan de section. Vu dans : page consulting.astro. Conservez les termes de produit et de marque Capgo ainsi que les termes de développeur exactement. Clé de message `consulting_faq_subtitle` (Sous-titre des questions fréquentes de conseil). | Page/zone : page de comparaison/migration d'Appflow. Rôle : étiquette de navigation ou élément de navigation court. Vu dans : page ionic-appflow.astro, page ionic-enterprise-plugins.astro, page solutions/ionic-enterprise-plugins.astro. Clé de message `appflow_plugins_or` (Appflow Plugins ou). MARKETING_VERSION a été défini dans votre Info.plist dans votre fichier.

Android

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

JavaScript ( Capgo version de bundle )

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

Comportement par défaut

Voici comment le canal Capgo se comportera si vous n'avez pas modifié de paramètres.

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

When une installation fraîche de votre application Capacitor

Quand l'utilisateur a téléchargé votre application Ionic pour la première fois et ouvre l'application, elle contacte le serveur Capgo.

Actuellement, 4 résultats peuvent se produire :

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

Autres paramètres

Désactiver la mise à niveau automatique sous native

Si vous changez cette configuration en faux, 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.

Disable stratégie d'auto-mise à jour

Il existe plusieurs stratégies dont 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 à jour automatique 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 Le fichier (dans la clé version).

Après l'installation d'une version de votre application Ionic, cette version sera comparée à Capgo pour :

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

Avec certaines conditions de garde :

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

Mise à jour de l'App Store

Lorsque vous publiez votre application Capacitor 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 page 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 cela, vous pouvez avoir des comportements spécifiques supplémentaires liés à l'ID du dispositif.

In Capgo, vous pouvez décider de contourner le comportement pour chaque ID de dispositif.

Vous pouvez lier un ID de dispositif à :

  • une version spécifique du bundle
  • 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 que dans 'Comment fonctionnent les versions dans Capgo'

Si vous utilisez 'Comment fonctionnent les versions dans Capgo' pour planifier le travail de plugin natif, connectez-l’avec Capgo Répertoire des plugins pour le flux de travail du produit dans Capgo Répertoire des plugins, Capacitor Plugins by Capgo for the implementation detail in Capacitor Plugins by Capgo, Ajouter ou Mettre à Jour les Plugins pour les détails d'implémentation dans Ajouter ou Mettre à Jour les Plugins Alternatives aux Plugins Entreprise Ionic pour le flux de travail du produit dans Alternatives aux Plugins Entreprise Ionic, et Capgo Bâtiments Natives pour le flux de travail du produit dans Capgo Bâtiments Natives.

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

When a web-layer bug is live, ship the fix through Capgo instead of waiting days for app store approval. Users get the update in the background while native changes stay in the normal review path.

Lorsqu'un bug de la couche web est en direct, expédiez la correction par le biais de __CAPGO_KEEP_0__ au lieu de attendre des jours pour l'approbation de l'app store. Les utilisateurs reçoivent la mise à jour en arrière-plan tandis que les modifications natives restent dans la voie de revue normale.

Contexte : Page/zone : Copie de marketing du site web. Rôle : Phrase de copie de description ou de description de métadonnées. Vu dans : composant GetStarted.astro. Conservez les termes de produit/marque et les termes de développeur exactement. Clé de message `instant_updates_for_capacitor_apps_description` (Description des mises à jour instantanées pour les applications Capacitor).

Support humain de Martin

Capgo gives you the best insights you need to create a truly professional mobile app.