Aller au contenu principal
Tutoriel

Comment garder les mises à jour Capgo légères et rapides

Un guide Capgo pratique pour des live updates plus légères et plus sûres : bundles delta, déploiement par canal, rafraîchissement des baselines natives, aperçus de PR et garde-fous de mise à jour directe.

Comment garder les mises à jour Capgo légères et rapides Capgo illustration du blog

La meilleure live update est celle que vos utilisateurs remarquent à peine.

Cela signifie généralement trois choses :

  1. Le téléchargement est léger.
  2. Le déploiement progressif est maîtrisé.
  3. La récupération est instantanée en cas de problème.

Les mêmes conseils pour « garder l’OTA léger » qui fonctionnent dans l’écosystème React Native s’appliquent aussi à Capgo. La différence, c’est que Capgo offre aux équipes Capacitor quelques leviers supplémentaires : Mises à jour delta, canaux, rollbacks automatiques, ciblage de version, et facultatif chiffrement de bout en bout.

Utilisés ensemble, ils permettent d’obtenir des payloads plus légers, des installations plus rapides et beaucoup moins de désordre opérationnel.

La légèreté compte, même si les MAU restent stables

Un détail utile spécifique à Capgo : Capgo MAU correspond en réalité au nombre d’appareils actifs mensuels ayant contacté le service de mise à jour au cours des 30 derniers jours.

Alléger un bundle n’est donc pas principalement une astuce pour réduire le comptage des MAU. C’est important car cela améliore les aspects que les utilisateurs et les équipes ressentent réellement :

  • Téléchargements plus rapides en 4G ou sur un Wi-Fi faible
  • Meilleure expérience avec mises à jour directes
  • Moins de bande passante gaspillée sur les releases échouées ou en rollback
  • Moindre impact en cas de test ou de staging d’une release

Lean updates are really about speed, safety, and operational discipline.

1. Privilégier les mises à jour Delta

If you do only one thing, do this.

de Capgo Mises à jour delta n'envoyez que les fichiers modifiés entre deux versions au lieu de retélécharger l'intégralité du bundle web. C'est le gain de performance le plus important pour vos mises à jour OTA régulières.

bun run build
bunx @capgo/cli@latest bundle upload --channel staging --delta

Une fois votre QA terminée :

bunx @capgo/cli@latest bundle upload --channel production --delta

Si vous voulez garder une CI stricte, utilisez --delta-only pour que personne ne revienne par erreur aux uploads de bundles complets :

bunx @capgo/cli@latest bundle upload --channel production --delta-only

Only use --delta-only lorsque votre parc de production prend en charge les Delta updates. Avec des versions de plugins mixtes, les appareils plus anciens qui ne prennent pas en charge la livraison delta basée sur le manifest ne pourront pas télécharger cette mise à jour.

C'est d'autant plus important si vous utilisez directUpdate, car le délai entre la « mise à jour trouvée » et le « rechargement de l'app » devient visible pour l'utilisateur.

2. Traitez les assets comme des assets, pas comme du JavaScript superflu

Les assets volumineux alourdissent discrètement les bundles OTA.

Quelques règles pratiques :

  • N'intégrez pas de grosses images ou médias directement dans le JavaScript quand un simple fichier asset suffit.
  • Gardez le contenu qui change fréquemment sur votre propre CDN ou API s'il n'a pas besoin de figurer dans le bundle de l'app livrée.
  • Faites attention aux images marketing, aux vidéos d'onboarding et aux assets de campagnes ponctuelles remplacés à chaque release.
  • Laissez les assets stables stables. Grâce aux Delta updates, les fichiers inchangés sont réutilisés au lieu d’être téléchargés à nouveau.

C’est l’un des moyens les plus simples de garder Capgo rapide à mesure que votre app grandit. Le pire scénario : un minuscule correctif d’interface qui oblige les utilisateurs à télécharger un tas de médias sans rapport.

3. Réservez les releases natives aux vrais changements natifs

Capgo met à jour la couche web : HTML, CSS, JavaScript et assets chargés à l’exécution.

Ce n’est pas le bon canal pour :

  • les nouveaux plugins natifs,
  • les modifications de permissions,
  • capacitor.config.ts modifications,
  • tout ce qui modifie l’état du projet natif iOS ou Android.

Cette frontière compte aussi pour les performances. Si vous continuez à faire passer des changements structurels majeurs par la voie OTA, votre stratégie de mise à jour devient plus lourde et plus risquée au fil du temps.

Utilisez délibérément deux voies de release :

Voie native

Pour les modifications de plugins, de permissions et de configuration native :

bun run build
bunx cap sync

Publiez ensuite une release store classique.

Voie Capgo

Pour itérer en toute sécurité sur la couche web :

bun run build
bunx @capgo/cli@latest bundle upload --channel production --delta

Rafraîchissez aussi régulièrement votre baseline native si vous avez récemment ajouté beaucoup d’assets de longue durée. Un nouveau build store intègre cette nouvelle baseline, ce qui garde les futurs diffs Capgo plus petits.

4. Utilisez des canaux pour limiter la taille du déploiement

Une mise à jour « lean » ne se résume pas aux mégaoctets. Elle dépend aussi du nombre d’appareils qui la reçoivent avant que vous ne sachiez qu’elle est bonne.

de Capgo système de canaux est la façon la plus simple de le contrôler :

  • staging pour la QA
  • beta pour les testeurs invités
  • production pour tout le monde
  • hotfix pour la récupération d'urgence

Un flux simple ressemble à ceci :

  1. Envoyer vers staging.
  2. Valider sur de vrais appareils.
  3. Déployez progressivement, que ce soit via des canaux contrôlés ou un déploiement par pourcentage.
  4. Rollback immédiat si la santé se dégrade.

Si votre app a plusieurs baselines natives en production, associez les canaux au ciblage de version. Cela évite aux anciens binaires de recevoir des bundles incompatibles ou trop lourds.

Pour les équipes qui veulent des cycles de revue encore plus serrés, Capgo fonctionne aussi très bien pour les previews de PRCela permet aux équipes produit, QA et aux parties prenantes de tester les changements JS sans attendre de nouveaux builds internes TestFlight ou Play.

5. Si vous activez les mises à jour directes, optimisez le démarrage à fond

Plus vous voulez qu'une mise à jour soit appliquée rapidement, plus votre démarrage doit être rigoureux.

de Capgo comportement de mise à jour la doc recommande explicitement d'associer directUpdate avec les mises à jour Delta. C'est le bon choix par défaut.

Le second garde-fou est notifyAppReady().

import { CapacitorUpdater } from '@capgo/capacitor-updater'

CapacitorUpdater.notifyAppReady()

Si votre application ne signale pas qu'elle est prête dans les 10 secondes par défaut notifyAppReady() fenêtre, ou dans la durée que appReadyTimeout vous avez définie dans votre config Capacitor, Capgo peut marquer ce bundle comme invalide et restaurer la dernière version valide. C'est le comportement de rollback que vous voulez en production, mais cela implique aussi de soigner le démarrage :

  • Appelez notifyAppReady() au bon endroit
  • Évitez les tâches de démarrage lentes sur le chemin critique
  • Sauvegardez et restaurez soigneusement l'état de l'app en cas de rechargement immédiat
  • Testez réseau instable et appareils peu performants avant un déploiement général

Si vous ne l'avez pas relu récemment, le guide notifyAppReady mérite une relecture.

6. Utilisez des canaux de mise à jour internes plutôt que des rebuilds natifs inutiles

Beaucoup d'équipes mobiles perdent du temps à compiler des binaires pour des changements purement web.

Si le changement concerne :

  • le texte,
  • les finitions UI,
  • parcours d'onboarding,
  • logique de l'écran de tarifs,
  • branchement des analytics,
  • feature flags,
  • rendu du prompt ou de la réponse API,

puis une mise à jour Capgo est souvent l’artefact de revue le plus rapide.

Cela signifie moins de rebuilds natifs, moins de cycles TestFlight et une boucle de feedback plus resserrée pour l'équipe. C'est l'un des avantages les plus sous-exploités de Capgo : vous pouvez faire passer plus de travail de revue et de QA par l'OTA sans casser la frontière native/web.

Notre guide sur le staging avec un seul ID d’application mobile présente une méthode pratique pour que cela reste propre au fil du temps.

7. Ne pas mélanger le lean et le secret

Les petits bundles et les bundles sécurisés résolvent des problèmes différents.

Les canaux contrôlent l’éligibilité. Ils ne rendent pas un bundle confidentiel à eux seuls.

Si vous avez besoin de garanties de livraison renforcées :

Cela ne rend pas la taille de la mise à jour sans importance. Cela signifie simplement qu’il faut optimiser les deux dimensions :

  • légère pour la vitesse,
  • chiffrée pour le contrôle de la livraison,
  • canaux pour le contrôle du déploiement,
  • rollback pour la récupération.

Un workflow pratique de type « lean Capgo »

Si vous voulez un modèl’opérationnel simple par défaut, utilisez ceci :

  1. Gardez les canaux de release natifs et OTA séparés.
  2. Envoyez les modifications JS avec --delta par défaut.
  3. Utiliser staging et beta des canaux avant production.
  4. Regarder statistiques et logs de mise à jour après le déploiement, pas seulement avant.
  5. Transformez les PR en previews installables quand un build natif n'est pas nécessaire.
  6. Évitez de mettre les médias volumineux et fréquemment modifiés dans le bundle quand c'est possible.
  7. Rafraîchissez la baseline native après une forte augmentation des assets ou des modifications natives.
  8. Considérez notifyAppReady() et le comportement de rollback relève de l’ingénierie de release, pas du setup.

Cette combinaison reste rapide bien plus longtemps que l'approche courante du « simple upload de ce qui a changé ».

Pour conclure

Pour les équipes Capgo, « léger et rapide » n'est pas seulement une question de taille de bundle.

C'est un problème de conception de release.

Utilisez les Delta updates pour la taille de la charge utile, les canaux pour l'ampleur du déploiement, et les rollbacks pour limiter l'impact des échecs. En envisageant l'OTA ainsi, vos mises à jour restent rapides même quand l'app, l'équipe et la base d'utilisateurs grossissent.

Continuer avec « Comment garder les mises à jour Capgo légères et rapides »

Si vous utilisez Comment garder les mises à jour Capgo légères et rapides pour planifier le routage des canaux et le déploiement progressif, connectez-l’avec Canaux pour les détails d'implémentation des canaux, Canaux pour les détails d'implémentation des canaux, Canaux pour les détails d'implémentation des canaux, Solution de bêta-test pour le workflow produit de la Solution de bêta-test, et Solution de ciblage de version pour le workflow produit de la Solution de ciblage de version.

Live updates pour les apps Capacitor

Lorsqu'un bug de la couche web est en ligne, déployez le correctif via Capgo au lieu d'attendre des jours l'approbation des stores. Les utilisateurs reçoivent la mise à jour en arrière-plan, tandis que les changements natifs suivent le circuit de validation habituel.

Les derniers articles du blog

Capgo vous offre les meilleures informations pour créer une application mobile vraiment professionnelle.