Passer directement au contenu principal

Comment utiliser la versionnement sémantique avec les mises à jour Capgo OTA

Découvrez comment simplifier les mises à jour et le contrôle de version de vos applications en utilisant la versionnement sémantique avec les mises à jour OTA de Capgo pour les applications Capacitor.

Martin Donadieu

Martin Donadieu

Spécialiste du contenu

Comment utiliser la versionnement sémantique avec les mises à jour Capgo OTA

Vous souhaitez simplifier les mises à jour de vos applications Mise à jour de votre application et de contrôle de version ? La versionnement sémantique (SemVer) associé à Capgoles mises à jour Over-The-Air (OTA) de ‘__CAPGO_KEEP_0__’ rendent la gestion Capacitor des applications plus facile et plus rapide. Voici comment :

  • Les bases de la versionnement sémantique : Les versions utilisent la forme MAJOR.MINOR.PATCH:

    • MAJOR : Pour les changements de rupture.
    • MINOR : For de nouvelles fonctionnalités qui sont compatibles en arrière.
    • PATCH : Pour les corrections de bogues.
  • Pourquoi Utiliser SemVer avec Capgo?

    • Une communication claire sur les mises à jour.
    • Gestion de version plus intelligente.
    • Éviter les conflits de dépendances.
    • Planification de la mise en production organisée.
  • Capgo Configuration Étapes :

    1. Installez le plugin de mise à jour de Capgo.
    2. Configurez la version de votre application dans capacitor.config.json et d'autres fichiers.
    3. Initialisez avec votre clé API.
    4. Utilisez Capgo CLI pour packager et télécharger les mises à jour.
  • Gestion des Versions et des Canaux:

    • Utilisez des canaux séparés (par exemple, « beta » pour les tests, « production » pour les versions stables).
    • Contrôlez les politiques de mise à jour (mise à jour automatique des correctifs, approbation manuelle pour les changements majeurs).
    • Options de reversion pour les mises à jour échouées.
  • Processus de déploiement :

    • Mettez à jour les numéros de version en suivant les règles de SemVer.
    • Testez soigneusement avant de déployer.
    • Utilisez les commandes CLI pour télécharger et distribuer les mises à jour.

Capgo s'assure que les mises à jour atteignent les utilisateurs rapidement et de manière fiable, avec des outils pour gérer les interruptions et maintenir la stabilité. Parfait pour les équipes utilisant les workflows CI/CD pour automatiser les mises à jour.

Conseil Rapide : Testez toujours les mises à jour et utilisez les canaux pour gérer les déploiements étalés efficacement.

Numérotation Sémantique | Améliorez votre niveau

Capgo Guide de configuration

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

Voici comment configurer Capgo pour gérer les mises à jour OTA et le contrôle de version avec facilité.

Étapes d'initialisation

Commencez par installer le Capgo plugin de mise à jour:

npm install @capgo/capacitor-updater  
npx cap sync

Assurez-vous que votre capacitor.config.json fichier utilise une version sémantique :

{ 
  "appId": "com.example.app", 
  "appName": "My App", 
  "version": "1.0.0" 
}

Pour les anciens projets, mettez à jour les détails de version dans les emplacements suivants :

  • package.json (cherchez le version champ)
  • android/app/build.gradle (mettez à jour versionName)
  • ios/App/App.xcodeproj/project.pbxproj (mettez à jour CURRENT_PROJECT_VERSION)

Une fois configuré, initialisez Capgo avec votre clé API :

npx @capgo/cli@latest init YOUR_API_KEY

Tableau de référence rapide :

Phase de configuration Action sur la clé Étape de vérification
Installation Installer le plugin et synchroniser Vérifier package.json
Configuration Définir les numéros de version Vérifier dans tous les fichiers
Initialisation Se connecter avec la clé API Tester l'état de la connexion
Construction Créer le bundle initial Confirmation de l'upload réussi

Intégration de Contrôle de Version

Capgo fonctionne bien avec les plateformes CI/CD, ce qui rend les mises à jour automatiques simples. Les plateformes prises en charge incluent :

Si vous travaillez sur un développement local, vous pouvez désactiver les mises à jour automatiques en ajoutant cela à votre configuration :

{ 
  "plugins": { 
    "CapacitorUpdater": { 
      "autoUpdate": false 
    } 
  } 
}

Cela s'assure que Capgo ne surécrira pas vos modifications locales. Une fois votre configuration prête, téléchargez votre première version :

npx @capgo/cli@latest bundle upload  
npx @capgo/cli@latest channel set production -s default

Finalement, informez le plugin natif de l'état du bundle dans votre fichier principal d'application :

import { CapacitorUpdater } from '@capgo/capacitor-updater';  
CapacitorUpdater.notifyAppReady();

Cette configuration garantit que votre application est prête pour des déploiements OTA lisses et une gestion de version.

Utilisation de la versionnement sémantique avec Capgo

Gestion de la version du numéro

Capgo utilise la versionnement sémantique (SemVer) pour gérer les versions des applications, formatées comme MAJOR.MINOR.PATCHVoici comment cela fonctionne :

  • Version majeure (X.0.0): Augmentez le nombre MAJOR pour les changements qui brisent la compatibilité.
  • Version mineure (1.X.0): Augmentez le nombre MINOR pour de nouvelles fonctionnalités qui restent compatibles.
  • Version de correction (1.0.X): Augmentez le numéro PATCH pour les correctifs qui ne touchent pas la compatibilité.
Type de version Quand incrémenter Comportement de mise à jour automatique
Majeur (X.0.0) Pour des changements de rupture API Exige une approbation manuelle
Mineur (1.X.0) Pour de nouvelles fonctionnalités Configurable dans Capgo
Patch (1.0.X) Pour les correctifs Généralement automatique

En suivant les règles de SemVer, vous pouvez simplifier la gestion des versions et vous assurer d'une mise à jour plus fluide à travers vos canaux de déploiement.

Lignes directrices de contrôle de version

Capgo vous permet de gérer efficacement les déploiements en configurant des canaux distincts pour différentes étapes de votre workflow.

  • Gestion de version basée sur les canaux: Organisez votre processus de déploiement en créant des canaux séparés pour les tests et la production. Par exemple :

    • Utilisez un « canal bêta » (par exemple, 1.2.0-bêta) pour tester de nouvelles fonctionnalités.
    • Conservez un « canal de production » (par exemple, 1.2.0) pour les versions stables.
    • Ajoutez des canaux spécifiques aux plateformes (par exemple, « ios-hotfix » avec la version 1.2.1) lorsque vous abordez des problèmes spécifiques aux plateformes.
  • Configuration de la politique de mise à jour: Contrôlez comment les mises à jour sont appliquées à l'aide des options de configuration de Capgo . Par exemple :

    {
      "plugins": {
        "CapacitorUpdater": {
          "disableAutoUpdate": "minor"
        }
      }
    }

    Cette configuration garantit que les utilisateurs reçoivent automatiquement les mises à jour de correctif, tandis que les mises à jour mineures et majeures nécessitent une approbation manuelle.

  • Stratégie de Reversionnement de Version: Utilisez des identifiants de version préalables pour maintenir des options de reversion claires. Cette approche vous permet de revenir à une version précédente si des problèmes se produisent, tout en maintenant la versionnage cohérent à travers tous les canaux.

Ces meilleures pratiques facilitent la gestion des mises à jour, le test de nouvelles fonctionnalités et la maintenance de la stabilité dans le processus de déploiement de votre application.

sbb-itb-f9944d2

Déploiement d'Actualisation OTA

Une fois votre configuration de gestion de version prête, suivez ces étapes pour déployer des actualisations OTA de manière efficace.

Préparation de l'Actualisation

Commencez par mettre à jour la version dans package.json et capacitor.config.json. Assurez-vous que la version suit le format SemVer (MAJOR.MINOR.PATCH) :

  • Corrections de bugs: Augmentez le numéro de PATCH (par exemple, 1.0.1 → 1.0.2)
  • Nouvelle fonctionnalité : Augmentez le numéro MINOR (par exemple, 1.0.0 → 1.1.0)
  • Changement majeur : Augmentez le numéro MAJOR (par exemple, 1.0.0 → 2.0.0)

Testez soigneusement votre build et confirmez que l'application se connecte au serveur en utilisant notifyAppReady.

Ensuite, déterminez votre stratégie d'actualisation. Vous pouvez choisir parmi :

  • Mise à jour automatique : Appliquez automatiquement les exigences de version minimale.
  • Contrôle Manuel: Spécifiez les exigences de version exactes pour les mises à jour.
  • Basé sur le Canal : Utilisez les canaux pour les tests et les déploiements étalés.

Capgo CLI Commandes de Mise à Jour

Utilisez Capgo’s CLI pour déployer votre mise à jour avec facilité. Voici comment :

# Initialize Capgo in your project
npx @capgo/cli@latest init [apikey]

# Upload your update bundle
npx @capgo/cli bundle upload [appId]

# Add a new distribution channel
npx @capgo/cli channel add [channelName] [appId]

Capgo garantit un déploiement sécurisé avec une encryption de bout en bout et une gestion des clés sûre.

“@Capgo est une façon intelligente de faire des pushs chauds de code (et pas pour tout l'argent du monde comme avec @AppFlow) 🙂”

Une fois déployée, vous pouvez surveiller les mises à jour à travers le tableau de bord de Capgo. Les mises à jour atteignent généralement les utilisateurs dans les minutes qui suivent leur ouverture de l'application. Le processus fonctionne comme suit :

  • L'application vérifie les mises à jour.
  • Télécharge la mise à jour en arrière-plan.
  • Marque la nouvelle version comme active lorsque l'utilisateur quitte l'application.
  • Appliquez l'actualisation lors du prochain lancement.

Pour les déploiements au niveau entreprise, vous pourriez vouloir intégrer l'automatisation de CI/CD.

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

Résolution de problèmes et conseils

Problèmes de gestion de version

La gestion de la versionnement semantique dans Capgo peut parfois compliquer les déploiements d'actualisation. Pour éviter de surécrire votre travail de développement, configurez les éléments suivants dans votre capacitor.config.json fichier :

{ 
  "plugins": { 
    "CapacitorUpdater": { 
      "autoUpdate": false 
    } 
  } 
}

Si une mise à jour échoue, voici ce que vous pouvez faire :

  • Définissez autoUpdate sur false pendant le développement.
  • Désinstallez l'application.
  • Réinstallez-le avec la version corrigée.
  • Réactivez les mises à jour automatiques une fois tout stable.

Pour les mises à jour de version majeure, utilisez la disableAutoUpdateBreaking flag et écoutez l'événement majorAvailable pour gérer les mises à jour de manière appropriée :

CapacitorUpdater.addListener('majorAvailable', (info) => {
  console.log(`Major update available: ${info.version}`);
  // Add your update prompt logic here
});

En combinant ces configurations avec de bonnes pratiques d'équipe, vous pouvez maintenir la cohérence de la version et réduire les erreurs.

Contrôle de version d'équipe

Une fois les mises à jour individuelles gérées, il est crucial pour les équipes d'établir de solides pratiques de contrôle de version.

« Tester chaque changement avant de le fusionner avec le dépôt principal renforcera la stabilité et évitera des erreurs coûteuses » [4]

Certaines méthodes pour garantir la cohérence :

  • Définissez une branche comme le dépôt principal agir comme source de vérité.
  • Utilisez des canaux séparés Capgo pour les environnements de développement et de production.
  • Automatisez les téléchargements de versions via les pipelines CI/CD.
  • Documentez toutes les code modifications avec des messages de commit clairs et détaillés.

Pour les équipes plus importantes, la matrice de gestion de version suivante peut aider à organiser les mises à jour :

Environnement Canal Mise à jour automatique Motif de version
Développement dev Désactivé 0.x.x
Étape de développement bêta Activé x.x.x-bêta
Production stable Activé x.x.x

Étapes de récupération de mise à jour

Même avec des précautions, les mises à jour peuvent échouer. Si cela se produit, suivez ces étapes de récupération :

  1. Revenir à un bundle stable précédent.
  2. Augmentez les numéros de version pour tout nouveau correctif (note : les numéros de version ne peuvent pas être réutilisés après suppression) [2].
  3. Vérifiez les mises à jour pendant le démarrage de l'application pour vous assurer qu'elles fonctionnent comme prévu.

L'Capgo's mise à jour est conçue pour gérer les interruptions. Par exemple, si le serveur est inaccessible ou une mise à jour est supprimée, l'application continue à fonctionner normalement [3]En outre, les requêtes de réseau échouées sont automatiquement réessayées lors du lancement de l'application suivant [3]Cette résilience intégrée minimise les temps d'arrêt et assure des opérations plus fluides.

Résumé

La versionnement semantique, combinée à Capgo, a rendu les mises à jour OTA pour les applications Capacitor plus efficaces. Avec 947,6 millions de mises à jour délivrées et 1 400 applications de production utilisant ce système [1], les processus de déploiement ont été 81 % plus efficaces [1]Cet ensemble permet aux développeurs de pousser des mises à jour rapidement et de manière contrôlée, en évitant les retards des magasins d'applications.

Ici ce que disent les développeurs :

“Nous avons déployé les mises à jour OTA de Capgo en production pour notre base d'utilisateurs de +5000. Nous observons une opération très fluide presque tous nos utilisateurs sont à jour dans les minutes qui suivent la mise à jour OTA déployée sur @Capgo.” - colenso [1]

Le système de versionnement MAJOR.MINOR.PATCH facilite la communication des changements de rupture, des nouvelles fonctionnalités et des correctifs de bogues [5]. Cela est particulièrement utile pour les équipes gérant plusieurs releases chaque semaine à travers la plateforme de Capgo.

Capgo’s solution chiffrée, intégrée avec les outils CI/CD, est également abordable - en réduisant les coûts de jusqu'à 26 100 $ sur cinq ans [1]. Ses canaux personnalisables assurent que les mises à jour atteignent les bons utilisateurs au bon moment.

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

Continuez à partir de Comment utiliser la versionnement semantique avec les mises à jour OTA de Capgo

Si vous utilisez Comment utiliser la versionnement semantique avec les mises à jour OTA de Capgo pour planifier le rollback et le contrôle de version, connectez-le avec Rollbacks pour les détails d'implémentation dans Rollbacks, Version Targeting pour les détails d'implémentation dans Version Targeting, Update Behavior pour les détails d'implémentation dans Update Behavior, bundle pour les détails d'implémentation dans bundle, et Capgo Mises à jour en temps réel pour le flux de travail du produit dans Capgo Mises à jour en temps réel.

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

Lorsqu'un bug de layer web est en ligne, expédiez la correction par le biais de Capgo au lieu d'attendre des jours pour l'approbation des magasins 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.

Démarrer maintenant

Dernières actualités de notre blog

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