Ir al contenido

Migrar desde AppFlow a Capgo

🚦 Ionic anunció que los productos comerciales de AppFlow, incluyendo las actualizaciones en vivo, están disminuyendo. Los proyectos existentes pueden ejecutarse hasta 31 de diciembre de 2027, pero no se aceptan nuevos clientes y no se planean nuevas características. Este manual te guía a través de las acciones necesarias para migrar a Capgo y destaca la automatización nativa que obtienes.

Capgo gestiona canales, retención de paquetes, retrocesos, análisis y subidas de CLI para ti. La migración se reduce a instalar el plugin, llamar a CapacitorUpdater.notifyAppReady(), y, si se desea, configurar controles manuales opcionales. Las secciones a continuación te guían a través de cada tarea de manera directa.

Step 0 – Captura tu configuración actual de AppFlow

Sección titulada “Step 0 – Captura tu configuración actual de AppFlow”
  • Nota tu AppFlow ID de la aplicación, canales existentes y claves de firma.
  • Exporta cualquier historia de paquetes que desees archivar.
  • Si estás utilizando GitHub Acciones o otro proveedor de CI, mantén esas líneas de producción—siguen funcionando con Capgo.

Step 1 – Reemplaza el flujo de AppFlow SDK con Capgo

Sección titulada “Step 1 – Reemplaza el flujo de AppFlow SDK con Capgo”
Ventana de terminal
npm uninstall @capacitor/live-updates
npm install @capgo/capacitor-updater
npx cap sync

Listo. Capgo empaqueta los nativos code tanto para iOS como para Android; no se requieren ayudantes de JavaScript adicionales.

Paso 2 – Configuración mínima (sin campos manuales)

Sección titulada “Paso 2 – Configuración mínima (sin campos manuales)”

La bloque de configuración existente es extenso. Capgo detecta automáticamente tu proyecto y canales, por lo que la configuración mínima es:

capacitor.config.ts
import { CapacitorConfig } from '@capacitor/cli'
const config: CapacitorConfig = {
plugins: {
CapacitorUpdater: {
autoUpdate: true,
autoDeletePrevious: true,
},
},
}
export default config
Configuración de la aplicación de Ionic AppFlowCapgo equivalente¿Necesitas configurarlo?
appIdAdministrado en el panel de control de CapgoSuministrado automáticamente cuando creas el proyecto
channel / defaultChannelReglas de canal en la consola/APIOpción de sobrescritura; los valores por defecto provienen del servidor. Consulte Versión de destino para estrategias de varias versiones
autoUpdateMethodautoUpdate: trueHabilitado por defecto
maxVersionsPolítica de retenciónConfigurado centralmente (1 mes por defecto, 24 meses máximo)
enabledNo es necesarioCapgo activa la disponibilidad por canal

Paso 3 – Llamar notifyAppReady() (el único hook requerido)

Sección titulada “Paso 3 – Llamar a notifyAppReady() (el único hook requerido)”

En la guía de Ionic, conectas sync, download, y reload, luego ocultas manualmente la pantalla de bienvenida. Capgo realiza esas acciones nativamente. Solo debes confirmar que la aplicación está lista:

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

Si nunca llega la confirmación, Capgo vuelve a empaquetar automáticamente.

Eso es todo—Capgo se encarga de los controles de fondo, la visibilidad de la pantalla de bienvenida y los rechazos por ti.

Opcional: ejecuta lógica antes de que la pantalla de bienvenida se oculte
import { CapacitorUpdater } from '@capgo/capacitor-updater'
import { SplashScreen } from '@capacitor/splash-screen'
CapacitorUpdater.addListener('appReady', () => {
// Log diagnostics or run custom code if needed
SplashScreen.hide()
})
CapacitorUpdater.notifyAppReady()

AppFlow documenta tres estrategias. Aquí está cómo se relacionan con Capgo:

  • AppFlow: configurar autoUpdateMethod = background, llamar sync() manualmente.
  • Capgo: habilitado por defecto. No se requiere JavaScript.
  • AppFlow: agregar un App.addListener('resume') manejador que descarga y recarga.
  • Capgo: ya se ejecuta la actualización automática al reanudar. Agrega el manejador solo si deseas un ventana de tiempo personalizado.
Opcional: verificación de reanudación manual
import { App } from '@capacitor/app'
import { CapacitorUpdater } from '@capgo/capacitor-updater'
App.addListener('resume', async () => {
const bundle = await CapacitorUpdater.download()
if (bundle) {
await CapacitorUpdater.set({ id: bundle.id })
}
})
  • AppFlow: pregunte al usuario y llame reload().
  • Capgo: marca el paquete como “obligatorio” en la consola, luego escuche para el majorAvailable evento (empleado después de notifyAppReady())
Método AppFlowEquivalente de Capgo¿Necesita ayuda?
LiveUpdates.sync()Se maneja automáticamenteLa actualización automática nativa de Capgo se ejecuta sin una llamada de sincronización manual
LiveUpdates.download()CapacitorUpdater.download()Opcional para flujos personalizados
LiveUpdates.reload()CapacitorUpdater.set()Opcional; los botones de la consola manejan actualizaciones forzadas
LiveUpdates.getVersion()CapacitorUpdater.current()Opcional de diagnóstico

Paso 6 – Despliegue utilizando el Capgo CLI o API

Sección titulada “Paso 6 – Despliegue utilizando el Capgo CLI o API”

Finalice la migración subiendo paquetes con el Capgo CLI o API. El flujo de trabajo refleja lo que puede haber escrito antes, pero ahora incluye medidas de seguridad nativas:

ventana de terminal
capgo login # authenticate once
capgo bundle upload \
--path dist \
--channel production # automatically tags platform/version

ventana de terminal

Copiar a portapapeles
# Only deliver to devices on native version 2.0.0 or higher
capgo bundle upload \
--path dist \
--channel production \
--native-version "2.0.0"
# Use channels for different major versions
capgo bundle upload --channel v2 # for app version 2.x
capgo bundle upload --channel v3 # for app version 3.x

Guía de versiones objetivo para estrategias completas. __CAPGO_KEEP_0__ se realiza automáticamente:

Capgo automatically:

  • Mantiene registros de auditoría a nivel de dispositivo para cada instalación.
  • Envía correos electrónicos proactivos cuando se acerca a los límites del plan.
  • Proporciona créditos de descarga para que nunca estés bloqueado durante la publicación.
  • Publica métricas de latencia para 18 regiones globales en status.capgo.app/history.

Si tu pila de Ionic también utiliza plugins de empresa, sigue los documentos de migración dirigidos a continuación. Cada guía recomienda la sustitución Capgo y los siguientes pasos.

¿Por qué AppFlow está cerrando actualizaciones en vivo?

Sección titulada “¿Por qué AppFlow está cerrando actualizaciones en vivo?”

Ionic está abandonando productos comerciales, incluido AppFlow, para centrarse en su marco de código abierto. Los clientes existentes pueden seguir utilizando actualizaciones en vivo hasta 31 de diciembre de 2027, pero no se aceptan nuevas características o clientes. Capgo cubre ese vacío con una plataforma de OTA nativa dedicada.

La mayoría de los equipos completan el cambio en menos de un día. Conceptos como canales, despliegues y reglas de lanzamiento se traducen directamente, y nuestro equipo proporciona documentación y apoyo práctico. En muchos casos, simplemente instala el plugin, llama notifyAppReady(), y sube tu primer paquete.

Sí. Las actualizaciones en vivo de AppFlow comienzan en $499/mo. Capgo comienza en $14/mo con un precio basado en el uso que se reduce a aproximadamente $0.001 por MAU. También obtiene cifrado, rollbacks automáticos y monitoreo de latencia en todo el mundo.

Dado que AppFlow ahora está en modo de mantenimiento, migrar antes le da acceso a la innovación continua de Capgo. Recomendamos cambiar cuando se adapte a su calendario de lanzamiento. Nuestro equipo de ingeniería ayudará a planificar el cambio para que su CI/CD y despliegues sigan funcionando.

Capgo está diseñado para empresas que necesitan actualizaciones delta nativas, paquetes cifrados y innovación continua. Una vez que hayas migrado, puedes eliminar la pegamento de AppFlow code, confiar en la automatización nativa y seguir enviando sin interrupciones.