Aller directement au contenu

Migrer depuis Capawesome Cloud vers Capgo

⚡️ Capgo automatise les canaux, la mise à jour des paquets, les retours en arrière, les analyses et CLI les téléchargements natifs. Utilisez ce guide pour effectuer les étapes minimales requises pour migrer et, si nécessaire, recréer tout comportement personnalisé dont vous avez encore besoin.

  1. Réunissez votre configuration Cloud Capawesome existante (ID d'application, canaux, clés de signature, CLI jetons) afin que vous puissiez l'archiver ou l'auditer ultérieurement.
  2. Installez le Capgo plugin, supprimez le Capawesome SDK, et appelez CapacitorUpdater.notifyAppReady().
  3. Configurez les comportements facultatifs (téléchargements manuels, mise en cache des paquets, rechargements) si vous vous appuyez sur ces flux aujourd'hui.

Avec Capgo vous n'avez besoin que d'installer notre plugin et d'appeler CapacitorUpdater.notifyAppReady()Tout le reste—canaux, mise à jour des paquets, retours en arrière, analyses et CLI automatisation—est géré nativement. Les sections ci-dessous décrivent chaque tâche directement.

  • Assurez-vous que votre projet utilise déjà Capacitor 5 ou une version ultérieure.
  • Installez le Capgo CLI (npm install -g @capgo/cli) si vous prévoyez de pousser des bundles à partir de CI/CD.

Étape 1 – Installez Capgo et supprimez le SDK de Capawesome

Section intitulée « Étape 1 – Installez Capgo et supprimez le SDK de Capawesome »
Fenêtre de terminal
npm uninstall @capawesome/capacitor-live-update
npm install @capgo/capacitor-updater
npx cap sync

C'est la seule substitution obligatoire. Le code natif de Capgo est livré avec le plugin ; aucune aide JavaScript supplémentaire n'est requise.

La configuration précédente nécessitait de mapper des dizaines d'options en capacitor.config Capgo reconnaît automatiquement votre projet, donc la configuration minimale ressemble à ceci :

capacitor.config.ts
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = {
plugins: {
CapacitorUpdater: {
autoUpdate: true,
autoDeletePrevious: true,
periodCheckDelay: 10 * 60 * 1000, // optional: check every 10 minutes
},
},
}
export default config

Tout ce que Capawesome liste comme drapeaux manuels (defaultChannel, autoDeleteBundles, politiques de conservation, etc.) est géré à travers le tableau de bord de Capgo ou API. Vous n'avez besoin de surcharger que ces clés si vous souhaitez un comportement différent des valeurs par défaut de Capgo.

Option de CapawesomeCapgo équivalentAvez-vous besoin de le configurer ?
appIdExtrait du tableau de bord de Capgo une fois que vous créez un projetSeulement si vous utilisez plusieurs projets dans un seul exécutable
defaultChannelRègles de canal gérées dans le tableau de bord/APIFacultatif ; la plupart des équipes définissent cela côté serveur
autoDeleteBundlesautoDeletePrevious: true (par défaut)Déjà activé
publicKeyGéré dans le console CapgoSeulement si vous rotatez les clés manuellement
maxVersions / conservationPolitique de conservation du bundleConfiguré centralement dans Capgo (1 mois par défaut, 24 mois maximum)

Étape 3 – Appel notifyAppReady() (la seule fonction requise)

Étape 3 – Appeler notifyAppReady() (la seule prise de commande requise)

Le flux de travail ancien a introduit des écouteurs personnalisés (",", la cachette de l'écran de démarrage, etc.). __CAPGO_KEEP_0__ effectue ces étapes nativement. La seule __CAPGO_KEEP_1__ que vous devez appeler est :checkForUpdates(), retryDownload(), hiding the splash screen, etc.). Capgo performs those steps natively. The only API you must call is:

import { CapacitorUpdater } from '@capgo/capacitor-updater'
CapacitorUpdater.notifyAppReady()

C'est tout—Capgo gère les vérifications en arrière-plan, la visibilité de l'écran de démarrage et les retours en arrière nativement.

That’s it—Capgo handles background checks, splash visibility, and rollbacks natively.

Copier dans le presse-papier
import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdater.addListener('appReady', () => {
// Run diagnostics or logging if you need to
SplashScreen.hide()
})
CapacitorUpdater.notifyAppReady()

Section intitulée « Étape 4 – Cartographier les appels de API (en grande partie facultatif) »

Dans API vous laissez généralement l'auto-mise à jour s'exécuter ; les API manuelles restent disponibles si vous souhaitez avoir un contrôle total.

In Capgo you normally let the auto-updater run; manual APIs remain available if you want full control.

Section titled “Step 3 – Call notifyAppReady() (the only required hook)” translated to Étape 3 – Appeler notifyAppReady() (la seule prise de commande requise) and Step 4 – Map __CAPGO_KEEP_0__ calls (mostly optional) translated to Étape 4 – Cartographier les appels de __CAPGO_KEEP_0__ (en grande partie facultatif)Capgo équivalentEn avez-vous besoin ?
LiveUpdate.fetchLatestBundle()CapacitorUpdater.getLatest()Seulement lors de la mise en œuvre de votre propre flux de téléchargement
LiveUpdate.downloadBundle()CapacitorUpdater.download()Optionnel : mise à jour auto-native télécharge déjà
LiveUpdate.setNextBundle()CapacitorUpdater.next()Optionnel : le tableau de bord fixe automatiquement les ensembles
LiveUpdate.reload()CapacitorUpdater.reload()Optionnel ; Capgo impose les ensembles obligatoires après notifyAppReady()
LiveUpdate.getCurrentBundle()CapacitorUpdater.current()Diagnostic optionnel

Si vous vous tenez à la mise à jour auto-native, vous pouvez supprimer le JavaScript Capawesome entièrement.

Téléchargez le dernier ensemble

Capgo
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const downloadUpdate = async () => {
const latest = await CapacitorUpdater.getLatest()
if (latest?.url) {
const bundle = await CapacitorUpdater.download({
url: latest.url,
version: latest.version,
})
console.log('Bundle downloaded', bundle?.id)
}
}
Cloud Capawesome
import { LiveUpdate } from '@capawesome/capacitor-live-update'
const downloadUpdate = async () => {
const result = await LiveUpdate.fetchLatestBundle()
if (result.downloadUrl) {
await LiveUpdate.downloadBundle({
bundleId: result.bundleId,
url: result.downloadUrl,
})
console.log('Bundle downloaded')
}
}

Définir le prochain bundle

Capgo
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const setNextBundle = async () => {
await CapacitorUpdater.next({ id: 'bundle-id-123' })
}
Cloud Capawesome
import { LiveUpdate } from '@capawesome/capacitor-live-update'
const setNextBundle = async () => {
await LiveUpdate.setNextBundle({ bundleId: 'bundle-id-123' })
}

Appliquer le bundle téléchargé immédiatement

Capgo
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const applyUpdate = async () => {
await CapacitorUpdater.reload()
}
Cloud Capawesome
import { LiveUpdate } from '@capawesome/capacitor-live-update'
const applyUpdate = async () => {
await LiveUpdate.reload()
}

Étape 5 – Stratégies de mise à jour : la façon dont Capgo les gère

Section intitulée « Étape 5 – Stratégies de mise à jour : la façon dont Capgo les gère »

Capawesome décrit trois stratégies. Voici comment elles se traduisent :

  • Flux de travail précédent: configurez-la dans code et planifiez les téléchargements manuellement.
  • Capgo: activée par défaut (autoUpdate: true). Pas de code supplémentaire nécessaire.
  • Flux de travail précédent: ajoutez un App.resume écouteur, appelez download, puis set.
  • Capgo: la mise à jour automatique en arrière-plan effectue déjà la vérification après la reprise. Vous n'avez besoin que de l'écouteur manuel si vous souhaitez une plage d'intervalle personnalisée.
Optionnel : vérification de reprise manuelle
import { App } from '@capacitor/app'
import { CapacitorUpdater } from '@capgo/capacitor-updater'
App.addListener('resume', async () => {
const latest = await CapacitorUpdater.getLatest()
if (latest?.url) {
const downloaded = await CapacitorUpdater.download({
url: latest.url,
version: latest.version,
})
if (downloaded) {
await CapacitorUpdater.next({ id: downloaded.id })
}
}
})
  • Flux de travail précédent: programmer la logique de la fenêtre et exiger un rechargement.
  • Capgo: marquer le bundle comme “obligatoire” dans l'interface utilisateur, puis écouter l'événement (émis après majorAvailable ) pour obliger les utilisateurs à mettre à jour à l'intérieur de votre application. notifyAppReady()Étape 6 – Déploiement des bundles

Titre de la section « Étape 6 – Déploiement des bundles »

Si vous vous êtes auparavant appuyé sur

, __CAPGO_KEEP_0__ offre un flux de travail similaire __CAPGO_KEEP_1__ et vous pouvez également automatiser les déploiements entièrement via __CAPGO_KEEP_2__. capawesome live-update deploy, Capgo offers a similar CLI workflow, and you can also automate deployments entirely via API.

Copier dans le presse-papier
# Authenticate once (stores a token in your CI environment)
capgo login
# Upload a new bundle (auto-detects platform/version)
capgo bundle upload --path dist --channel production

Because Capgo tracks bundle health automatically, you also get:

  • Les journaux d'audit au niveau du dispositif pour chaque installation.
  • Rétention automatique (un mois par défaut) avec des limites configurables jusqu'à 24 mois.
  • Les métriques de latence en temps réel à __CAPGO_KEEP_0__.app/history status.capgo.app/history.

Section intitulée “Chronologie de migration”

Inventaire & installation
  • : 10 minutes (, supprimer l'ancien plugin).npm installConfiguration & prêt
  • : 5 minutes (Vérifications de santénotifyAppReady).
  • Vérifications de santé: 15 minutes (optionnelles tests manuelles ou écouteurs).
  • Première mise en production: 10 minutes avec Capgo CLI ou intégration CI.

En pratique, les équipes terminent en moins d'une heure. Si vous fournissez les détails du projet Capawesome, nous pouvons même importer les canaux et les listes de dispositifs pour vous.

Capgo est conçu pour une fiabilité à long terme : mises à jour delta natives, ensembles chiffrés, redémarrages automatiques et analyses qui ne nécessitent pas de JavaScript personnalisé. Une fois que vous avez migré, vous pouvez supprimer le collage lourd en maintenance et laisser la plateforme gérer les mises à jour automatiquement.