Capgo utilise 2 variables principales pour gérer les versions dans votre Capacitor application :
- Version native
- Versions JavaScript
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'actualisation de 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.jsonle fichier les documents 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 : Paragraphe de marketing ou juridique long. Voir 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 prise de décision 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 : Paragraphe de marketing ou juridique long. Voir 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 prise de décision 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 : Paragraphe de marketing ou juridique long. Voir 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 prise de décision Capwesome). | 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. Voir 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 FAQ des services de conseil). | Page/zone : page de comparaison/migration de Appflow. Rôle : Étiquette de navigation ou élément de navigation court. Voir 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é MARKETING_VERSION si Info.plist était défini dans votre fichier
Android
Sur Android, la variable est définie dans votre projet ici android/app/build.gradle Sous la clé defaultConfig.versionName
JavaScript ( Capgo version du 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é de paramètres.
C'est ce comportement qui 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 a téléchargé votre application Ionic pour la première fois et ouvre l'application, elle se connecte au serveur Capgo.
Actuellement, 4 sortes de résultats peuvent se produire :
- La version du bundle natif (1.2.3) est inférieure à la version Capgo du bundle (1.2.4), Capgo envoie le bundle à l'utilisateur.
- La version du bundle natif (1.2.3) est égale à la version Capgo du bundle (1.2.3), Capgo envoie « pas besoin de mettre à jour ».
- La version du bundle natif (1.2.4) est supérieure à la version Capgo du bundle (1.2.3), Capgo envoie « pas besoin de mettre à jour ».
- La version du bundle natif (1.2.3) est MAJOR inférieure à la version Capgo du bundle (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 la source la plus 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.
Désactiver la stratégie de mise à niveau automatique
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 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 donc son bundle à l'utilisateur.
Sous certaines conditions de garde :
- Si la version du bundle natif est supérieure à la version de Capgo, la
Disable auto downgrade under nativecondition est appliquée. - Si la version du bundle natif est MAJOR inférieure à la version de Capgo, la
Disable auto upgrade above majorLa condition est appliquée.
mise à jour de l'App Store
Lorsque vous publiez votre application JS Capacitor 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.
D'autres paramètres
Après tout cela, vous pouvez avoir des comportements spécifiques supplémentaires liés à l'ID du dispositif.
Dans Capgo, vous pouvez décider de surcharger le comportement pour chaque ID de dispositif.
Vous pouvez lier un ID de dispositif à :
- 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 How version work in Capgo
Si vous utilisez How version work in Capgo pour planifier le travail de plugin natif, connectez-l’avec Capgo Répertoire de plugin pour le flux de travail du produit dans Capgo Répertoire de plugin Capacitor Plugins par Capgo pour les détails d'implémentation dans Capacitor Plugins par Capgo Ajouter ou Mettre à Jour les Plugins pour les détails d'implémentation dans Ajouter ou Mettre à Jour les Plugins, Alternatives de Plugins Entreprise Ionic pour le flux de travail du produit dans Alternatives de Plugins Entreprise Ionic, et Capgo Bâtiments Natives pour le flux de travail du produit dans Capgo Bâtiments Natives.