Passer à la navigation

Prise en main

GitHub

Vous pouvez utiliser notre configuration assistée par l'IA pour installer le plugin. Ajoutez les Capgo compétences à votre outil IA en utilisant la commande suivante :

Fenêtre de terminal
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-plugins

Ensuite, utilisez la prompt suivante :

Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-updater` plugin in my project.

Si vous préférez la configuration manuelle, installez le plugin en exécutant les commandes suivantes et suivez les instructions spécifiques à votre plateforme ci-dessous :

Fenêtre de terminal
bun add @capgo/capacitor-updater
bunx cap sync

Pour la plupart des utilisateurs, nous recommandons de suivre le guide de démarrage principal qui couvre à la fois l'installation du plugin et Capgo l'intégration cloud.

Ceci 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.

Le plugin de mise à jour Capacitor permet des mises à jour en 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.

  1. Téléchargement du Bundle: Le plugin télécharge les lots d'actualisation (fichiers ZIP contenant vos actifs web)
  2. Extraction: Les lots sont extraits sur le stockage du dispositif
  3. Hot Reload: L'application passe au nouveau lot sans nécessiter un redémarrage
  4. Fallback: Si une mise à jour échoue, l'application revient à la version fonctionnelle précédente

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.ts

Ajouter à votre capacitor.config.ts:

{
plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground',
updateUrl: 'https://your-update-server.com/api/updates'
}
}
}

Pour un contrôl’avancé du processus d'actualisation :

import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Download an update
const 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 immediately
await CapacitorUpdater.reload();

Aucune configuration supplémentaire requise. Le plugin fonctionne directement.

Aucune configuration supplémentaire requise. Le plugin fonctionne directement.

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);
// Set bundle to be used on next app start
await CapacitorUpdater.set({
id: bundle.id
});
// Reload app immediately with new bundle
await CapacitorUpdater.reload();
const { bundles } = await CapacitorUpdater.list();
console.log('Available bundles:', bundles);
await CapacitorUpdater.delete({
id: 'bundle-id'
});
const { bundle } = await CapacitorUpdater.current();
console.log('Current bundle:', bundle.version);

Écoutez les événements de mise à jour :

import { CapacitorUpdater } from '@capgo/capacitor-updater';
// Listen for download progress
CapacitorUpdater.addListener('download', (info) => {
console.log('Download progress:', info.percent);
});
// Listen for download completion
CapacitorUpdater.addListener('downloadComplete', (bundle) => {
console.log('Download complete:', bundle.version);
});
// Listen for update failures
CapacitorUpdater.addListener('updateFailed', (error) => {
console.error('Update failed:', error);
});
// Listen for successful updates
CapacitorUpdater.addListener('updateAvailable', (info) => {
console.log('Update available:', info.version);
});

Configurez le plug-in dans votre capacitor.config.ts:

{
plugins: {
CapacitorUpdater: {
// Auto-update settings
autoUpdate: 'atBackground',
updateUrl: 'https://api.example.com/updates',
// Update behavior
resetWhenUpdate: true,
// Version settings
version: '1.0.0',
// Security
allowModifyUrl: false,
// Stats collection
statsUrl: 'https://api.example.com/stats',
// Channel (for Capgo cloud)
defaultChannel: 'production'
}
}
}

La manière la plus simple de commencer :

// Install the Capgo CLI
bun add -g @capgo/cli
// Login to Capgo
npx @capgo/cli login
// Upload your first bundle
npx @capgo/cli bundle upload
// The plugin auto-updates from Capgo cloud

Voir le guide de démarrage rapide principal pour plus de détails.

Héberger votre propre serveur de mise à jour :

// Configure your update endpoint
{
plugins: {
CapacitorUpdater: {
autoUpdate: 'atBackground',
updateUrl: 'https://your-server.com/api/check-update'
}
}
}

Votre serveur doit retourner :

{
"version": "1.0.1",
"url": "https://your-server.com/updates/1.0.1.zip"
}

Voir Mode auto-hébergé pour plus de détails.

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();
}
  • Appelez toujours notifyAppReady() lorsque votre application se charge avec succès
  • Testez les mises à jour soigneusement avant de les envoyer en production
  • Implémentez une gestion des erreurs appropriée pour les échecs de réseau
  • Utilisez des numéros de version de manière cohérente
  • Conservez les tailles des bundles pour des téléchargements plus rapides
  • Surveillez les taux de réussite des mises à jour

Si vous utilisez Accueil pour planifier le travail de plugin natif, connectez-l’avec Utilisez @capgo/capacitor-mises-à-jour pour la capacité native dans Utilisez @capgo/capacitor-mises-à-jours Répertoire de plugin Capgo pour le flux de travail du produit dans Répertoire de plugin Capgo Plugins Capacitor par Capgo pour le détail d'implémentation dans Plugins Capacitor par Capgo Ajouter ou Mettre à jour des Plugins pour les détails d'implémentation dans l'ajout ou la mise à jour des plugins, et Alternatives de plugins Ionic Enterprise pour le flux de travail du produit dans Alternatives de plugins Ionic Enterprise.