Pasar al contenido principal

Cómo utilizar la versión semántica con actualizaciones Capgo OTA

Aprenda a simplificar las actualizaciones de aplicaciones y el control de versiones utilizando la versión semántica con actualizaciones OTA de Capgo para aplicaciones Capacitor.

Martin Donadieu

Martin Donadieu

Gerente de contenido

Cómo utilizar la versión semántica con actualizaciones Capgo OTA

¿Desea simplificar las actualizaciones de aplicaciones? ¿Desea simplificar las actualizaciones de aplicaciones? ¿Y control de versiones? Versión Semántica (SemVer) combinado con Capgolas actualizaciones OTA de __CAPGO_KEEP_0__ Capacitor __CAPGO_KEEP_0__

  • aplicaciones. Aquí está cómo funciona: Fundamentos de la Versión Semántica: MAJOR.MINOR.PATCH:

    • Las versiones utilizan el formato MAJOR:
    • Para cambios importantes. Para nuevas características que son compatibles hacia atrás.
    • PATCH: Para arreglos de errores.
  • ¿Por qué usar SemVer con Capgo?

    • Comunicación clara sobre actualizaciones.
    • Gestión de versiones más inteligente.
    • Evitar conflictos de dependencias.
    • Planificación de lanzamientos organizada.
  • Capgo Configuración Pasos:

    1. Instale el plugin de actualizador de Capgo.
    2. Configure la versión de su aplicación en capacitor.config.json y otros archivos.
    3. Inicialice con su clave API.
    4. Usar Capgo CLI para empaquetar y subir actualizaciones.
  • Gestionar versiones y canales:

    • Usar canales separados (por ejemplo, “beta” para pruebas, “producción” para lanzamientos estable).
    • Controlar políticas de actualización (actualizaciones automáticas de parches, aprobación manual para cambios importantes).
    • Opciones de retroceso para actualizaciones fallidas.
  • Proceso de Despliegue:

    • Actualice los números de versión siguiendo las reglas de SemVer.
    • Pruebe exhaustivamente antes de desplegar.
    • Utilice comandos CLI para subir y distribuir actualizaciones.

Capgo garantiza que las actualizaciones lleguen a los usuarios de manera rápida y confiable, con herramientas para manejar interrupciones y mantener la estabilidad. Ideal para equipos que utilizan flujos de trabajo CI/CD para automatizar actualizaciones.

Consejo rápido: Siempre pruebe actualizaciones y utilice canales para gestionar lanzamientos de etapas de manera efectiva.

Gestión de versiones semánticas | Nivel superior

Capgo Guía de configuración

Capgo Panel de control de actualizaciones en vivo

Aquí está cómo configurar Capgo para gestionar actualizaciones OTA y control de versiones con facilidad.

Pasos de configuración inicial

Comience instalando el plugin de actualizador Capgo:

npm install @capgo/capacitor-updater  
npx cap sync

Asegúrese de que su capacitor.config.json archivo utilice un formato de versión semántica:

{ 
  "appId": "com.example.app", 
  "appName": "My App", 
  "version": "1.0.0" 
}

Para proyectos más antiguos, actualice los detalles de versión en los siguientes lugares:

  • package.json (busque el version campo)
  • android/app/build.gradle (actualice versionName)
  • ios/App/App.xcodeproj/project.pbxproj (actualice CURRENT_PROJECT_VERSION)

Una vez configurado, inicialice Capgo con su clave API:

npx @capgo/cli@latest init YOUR_API_KEY

Tabla de Referencia Rápida:

Fase de Configuración Acción de la Clave Verificación de paso
Instalación Instale el plugin y sincronice Comprobar package.json
Configuración Establecer números de versión Verificar en todos los archivos
Inicialización Conectarse con la clave API Prueba el estado de la conexión
Compilar Crear el paquete inicial Confirmar éxito de subida

Integración de Control de Versiones

Capgo funciona bien con plataformas de CI/CD, lo que hace que actualizaciones automatizadas sean fáciles. Las plataformas soportadas incluyen:

Si estás trabajando en desarrollo local, puedes deshabilitar las actualizaciones automáticas agregando esto a tu configuración:

{ 
  "plugins": { 
    "CapacitorUpdater": { 
      "autoUpdate": false 
    } 
  } 
}

Esto garantiza que Capgo no sobrescriba tus cambios locales. Una vez que tengas tu configuración lista, sube tu primera versión:

npx @capgo/cli@latest bundle upload  
npx @capgo/cli@latest channel set production -s default

Finalmente, notifique al plugin nativo sobre la salud del paquete en el archivo principal de la aplicación:

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

Esta configuración garantiza que la aplicación esté lista para despliegues OTA suaves y gestión de versiones.

Usando Semántica de Versión con Capgo

Gestión de Número de Versión

Capgo utiliza Semántica de Versión (SemVer) para gestionar versiones de la aplicación, formateadas como MAJOR.MINOR.PATCH. Aquí está cómo funciona:

  • Versión Mayor (X.0.0): Incremente el número MAJOR para cambios que rompen la compatibilidad.
  • Versión Menor (1.X.0): Incremente el número MINOR para nuevas características que siguen siendo compatibles.
  • Versión de parche (1.0.X)Aumentar el número de PATCH para correcciones de errores que no afectan la compatibilidad.
Tipo de Versión Cuándo Incrementar Comportamiento de Actualización Automática
Mayor (X.0.0) Para cambios de ruptura API Requiere aprobación manual
Menor (1.X.0) Para nuevas características Configurable en Capgo
Patch (1.0.X) Para correcciones de errores Usualmente automático

Al seguir las reglas de SemVer, puedes simplificar la gestión de versiones y asegurarte de que las actualizaciones sean más suaves a través de tus canales de despliegue.

Directrices de Control de Versiones

Capgo te permite gestionar los despliegues de manera efectiva al configurar canales distintos para diferentes etapas de tu flujo de trabajo.

  • Gestión de Versiones por Canales: Organiza tu proceso de despliegue creando canales separados para pruebas y producción. Por ejemplo:

    • Utiliza un canal de “beta” (por ejemplo, 1.2.0-beta) para probar nuevas características.
    • Mantén un canal de “producción” (por ejemplo, 1.2.0) para lanzamientos estable.
    • Agrega canales específicos para plataformas (por ejemplo, “ios-hotfix” con versión 1.2.1) cuando se traten problemas específicos de plataforma.
  • Configuración de la Política de Actualizaciones: Controla cómo se aplican las actualizaciones utilizando las opciones de configuración de Capgo . Por ejemplo:

    {
      "plugins": {
        "CapacitorUpdater": {
          "disableAutoUpdate": "minor"
        }
      }
    }

    Este conjunto de configuración garantiza que los usuarios reciben automáticamente actualizaciones de parche, mientras que las actualizaciones menores y mayores requieren aprobación manual.

  • Estrategia de Reversión de Versión: Utiliza identificadores de prelanzamiento para mantener opciones de reversión claras. Esta aproximación permite revertir a una versión anterior si ocurren problemas, mientras se mantiene la consistencia en la versión en todos los canales.

Estas mejores prácticas facilitan la gestión de actualizaciones, probar nuevas características y mantener la estabilidad en el proceso de despliegue de tu aplicación.

sbb-itb-f9944d2

Despliegue de Actualizaciones OTA

Una vez que esté configurada la gestión de versiones, siga estos pasos para desplegar actualizaciones OTA de manera efectiva.

Preparación de Actualizaciones

Comience actualizando la versión en package.json y capacitor.config.json. Asegúrese de que la versión siga el formato SemVer (MAJOR.MINOR.PATCH):

  • Bug Fix: Incrementar el número de PATCH (por ejemplo, 1.0.1 → 1.0.2)
  • Nueva Funcionalidad: Incrementar el número de MINOR (por ejemplo, 1.0.0 → 1.1.0)
  • Cambio Roto: Incrementar el número de MAJOR (por ejemplo, 1.0.0 → 2.0.0)

Prueba exhaustivamente tu compilación y confirma que la aplicación se comunica con el servidor mediante notifyAppReady.

A continuación, decide sobre tu estrategia de actualización. Puedes elegir entre:

  • Actualización Automática: Aplicar automáticamente los requisitos de versión mínima.
  • Manual Control: Especifica requisitos de versión exactos para actualizaciones.
  • Channel-Based: Utiliza canales para pruebas y lanzamientos escalonados.

Capgo CLI Comandos de Actualización

Utiliza Capgo’s CLI para desplegar tu actualización con facilidad. Aquí está cómo:

# Initialize Capgo in your project
npx @capgo/cli@latest init [apikey]

# Upload your update bundle
npx @capgo/cli bundle upload [appId]

# Add a new distribution channel
npx @capgo/cli channel add [channelName] [appId]

Capgo garantiza un despliegue seguro con cifrado de extremo a extremo y gestión de claves seguras.

“@Capgo is a smart way to make hot code pushes (and not for all the money in the world like with @AppFlow) 🙂”

Una vez desplegado, puedes monitorear actualizaciones a través del panel de control de Capgo. Las actualizaciones suelen llegar a los usuarios en minutos después de que abran la aplicación. El proceso funciona de la siguiente manera:

  • La aplicación verifica actualizaciones.
  • Descarga la actualización en segundo plano.
  • Marca la nueva versión como activa cuando el usuario sale de la aplicación.
  • Aplica la actualización en la próxima ejecución.

Para despliegues a nivel empresarial, es posible que desee integrar la automatización de CI/CD.

“Practicamos el desarrollo ágil y @Capgo es crucial en la entrega continua a nuestros usuarios!”

Resolución de Problemas y Consejos

Problemas de Gestión de Versiones

La gestión de versiones semánticas en Capgo puede complicar a veces los despliegues de actualizaciones. Para evitar sobreescribir su trabajo de desarrollo, configure lo siguiente en su capacitor.config.json archivo:

{ 
  "plugins": { 
    "CapacitorUpdater": { 
      "autoUpdate": false 
    } 
  } 
}

Si una actualización falla, aquí está qué puede hacer:

  • Establecer autoUpdate a false durante el desarrollo.
  • Desinstalar la aplicación.
  • Reinstálalo con la versión corregida.
  • Rehabilita las actualizaciones automáticas una vez que todo esté establecido.

Para actualizaciones de versión mayor, utiliza el disableAutoUpdateBreaking flag y escucha el majorAvailable evento para manejar las actualizaciones de manera adecuada:

CapacitorUpdater.addListener('majorAvailable', (info) => {
  console.log(`Major update available: ${info.version}`);
  // Add your update prompt logic here
});

Al combinar estas configuraciones con buenas prácticas de equipo, puedes mantener la consistencia de la versión y reducir errores.

Control de Versión de Equipo

Una vez que se gestionan las actualizaciones individuales, es crucial que los equipos establezcan prácticas de control de versión sólidas.

“Testing each change before merging it with the main repository will reinforce stability and avoid costly errors” [4]

La prueba de cada cambio antes de fusionarlo con el repositorio principal reforzará la estabilidad y evitará errores costosos"

  • Aquí te presentamos algunos métodos para asegurar la consistencia: Define una rama como el actuar como la fuente de verdad.
  • Utilice canales separados Capgo para entornos de desarrollo y producción.
  • Automatice subidas de versiones a través de flujos de trabajo CI/CD.
  • Documente todos code cambios con mensajes de commit claros y detallados.

Para equipos más grandes, la siguiente matriz de gestión de versiones puede ayudar a organizar actualizaciones:

Entorno Canales Actualización automática Patrón de versión
Desarrollo dev Deshabilitado 0.x.x
Entorno de pruebas beta Habilitado x.x.x-beta
Producción estable Habilitado x.x.x

Pasos de recuperación de actualizaciones

Incluso con precauciones, las actualizaciones pueden fallar. Si eso sucede, sigue estos pasos de recuperación:

  1. Vuelve a un paquete estable anterior.
  2. Incrementar los números de versión para cualquier nueva corrección (nota: los números de versión no pueden ser reutilizados después de la eliminación) [2].
  3. Verificar actualizaciones durante el arranque de la aplicación para asegurarse de que funcionen como se espera.

Capgo’s actualizador está diseñado para manejar interrupciones. Por ejemplo, si el servidor no está disponible o una actualización ha sido eliminada, la aplicación sigue funcionando normalmente [3]Además, las solicitudes de red fallidas se reintentan automáticamente durante el próximo arranque de la aplicación [3]Esta resistencia integrada minimiza el tiempo de inactividad y garantiza operaciones más suaves

Resumen

La combinación de la versión semántica con Capgo ha hecho que las actualizaciones OTA para las aplicaciones Capacitor sean más eficientes. Con 947,6 millones de actualizaciones entregadas y 1.400 aplicaciones de producción que utilizan este sistema [1]Los procesos de implementación han vuelto un 81% más eficientes [1]Este conjunto de configuración permite a los desarrolladores enviar actualizaciones rápidamente y de manera controlada, evitando los retrasos de las tiendas de aplicaciones

Esto es lo que dicen los desarrolladores:

“Hemos lanzado actualizaciones OTA de Capgo In producción para nuestra base de usuarios de +5000. Estamos viendo una operación muy suave, casi todos nuestros usuarios están actualizados en minutos después de que se despliegue la OTA en @Capgo.” - colenso [1]

El sistema de versionado MAJOR.MINOR.PATCH facilita la comunicación de cambios importantes, nuevas características y correcciones de errores [5]Esto es especialmente útil para los equipos que gestionan varias versiones cada semana a través de la plataforma de Capgo

La solución cifrada de Capgo integra con herramientas CI/CD, también es asequible - reduce costos hasta $26,100 en cinco añosSus canales personalizables garantizan que las actualizaciones lleguen a los usuarios adecuados en el momento adecuado [1]“Practicamos el desarrollo ágil y @__CAPGO_KEEP_0__ es crucial para entregar continuamente a nuestros usuarios!” - Rodrigo Mantica

Sigue adelante desde Cómo usar la versión semántica con actualizaciones OTA de Capgo [1]

Keep going from How to Use Semantic Versioning with Capgo OTA Updates

Cómo usar la versión semántica con actualizaciones OTA de __CAPGO_KEEP_0__ How to Use Semantic Versioning with Capgo OTA Updates Si estás utilizando __CAPGO_KEEP_0__ para planificar el rollback y el control de versiones, conecta con Reversiones para el detalle de implementación en Reversiones, Objetivo de Versión para el detalle de implementación en Objetivo de Versión, Comportamiento de Actualización para el detalle de implementación en Comportamiento de Actualización, paquete para el detalle de implementación en paquete, y Capgo Actualizaciones en Vivo para el flujo de trabajo del producto en Capgo Actualizaciones en Vivo.

Actualizaciones en vivo para aplicaciones Capacitor

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

Empezar Ahora

Últimas noticias de nuestro Blog

Capgo te brinda las mejores perspectivas que necesitas para crear una aplicación móvil verdaderamente profesional.