Qu'est-ce que Capacitor-updater ?
Capacitor-updater est une technologie qui permet de livrer instantanément des mises à jour et des améliorations aux utilisateurs finaux.
C'est particulièrement utile si vous souhaitez corriger des bugs critiques et déployer instantanément sans passer par la revue de l'App Store.
Considérez cela comme l'agilité du web : déployez des mises à jour dès qu'elles sont prêtes.
De plus, il permet d'effectuer des rollbacks si la nouvelle mise à jour fait planter l'app
Comment ça marche ?
Capgo synchronise le bundle JS de votre app avec le serveur Capgo. À chaque ouverture de l'app, elle vérifie auprès du serveur Capgo si une nouvelle mise à jour est disponible pour le bundle. Et bien sûr, il inclut de nombreuses configurations pour affiner l'expérience de vos utilisateurs.
J'utilise Capgo dans tous les projets que je compile. Cela me permet de passer moins de temps sur le processus de revue de l'App Store.
Vous pouvez en savoir plus à ce sujet ici.
Comprendre le versionnage sémantique avec Capgo
Capgo utilise le versionnage sémantique (semver) pour déterminer quand et comment les mises à jour doivent être appliquées à votre app. Cela garantit que vos utilisateurs ne reçoivent que des mises à jour compatibles et empêche le déploiement automatique de changements incompatibles.
Le versionnage sémantique suit le format MAJOR.MINOR.PATCH:
- MAJOR: Changements majeurs nécessitant une nouvelle release sur les stores natifs
- MINOR: Nouvelles fonctionnalités avec rétrocompatibilité
- PATCH: Corrections de bugs avec rétrocompatibilité
Par exemple, si votre application est en version 1.0.0 et que vous souhaitez passer à 1.0.1 (un patch), Capgo appliquera automatiquement cette mise à jour. En revanche, si vous voulez passer de 1.0.0 à 2.0.0 (une version majeure), cela nécessitera une nouvelle release sur les stores car cela implique des changements majeurs.
Les paramètres de canal de Capgo vous permettent de configurer les types de mises à jour appliquées automatiquement :
- Stratégie Major: Allows all updates (use with caution)
- Stratégie Minor: Allows minor and patch updates only
- Stratégie de patch: Autorise uniquement les mises à jour patch
- Stratégie de métadonnées: Nécessite de respecter les exigences de version minimale
You can test how different version combinations work with Capgo’s update logic using our outil Semver TesterCet outil vous aide à comprendre exactement quand les mises à jour seront appliquées selon la configuration de votre canal.
Y a-t-il des limitations ?
Même si cela semble idéal, il y a quelques points à garder à l'esprit. La première chose est que les mises à jour OTA ne fonctionnent qu'avec les bundles web. Vous pourriez penser que ce n'est pas une limitation majeure car, dans le JS de Capacitor, nous écrivons presque tout le code en JS, CSS et HTML. Bien que ce soit vrai, il existe toujours des modules natifs que nous installons dans notre app. Si un module modifie vos répertoires Android ou iOS, vous ne pouvez pas utiliser l'OTA pour mettre à jour votre app. C'est parce que le contenu de ces répertoires est utilisé pour compiler des binaires natifs, que l'OTA ne peut pas mettre à jour. Même une app native ne peut pas mettre à jour cette partie.
Mais vous pouvez configurer votre CI/CD pour gérer cette partie ; j'ai créé un tutoriel pour vous montrer comment faire ici pour iOS.
Configuration auto de Capgo
Il est temps de vous inscrire et de récupérer votre clé API pour envoyer votre première version ! Commencez par créer un compte Capgo.
Une fois connecté à Capgo, vous accéderez à une page d'onboarding

Suivez les étapes de la page d'onboarding pour ajouter votre première application.
Suivez le guide CLI
Depuis votre terminal, directement à la racine de votre application Capacitor, lancez :
npx @capgo/cli@latest init
Pour installer Capgo dans votre application Capacitor, le CLI vous guidera tout au long du processus de configuration avec Capgo.
Si vous préférez le faire manuellement, vous pouvez suivre les étapes ci-dessous.
Configuration manuelle de Capgo
Installer le plugin
Vous devriez obtenir ce code ajouté à votre application :
npm i @capgo/capacitor-updater && npx cap sync
Pour installer le plugin dans votre application Capacitor.
Ajoutez ensuite ce code à votre application pour notifier le plugin natif que le bundle JS est sain (si vous ne le faites pas, le plugin natif effectuera un rollback vers la version précédente) :
import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()
Cela indiquera au plugin natif que l'installation a réussi.
Puis effectuez un npm run build && npx cap copy pour mettre à jour votre application.
Connexion au CLOUD Capgo
Tout d'abord, utilisez la all clé API présente sur votre compte pour vous connecter avec le CLI :
npx @capgo/cli@latest login YOU_KEY
Ajoutez votre première app
Commençons par créer une app dans le Cloud Capgo avec la CLI.
npx @capgo/cli@latest app add
Cette commande utilisera toutes les variables définies dans le fichier de config Capacitor pour créer l'app.
Envoyez votre première version
Lancez la commande pour build votre code et l'envoyer vers Capgo avec :
npx @capgo/cli@latest bundle upload
Par défaut, le nom de la version sera celui de votre package.json fichier.
Vérifiez Capgo si le build est présent.
Vous pouvez même le tester avec mon app mobile sandbox.
Définir le canal par défaut
Une fois votre application envoyée vers Capgo, vous devez configurer votre canal default to let apps receive updates from Capgo.
npx @capgo/cli@latest channel set production -s default
Recevoir une Live Update sur un appareil
Pour que votre application reçoive une live update via Deploy, vous devrez lancer l'app sur un appareil ou un émulateur. Le plus simple est d'utiliser la commande suivante pour lancer votre app locale sur un émulateur ou un appareil connecté à votre ordinateur.
npx cap run [ios | android]
Ouvrez l'app, passez-l’en arrière-plan puis rouvrez-la ; vous devriez voir dans les logs que l'app a effectué la mise à jour.
Félicitations ! 🎉 Vous avez déployé avec succès votre première Live Update. Ce n'est que le début de ce que vous pouvez faire avec les Live Updates. Pour en savoir plus, consultez la documentation complète des Live Updates.
Si vous devez arrêter de recevoir les mises à jour en local, lancez cette commande
npx @capgo/cli@latest channel set
Continuer : Mettez à jour vos apps Capacitor en toute fluidité avec Capacitor-updater
Si vous utilisez Mettez à jour vos apps Capacitor en toute fluidité avec Capacitor-updater pour planifier la migration et les opérations d'entreprise, connectez-l’à Capgo Enterprise pour le workflow produit dans Capgo Enterprise, Alternatives aux plugins Ionic Enterprise pour le workflow produit dans les alternatives aux plugins Ionic Enterprise, Alternatives à Capgo pour le workflow produit dans les alternatives à Capgo Consulting Capgo pour le workflow produit dans le Consulting Capgo, et Capgo Support Premium pour le workflow produit dans Capgo Premium Support.