Saltare al contenuto

Migrare da Capawesome Cloud a Capgo

⚡️ Capgo automatizza i canali, la pulizia dei pacchetti, i rollback, le analisi e CLI le pubblicazioni native. Utilizzare questa guida per eseguire i passaggi minimi richiesti per la migrazione e, facoltativamente, ricreare qualsiasi comportamento personalizzato che ancora serve.

  1. Raccogliere la configurazione Cloud di Capawesome esistente (ID dell'app, canali, chiavi di firma, CLI token) in modo da poterlo archiviare o auditare in seguito.
  2. Installare il plugin Capgo, rimuovere Capawesome SDK e chiamare CapacitorUpdater.notifyAppReady().
  3. Configurare il comportamento facoltativo (download manuali, pinning dei pacchetti, ricarichi) se si dipende da quei flussi oggi.

Con Capgo è necessario installare solo il nostro plugin e chiamare CapacitorUpdater.notifyAppReady()Tutto il resto—canali, pulizia dei pacchetti, rollback, analisi e CLI automatizzazione—viene gestito nativamente. Le sezioni di seguito guidano attraverso ogni compito direttamente.

  • Assicurati che il tuo progetto utilizzi già Capacitor 5 o una versione successiva.
  • Installa il Capgo CLI (npm install -g @capgo/cli) se hai l'intenzione di inviare bundle da CI/CD.

Passo 1 – Installa Capgo e rimuovi il plugin Capawesome SDK

Sezione intitolata “Passo 1 – Installa Capgo e rimuovi il plugin Capawesome SDK”
Finestra del terminale
npm uninstall @capawesome/capacitor-live-update
npm install @capgo/capacitor-updater
npx cap sync

That is the only mandatory swap. Capgo’s native code ships with the plugin; no extra JavaScript helpers are required.

La precedente configurazione richiedeva la mappatura di decine di opzioni in capacitor.config Capgo riconosce automaticamente il tuo progetto, quindi la configurazione minima assomiglia a questo:

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

Tutto ciò che Capawesome elenca come flag manuali (defaultChannel, autoDeleteBundles, politiche di conservazione, ecc.) è gestito attraverso il dashboard di Capgo o API. Hai bisogno di sovrascrivere solo queste chiavi se desideri un comportamento diverso dalle impostazioni predefinite di Capgo.

Opzione di CapawesomeCorrispettivo di CapgoHai bisogno di impostarlo?
appIdPrelevato dal dashboard di Capgo una volta creato un progettoSolo se utilizzi più progetti in un binario
defaultChannelRegole del canale gestite nel dashboard/APIFacoltativo; la maggior parte delle squadre lo configura in modo server-side
autoDeleteBundlesautoDeletePrevious: true (di default)Già abilitato
publicKeyGestito nella console CapgoSolo se ruoti manualmente le chiavi
maxVersions / retentionPolitica di conservazione del bundleConfigurato centralmente in Capgo (1 mese di default, 24 mesi massimo)

La vecchia procedura introdusse ascoltatori personalizzati (checkForUpdates(), retryDownload(), nascondendo lo schermo di benvenuto, ecc.). Capgo esegue quei passaggi nativamente. L’unica API che devi chiamare è:

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

Questa conferma che l'app è avviata con successo. Se la conferma non arriva mai, Capgo effettua automaticamente il rollback del pacchetto—nessun JavaScript extra necessario.

È tutto—Capgo gestisce i controlli in background, la visibilità dello schermo di benvenuto e i rollback nativamente.

Facoltativo: eseguire logica personalizzata prima che lo schermo di benvenuto si nasconda
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()

Passo 4 – Mappare le chiamate di API (perlopiù facoltativo)

Sezione intitolata “Passo 4 – Mappare le chiamate di API (perlopiù facoltativo)”

In Capgo normalmente lasci che l'aggiornamento automatico si esegua; rimangono disponibili API manuali se desideri avere il controllo completo.

Cloud di CapawesomeEquivale a CapgoHai bisogno di questo?
LiveUpdate.fetchLatestBundle()CapacitorUpdater.getLatest()Solo quando implementi il tuo workflow di download personalizzato
LiveUpdate.downloadBundle()CapacitorUpdater.download()Facoltativo: l'aggiornamento auto-nativo scarica già i bundle
LiveUpdate.setNextBundle()CapacitorUpdater.next()Facoltativo: il pannello di controllo pina i bundle automaticamente
LiveUpdate.reload()CapacitorUpdater.reload()Optional; Capgo enforces mandatory bundles after notifyAppReady()
LiveUpdate.getCurrentBundle()CapacitorUpdater.current()Facoltativo: diagnostica

Se si stick con il comportamento di aggiornamento auto-nativo, puoi cancellare interamente il Capawesome JavaScript.

Scarica il bundle più recente

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 di 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')
}
}

Imposta il prossimo pacchetto

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

Applica immediatamente il pacchetto scaricato

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

Passo 5 – Strategie di aggiornamento: come Capgo le gestisce

Sezione intitolata “Passo 5 – Strategie di aggiornamento: come Capgo le gestisce”

Capawesome documenta tre strategie. Ecco come si traducono:

  • Flusso di lavoro precedenteConfigura in code e programma i download manualmente.
  • CapgoAbilitato di default (autoUpdate: true). Nessun ulteriore code richiesto.
  • Flusso di lavoro precedente: aggiungi App.resume un ascoltatore, chiama download, poi set.
  • Capgo: l'aggiornamento automatico in background esegue già il controllo dopo il ripristino. Hai bisogno di un ascoltatore manuale solo se desideri un intervallo personalizzato.
Facoltativo: controllo di ripristino manuale
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 })
}
}
})
  • Flusso di lavoro precedente: logica di avvio a filo e richiesta di ricarica.
  • Capgo: segnala il bundle come “obbligatorio” nella dashboard, quindi ascolta per l' majorAvailable evento (emesso dopo notifyAppReady()) per richiedere agli utenti di aggiornare all'interno dell'applicazione.

Se hai precedentemente dipenduto da capawesome live-update deploy, Capgo offre un flusso di lavoro simile a CLI e puoi anche automatizzare le distribuzioni interamente tramite API.

Finestra del terminale
# 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

Poiché Capgo monitora automaticamente la salute dei bundle, ottieni anche:

  • Registrazioni di audit a livello di dispositivo per ogni installazione.
  • Ritention automatica (un mese di default) con limiti configurabili fino a 24 mesi.
  • Metriche di latenza in tempo reale a status.capgo.app/history.
  • Inventario & installazione: 10 minuti (npm install: rimuovi vecchio plugin).
  • Configurazione & prontezza: 5 minuti (notifyAppReady).
  • Verifiche di sanità: 15 minuti (test manuali facoltativi o ascoltatori).
  • Prima distribuzione: 10 minuti con Capgo CLI o integrazione CI.

In pratica, le squadre terminano in meno di un'ora. Se fornite i dettagli del progetto Capawesome, possiamo anche importare canali e liste dispositivi per voi.

Capgo è progettato per una durata a lungo termine: aggiornamenti delta nativi, pacchetti crittografati, rollback automatico e analisi che non richiedono JavaScript personalizzato. Una volta migrato, puoi cancellare il glue pesante per la manutenzione e lasciare che la piattaforma esegua gli aggiornamenti automaticamente.