Qu'est-ce que Capacitor-updater ?
Capacitor-updater est une technologie qui permet de livrer instantanément aux utilisateurs finaux des mises à jour et des améliorations de l'app.
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.
Voyez-y l'agilité du web : charger des mises à jour en sideload dès qu'elles sont disponibles.
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 du bundle est disponible. Et bien sûr, il embarque de nombreuses options de configuration 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:
- MAJEUR: Changements incompatibles nécessitant une release native sur les stores
- MINEURE : nouvelles fonctionnalités rétrocompatibles
- PATCH : correctifs de bugs rétrocompatibles
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 souhaitez passer de 1.0.0 vers 2.0.0 (une version majeure), cela nécessiterait une release sur les stores, car cela indique des changements cassants.
Les paramètres de canal de Capgo vous permettent de configurer les types de mises à jour appliqués automatiquement :
- Stratégie majeure: Allows all updates (use with caution)
- Stratégie mineure: Allows minor and patch updates only
- Stratégie de correctif: N'autorise que les mises à jour de correctif
- Stratégie de métadonnées: Exige que les exigences de version minimale soient remplies
You can test how different version combinations work with Capgo’s update logic using our outil Semver Tester. Cet outil vous aide à comprendre exactement quand les mises à jour seront appliquées, en fonction de votre configuration de canal.
Y a-t-il des limitations ?
Aussi séduisant que cela puisse paraître, il y a quelques points à garder à l'esprit. La première chose, c'est que les mises à jour OTA ne fonctionnent qu'avec des bundles web. Vous pourriez penser que ce n'est pas vraiment une grosse limitation, car dans Capacitor JS, nous écrivons presque tout le code en JS, CSS et HTML. Même si c'est vrai, il reste des modules natifs que nous installons dans notre application. Si un module modifie vos répertoires android ou iOS, vous ne pouvez pas utiliser OTA pour mettre à jour votre application. C'est parce que le contenu de ces répertoires sert à compiler les binaires natifs, que OTA ne peut pas mettre à jour. Même une application native ne peut pas mettre à jour cette partie.
Mais vous pouvez configurer votre CI/CD pour gérer cette partie ; j'ai fait 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 les indications de 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 dans le processus de configuration de votre application 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 vous retrouver avec 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 indiquer au plugin natif que le bundle JS est fonctionnel (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 faites un npm run build && npx cap copy pour mettre à jour votre application.
Connectez-vous à Capgo Cloud
Tout d'abord, utilisez la all clé API présente dans votre compte pour vous connecter avec le CLI :
npx @capgo/cli@latest login YOU_KEY
Ajouter votre première app
Commençons par créer une application dans le cloud Capgo avec 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.
Envoyer votre première version
Lancez la commande pour compiler votre code et l'envoyer sur 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 dans 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 que vous avez envoyé votre application à Capgo, vous devez définir votre canal default to let apps receive updates from Capgo.
npx @capgo/cli@latest channel set production -s default
Recevoir un Live Update sur un appareil
Pour que votre application reçoive un live update depuis 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 en local 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 le guide complet Docs Live Updates.
Si vous devez arrêter de recevoir la mise à jour en local, exécutez cette commande
npx @capgo/cli@latest channel set
Continuez avec la mise à jour fluide de vos apps Capacitor via Capacitor-updater
Si vous utilisez Mettez à jour vos apps Capacitor sans friction grâce à Capacitor-updater pour planifier la migration et les opérations d'entreprise, connectez-l’à Capgo Entreprise 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, Conseil Capgo pour le workflow produit dans Capgo Consulting, et Support Premium Capgo pour le workflow produit dans Capgo Premium Support.