Pulsa para ir al contenido principal
Tutoriales

Cómo mantener actualizaciones de Capgo ligero y rápido

Una guía práctica de Capgo para actualizaciones en vivo más pequeñas y seguras: paquetes delta, despliegue basado en canales, refrescos de línea base nativos, vistas previas de PR y guarderías de actualizaciones directas.

Créditos del artículo

Martin Donadieu

Escritor

Valeria

Revisor

Jordan

Editor

Cómo mantener Capgo actualizaciones ágiles y rápidas

El mejor live update es el que sus usuarios apenas notan.

Normalmente eso significa tres cosas:

  1. La descarga es pequeña.
  2. La implementación está controlada.
  3. La recuperación es instantánea si algo sale mal.

El mismo consejo de "mantener OTA delgado" que funciona en el territorio de React Native también se aplica a Capgo. La diferencia es que Capgo da a los equipos de Capacitor un par de palancas adicionales: Actualizaciones delta, context, rollback automático, versión de destinodevoluciones automáticas objetivos de versión.

Si los utilizas juntos, obtendrás paquetes más pequeños, instalaciones más rápidas y mucho menos desorden operativo.

cripografía de extremo a extremo

One useful Capgo-specific detail: Capgo MAU is effectively the number of monthly active devices that contacted the update service in the last 30 days.

So slimming a bundle is not mainly a trick to reduce MAU counting. It matters because it improves the parts users and teams actually feel:

  • Descargas más rápidas en celular o Wi-Fi débil
  • Mejor experiencia con actualizaciones directas
  • Menos ancho de banda desperdiciado en versiones fallidas o revertidas
  • Radio de explosión más pequeño al probar o estregar una versión

Las actualizaciones ágiles son realmente sobre velocidad, seguridad y disciplina operativa.

1. Establecer actualizaciones Delta como default

Si haces solo una cosa, haz esto.

Capgo’s actualizaciones Delta enviar solo archivos que cambiaron entre versiones en lugar de descargar nuevamente el paquete web completo. Eso es el mayor beneficio único para el rendimiento de actualizaciones OTA rutinarias.

bun run build
bunx @capgo/cli@latest bundle upload --channel staging --delta

Cuando tu prueba de QA está lista:

bunx @capgo/cli@latest bundle upload --channel production --delta

Cuando tu paso de QA esté hecho: --delta-only para que nadie accidentalmente regrese a subir paquetes completos:

bunx @capgo/cli@latest bundle upload --channel production --delta-only

Usa solo --delta-only cuando tu flota de producción admite actualizaciones Delta. En versiones de plugins mixtos, los dispositivos más antiguos que no admiten la entrega de deltas basada en manifestos no podrán descargar esa actualización.

Esto importa aún más si usas directUpdate, porque el tiempo entre “actualización encontrada” y “aplicación recargada” se vuelve visible para el usuario.

2. Trata los activos como activos, no como carga de JavaScript

Los activos grandes son donde los paquetes OTA calladamente se vuelven pesados.

Algunas reglas prácticas:

  • No incluyas imágenes grandes o medios dentro de JavaScript cuando un archivo de activo normal lo hará.
  • Mantén el contenido que cambia con frecuencia en tu propio CDN o API si no necesita vivir dentro del paquete de aplicación enviado.
  • Ten cuidado con imágenes de marketing, videos de onboarding y activos de campaña que se reemplazan con cada lanzamiento.
  • Deja que los activos estables sigan siendo estables. Con actualizaciones Delta, los archivos inalterados se reutilizan en lugar de descargarse nuevamente.

Esta es una de las formas más fáciles de mantener Capgo rápido a medida que tu aplicación crece. El peor patrón es una pequeña corrección de la interfaz de usuario que obliga a los usuarios a descargar una pila de medios no relacionados.

3. Mantén las versiones nativas para cambios reales nativos

Capgo actualiza la capa web: HTML, CSS, JavaScript y activos cargados en tiempo de ejecución.

No es el canal adecuado para:

  • nuevos plugins nativos
  • cambios de permisos
  • capacitor.config.ts cambios
  • algo que modifique el estado del proyecto nativo de iOS o Android.

Esa línea importa para el rendimiento también. Si sigues metiendo cambios estructurales importantes en la vía de actualización OTA, tu estrategia de actualización se vuelve más pesada y más riesgosa con el tiempo.

Usa dos canales de liberación a propósito:

Canal nativo

Para cambios de plugins, cambios de permisos y configuración nativa:

bun run build
bunx cap sync

Luego envíe una versión de tienda normal.

Capgo correa

Para iteración de capa web segura:

bun run build
bunx @capgo/cli@latest bundle upload --channel production --delta

Actualice también su línea base nativa con frecuencia si agregó recientemente muchos activos de larga vida. Una nueva construcción de tienda incorpora esa nueva línea base, lo que mantiene las diferencias futuras de Capgo más pequeñas.

4. Use channels to keep rollout size small

Una actualización 'delgada' no solo se trata de megabytes. También se trata de cuántos dispositivos reciben la actualización antes de saber que es buena.

Capgo's sistema de canales es la forma más limpia de controlar eso:

  • staging para QA
  • beta para probadores invitados
  • production para todos
  • hotfix para la recuperación de emergencia

Un flujo simple se ve así:

  1. Subir a staging.
  2. Validar en dispositivos reales.
  3. Despliegue gradual, ya sea a través de canales controlados o un porcentaje de despliegue.
  4. Revertir inmediatamente si la salud disminuye.

Si su aplicación tiene varias bases nativas en el wild, pair canales con la versión de destino. Esto mantiene paquetes incompatibles o innecesariamente pesados alejados de binarios más antiguos.

Para equipos que desean incluso más estrictos ciclos de revisión, Capgo también funciona bien para previstas de PR. Esto permite a product, QA y partes interesadas probar cambios solo en JS sin tener que esperar a nuevos TestFlight o Play internos.

5. Si habilitas actualizaciones directas, optimiza el arranque duro

El más rápido que desees que se aplique una actualización, más disciplinado debe ser tu camino de arranque.

Capgo’s comportamiento de actualización docs recomiendan explícitamente la combinación directUpdate with Delta updates. That is the right default.

La segunda barrera es notifyAppReady().

import { CapacitorUpdater } from '@capgo/capacitor-updater'

CapacitorUpdater.notifyAppReady()

Si su aplicación no informa estar lista dentro de los 10 segundos de espera por defecto notifyAppReady() ventana, o dentro de lo que appReadyTimeout you set in your Capacitor config, Capgo can mark that bundle invalid and restore the previous good version. That rollback behavior is what you want in production, but it also means you should keep startup clean:

  • Call notifyAppReady() en el lugar correcto
  • Evite realizar trabajo de arranque lento en el camino crítico
  • Guarda y restaura el estado de la aplicación con cuidado si recargas inmediatamente
  • Test bad-network and low-end-device scenarios before broad rollout

Si no lo ha revisado recientemente, la notificarGuíaDePreparación es recomendable leer de nuevo.

6. Utilice canales de actualización internos en lugar de reconstrucciones nativas innecesarias

Muchos equipos de móviles desperdician tiempo construyendo binarios para cambios que claramente son solo web.

Si el cambio es:

  • copia
  • Polish de UI
  • flujo de onboarding
  • lógica de pantalla de precios,
  • conexión de análiticas,
  • banderas de características,
  • rendimiento de respuesta o API de solicitud,

entonces una actualización Capgo es a menudo el artefacto de revisión más rápido.

Por lo tanto, hay menos reconstrucciones nativas, menos cambios en TestFlight y un ciclo de retroalimentación más estrecho para el equipo. Es uno de los beneficios menos utilizados de Capgo: puede mover más trabajo de revisión y QA a la vía de actualización OTA sin romper la frontera nativa/web.

Nuestra guía sobre estadía con un ID de aplicación móvil explica una forma práctica de mantener esto limpio con el tiempo.

7. Mantén separado lo delgado de lo secreto

Paquetes pequeños y paquetes seguros resuelven problemas diferentes.

Los canales controlan la elegibilidad. No hacen que un paquete sea confidencial por sí mismos.

Si necesita garantías de entrega más sólidas:

Eso no hace que el tamaño de la actualización sea irrelevante. Solo significa que debe optimizar para ambas dimensiones:

  • lean para la velocidad
  • cifrado para el control de entrega
  • canales para el control de lanzamiento
  • rollback para la recuperación

Un flujo de trabajo práctico de "lean Capgo"

Si deseas un modelo de operación por defecto simple, utiliza esto:

  1. Mantén separadas las rutas de lanzamiento nativo y OTA.
  2. Sube cambios en JS con --delta por defecto.
  3. Utiliza staging y beta los canales antes production.
  4. Mira estadísticas y registros de actualizaciones después de la implementación, no solo antes.
  5. Convierte PRs en vistas previas instalables cuando un compilado nativo no es necesario.
  6. Mantenga grandes y cambiantes medios de comunicación fuera de la paquete donde sea posible.
  7. Refresque la base nativa después de un crecimiento significativo de activos o cambios nativos.
  8. Tome notifyAppReady() y el comportamiento de deshacer como parte de la ingeniería de lanzamiento, no trivia de configuración.

Esa combinación permanece rápida mucho más tiempo que el enfoque común de ‘subir solo lo que ha cambiado’.

Pensamiento final

Para los equipos Capgo, “agil y rápido” no es solo un problema de tamaño del paquete.

Es un problema de diseño de lanzamiento.

Utilice actualizaciones Delta para el tamaño de carga, canales para el tamaño de despliegue y rollback para el tamaño de falla. Una vez que piense en OTA de esa manera, sus actualizaciones permanecen rápidas incluso a medida que la aplicación, el equipo y la base de usuarios crecen.

Siga adelante desde Cómo mantener Capgo actualizaciones delgadas y rápidas

Si está utilizando Cómo mantener Capgo actualizaciones delgadas y rápidas para planificar la ruta de canales y el despliegue en etapas, conecte con Canales para los detalles de implementación en Canales, Canales para los detalles de implementación en Canales, Canales para los detalles de implementación en Canales, Solución de Pruebas Beta para el flujo de trabajo del producto en Solución de Pruebas Beta, y Solución de Enfoque de Versión para el flujo de trabajo del producto en Solución de Enfoque de Versión.

Live updates for Capacitor apps

Cuando un error en la capa web está activo, envíe la corrección a través de Capgo en lugar de esperar días a la aprobación de la tienda de aplicaciones. Los usuarios reciben la actualización en segundo plano mientras los cambios nativos siguen en el camino de revisión normal.

Últimas noticias de nuestro Blog

Capgo te da las mejores herramientas para crear una aplicación móvil profesional