Migrar desde Cloud de Capawesome a Capgo
Copie un prompt de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
⚡️ Capgo automatiza canales, limpieza de paquetes, retrocesos, análisis y CLI subida nativa. Utilice esta guía para realizar los pasos mínimos necesarios para migrar y opcionalmente recrear cualquier comportamiento personalizado que aún necesite.
Resumen
Título de sección “Resumen”- Reúna su configuración de Capawesome Cloud existente (ID de aplicación, canales, claves de firma, CLI tokens) para que pueda archivar o auditarlo más tarde.
- Instale el Capgo plugin, elimine el Capawesome SDK, y llame
CapacitorUpdater.notifyAppReady(). - Configure el comportamiento opcional (descargas manuales, pin de paquetes, recargas) si depende de esos flujos hoy.
Con Capgo solo necesita instalar nuestro plugin y llamar CapacitorUpdater.notifyAppReady()Todo lo demás—canales, limpieza de paquetes, retrocesos, análisis y CLI automatización—se maneja de manera nativa. Las secciones a continuación recorren cada tarea directamente.
Antes de empezar
Sección titulada “Antes de empezar”- Asegúrate de que tu proyecto ya esté utilizando Capacitor 5 o posterior.
- Instala el Capgo CLI (
npm install -g @capgo/cli) si planeas enviar paquetes desde CI/CD.
Paso 1 – Instala Capgo y elimina el plugin Capawesome SDK
Sección titulada “Paso 1 – Instala Capgo y elimina el plugin Capawesome SDK”npm uninstall @capawesome/capacitor-live-updatenpm install @capgo/capacitor-updaternpx cap syncEs el único intercambio obligatorio. El Capgo nativo tiene code integrado; no se requieren ayudantes de JavaScript adicionales.
Paso 2 – Configuración mínima
Sección titulada “Paso 2 – Configuración mínima”La configuración anterior requería la mapeación de docenas de opciones en capacitor.config Capgo reconoce automáticamente su proyecto, por lo que la configuración mínima se ve así:
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 configTodo lo que Capawesome enumera como banderas manuales (defaultChannel, autoDeleteBundles, políticas de retención, etc.) se gestiona a través de la consola de Capgo o API. Solo necesita sobrescribir estas claves si desea un comportamiento que difiera de los valores predeterminados de Capgo.
Referencia rápida de configuración
Sección titulada “Referencia rápida de configuración”| Opción de Capawesome | Capgo equivalente | ¿Necesita configurarlo? |
|---|---|---|
appId | Tomado de la consola de Capgo una vez que cree un proyecto | Solo si utilizas varios proyectos en un binario |
defaultChannel | Reglas de canal administradas en la consola/API | Opcional; la mayoría de los equipos configuran esto de forma remota |
autoDeleteBundles | autoDeletePrevious: true (por defecto) | Ya está habilitado |
publicKey | Administrado en la consola Capgo | Solo si rotas las claves manualmente |
maxVersions / retención | Política de retención de paquetes | Configurado centralmente en Capgo (1 mes por defecto, 24 meses máximo) |
Paso 3 – Llamar notifyAppReady() (el único hook requerido)
Paso 3 – Llamar a notifyAppReady() (el único hook requerido)El antiguo flujo de trabajo introdujo oyentes personalizados (",", ocultar la pantalla de bienvenida, etc.). __CAPGO_KEEP_0__ realiza esos pasos nativamente. El único __CAPGO_KEEP_1__ que debes llamar es: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()Eso es todo—Capgo gestiona los controles de fondo, la visibilidad de la pantalla de bienvenida y los rollbacks nativamente.
That’s it—Capgo handles background checks, splash visibility, and rollbacks natively.
Copiar a portapapeles
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()Sección titulada “Paso 4 – Mapear llamadas a API (en gran medida opcional)”
En API normalmente permites que el actualizador automático se ejecute; las API manuales siguen disponibles si deseas tener control total.In Capgo you normally let the auto-updater run; manual APIs remain available if you want full control.
| Copy to clipboard | Capgo equivalente | ¿Necesita esto? |
|---|---|---|
LiveUpdate.fetchLatestBundle() | CapacitorUpdater.getLatest() | Solo cuando implementas tu propio flujo de descarga |
LiveUpdate.downloadBundle() | CapacitorUpdater.download() | Opcional: la actualización automática nativa ya descarga |
LiveUpdate.setNextBundle() | CapacitorUpdater.next() | Opcional: el panel de control pina los paquetes automáticamente |
LiveUpdate.reload() | CapacitorUpdater.reload() | Opcional; Capgo impone paquetes obligatorios después de notifyAppReady() |
LiveUpdate.getCurrentBundle() | CapacitorUpdater.current() | Opcional: diagnósticos |
Si se queda con el comportamiento de actualización automática nativa, puede eliminar el JavaScript Capawesome por completo.
Ejemplos de control manual
Sección titulada “Ejemplos de control manual”Descargar el último paquete
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) }}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') }}Establecer el siguiente paquete
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const setNextBundle = async () => { await CapacitorUpdater.next({ id: 'bundle-id-123' })}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const setNextBundle = async () => { await LiveUpdate.setNextBundle({ bundleId: 'bundle-id-123' })}Aplicar el paquete descargado de inmediato
import { CapacitorUpdater } from '@capgo/capacitor-updater'
const applyUpdate = async () => { await CapacitorUpdater.reload()}import { LiveUpdate } from '@capawesome/capacitor-live-update'
const applyUpdate = async () => { await LiveUpdate.reload()}Paso 5 – Actualizar estrategias: cómo Capgo las maneja
Sección titulada “Paso 5 – Actualizar estrategias: cómo Capgo las maneja”Capawesome documenta tres estrategias. Aquí está cómo se traducen:
Actualizaciones de fondo
Sección titulada “Actualizaciones de fondo”- Flujo de trabajo anteriorConfigurar en code y programar descargas manualmente.
- CapgoHabilitado por defecto (
autoUpdate: true). No se requiere ningún code adicional.
Siempre la última versión
Título de la sección “Siempre la última versión”- Flujo de trabajo anterior: agregar un
App.resumeescuchador, llamardownload, luegoset. - Capgo: la actualización automática de fondo ya realiza la comprobación después de la reanudación. Solo necesita el escuchador manual si desea un intervalo personalizado.
Opcional: comprobación manual de reanudación
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 }) } }})Actualizar forzadamente
Título de la sección “Actualizar forzadamente”- Flujo de trabajo anterior: lógica de solicitud de cable y fuerza de recarga.
- Capgo: marca el paquete como “obligatorio” en la consola, luego escucha el
majorAvailableevento (empleado después denotifyAppReady()) para que los usuarios actualicen dentro de tu aplicación.
Paso 6 – Desplegando paquetes
Sección titulada “Paso 6 – Desplegando paquetes”Si anteriormente te basaste en capawesome live-update deploy, Capgo ofrece un flujo de trabajo similar de CLI y también puedes automatizar los despliegues por completo a través de API.
# 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 productionPorque Capgo monitorea automáticamente la salud de los paquetes, también obtienes:
- Registros de auditoría a nivel de dispositivo para cada instalación.
- Retención automática (un mes por defecto) con límites configurables hasta 24 meses.
- Métricas de latencia en tiempo real en status.capgo.app/history.
Cronograma de migración
Sección titulada “Cronograma de migración”- Inventario y instalación: 10 minutos (
npm install: Configuración y pruebas de preparación - : 5 minutos (Verificación de la cordura
notifyAppReady). - Verificación de la cordura: 15 minutos (pruebas manuales opcionales o escuchas).
- Primera implementación: 10 minutos con Capgo CLI o integración de CI.
En la práctica, los equipos terminan en menos de una hora. Si proporciona detalles del proyecto Capawesome, podemos incluso importar canales y listas de dispositivos para usted.
Capgo support
Sección titulada “Capgo support”- Asistente de migración: reserve una sesión en cal.com/team/capgo/demo.
- Comunidad: únete a Capgo Discord.
- Registro de problemas: github.com/Cap-go/capacitor-actualizador de problemas.
Capgo está diseñado para una confiabilidad a largo plazo: actualizaciones delta nativas, paquetes cifrados, rollbacks automáticos y análisis que no requieren JavaScript personalizado. Una vez que hayas migrado, puedes eliminar el pegamento de mantenimiento pesado y dejar que la plataforma realice actualizaciones automáticamente.