Démarrage
Copiez un prompt de configuration avec les étapes d'installation et la guide markdown complète pour ce plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-updater`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/updater/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Installation
Section intitulée « Installation »bun add @capgo/capacitor-updaterbunx cap syncyarn add @capgo/capacitor-updaterbunx cap syncpnpm add @capgo/capacitor-updaterbunx cap syncbun add @capgo/capacitor-updaterbunx cap syncDémarrage rapide
Section intitulée « Démarrage rapide »Pour la plupart des utilisateurs, nous recommandons de suivre le guide de démarrage rapide principal qui couvre à la fois l'installation du plugin et Capgo l'intégration cloud.
Ce guide de démarrage se concentre sur les détails techniques du plugin pour les utilisateurs avancés qui souhaitent comprendre les mécanismes sous-jacents ou mettre en œuvre des mises à jour auto-hébergées.
Vue d'ensemble
Section intitulée « Vue d'ensemble »Le plugin de mise à jour Capacitor permet des mises à jour hors ligne (OTA) pour vos applications Capacitor. Cela vous permet de pousser des mises à jour vers votre application sans passer par les examens des magasins d'applications.
Comment ça marche
Section intitulée « Comment ça marche »- Téléchargement de Bundle: Le plugin télécharge des mises à jour de bundles (fichiers ZIP contenant vos actifs web)
- Extraction: Les bundles sont extraits dans le stockage du dispositif
- Relance Chaude: L'application passe au nouveau bundle sans nécessiter un redémarrage
- Mode de Repli: Si une mise à jour échoue, l'application redevient la version fonctionnelle précédente
Modes d'Utilisation
Section intitulée « Modes d'Utilisation »1. Mode de Mise à Jour Automatique (Recommandé)
Section intitulée « 1. Mode de Mise à Jour Automatique (Recommandé) »La méthode la plus simple pour utiliser le plugin avec une gestion automatique des mises à jour :
import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Plugin handles everything automatically// Configure in capacitor.config.tsAjouter à votre capacitor.config.ts:
{ plugins: { CapacitorUpdater: { autoUpdate: true, updateUrl: 'https://your-update-server.com/api/updates' } }}2. Mode manuel
Section intitulée “2. Mode manuel”Pour un contrôle avancé du processus de mise à jour :
import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Download an updateconst bundle = await CapacitorUpdater.download({ url: 'https://your-server.com/updates/v1.0.1.zip', version: '1.0.1'});
// Set the bundle (will be used on next app start)await CapacitorUpdater.set({ id: bundle.id});
// Or reload immediatelyawait CapacitorUpdater.reload();Configuration de la plateforme
Section intitulée “Configuration de la plateforme”Aucune configuration supplémentaire requise. Le plugin fonctionne directement.
Android
Section intitulée “Android”Aucune configuration supplémentaire requise. Le plugin fonctionne directement.
Utilisation de base API
Section intitulée “Utilisation de base API”Télécharger une mise à jour
Section intitulée “Télécharger une mise à jour”import { CapacitorUpdater } from '@capgo/capacitor-updater';
const bundle = await CapacitorUpdater.download({ url: 'https://example.com/update.zip', version: '1.0.1'});
console.log('Downloaded bundle:', bundle.id);Activer le bundle
Section intitulée “Activer le bundle”// Set bundle to be used on next app startawait CapacitorUpdater.set({ id: bundle.id});Recharger avec Nouveau Bundle
Section intitulée “Recharger avec Nouveau Bundle”// Reload app immediately with new bundleawait CapacitorUpdater.reload();Liste des Bundles
Section intitulée “Liste des Bundles”const { bundles } = await CapacitorUpdater.list();console.log('Available bundles:', bundles);Supprimer un Bundle
Section intitulée “Supprimer un Bundle”await CapacitorUpdater.delete({ id: 'bundle-id'});Obtenir le Bundle Actuel
Section intitulée “Obtenir le Bundle Actuel”const { bundle } = await CapacitorUpdater.current();console.log('Current bundle:', bundle.version);Écouteurs d'événements
Section intitulée “Écouteurs d'événements”Écoutez les événements de mise à jour :
import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Listen for download progressCapacitorUpdater.addListener('download', (info) => { console.log('Download progress:', info.percent);});
// Listen for download completionCapacitorUpdater.addListener('downloadComplete', (bundle) => { console.log('Download complete:', bundle.version);});
// Listen for update failuresCapacitorUpdater.addListener('updateFailed', (error) => { console.error('Update failed:', error);});
// Listen for successful updatesCapacitorUpdater.addListener('updateAvailable', (info) => { console.log('Update available:', info.version);});Options de configuration
Section intitulée “Options de configuration”Configurez le plugin dans votre capacitor.config.ts:
{ plugins: { CapacitorUpdater: { // Auto-update settings autoUpdate: true, updateUrl: 'https://api.example.com/updates',
// Update behavior resetWhenUpdate: true, directUpdate: false,
// Version settings version: '1.0.0',
// Security allowModifyUrl: false,
// Stats collection statsUrl: 'https://api.example.com/stats',
// Channel (for Capgo cloud) defaultChannel: 'production' } }}Modèles d'intégration
Section intitulée “Modèles d'intégration”Avec Capgo Cloud
Section intitulée “Avec Capgo Cloud”La meilleure façon de commencer :
// Install the Capgo CLIbun add -g @capgo/cli
// Login to Capgonpx @capgo/cli login
// Upload your first bundlenpx @capgo/cli bundle upload
// The plugin auto-updates from Capgo cloudVoir le guide de démarrage rapide principal pour plus de détails.
Mises à jour auto-hébergées
Héberger votre propre serveur de mise à jour :Copier dans le presse-papier
// Configure your update endpoint{ plugins: { CapacitorUpdater: { autoUpdate: true, updateUrl: 'https://your-server.com/api/check-update' } }}Copier dans le presse-papier
{ "version": "1.0.1", "url": "https://your-server.com/updates/1.0.1.zip"}guide de démarrage rapide principal pour plus de détails. Mode Hébergé par l'Utilisateur pour plus de détails.
Flux de Mise à Jour Manuelle
Section intitulée “Flux de Mise à Jour Manuelle”Contrôle total sur les mises à jour :
import { CapacitorUpdater } from '@capgo/capacitor-updater';
async function checkAndUpdate() { // Check for updates from your server const response = await fetch('https://api.example.com/check-update'); const { version, url } = await response.json();
// Download the update const bundle = await CapacitorUpdater.download({ url, version });
// Notify bundle is ready await CapacitorUpdater.notifyAppReady();
// Set as next version await CapacitorUpdater.set({ id: bundle.id });
// Reload when ready await CapacitorUpdater.reload();}Meilleures Pratiques
Section intitulée “Meilleures Pratiques”- Appeler toujours
notifyAppReady()lorsque votre application se charge avec succès - Tester les mises à jour soigneusement avant de les envoyer en production
- Implémenter une gestion des erreurs appropriée pour les échecs de réseau
- Utilisez les numéros de version de manière cohérente
- Conservez les tailles des bundles petites pour des téléchargements plus rapides
- Surveillez les taux de réussite des mises à jour
Étapes suivantes
Section intitulée “Étapes suivantes”- Référence du plugin API - Documentation complète du API
- Paramètres du plugin - Toutes les options de configuration
- Événements - Événements de mise à jour disponibles
- Mode auto-hébergé - Exécutez votre propre serveur de mise à jour
- Développement Local - Tester les mises à jour localement
- Débogage - Guide de dépannage
Support
Section intitulée “Support”- Problèmes connus - Problèmes courants et solutions
- GitHub Discussions - Support communautaire
- Discord - Chat en temps réel