Pasar al contenido principal

Cómo utilizar la numeració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.

How to Use Semantic Versioning with Capgo Actualizaciones OTA

¿Quieres simplificar app updates y control de versiones? La versión semántica (SemVer) combinada con CapgoLos actualizaciones Over-The-Air (OTA) de hacen que el manejo Capacitor apps easier and faster. Here’s how:

  • Bases de la versión semántica: Las versiones utilizan el formato MAJOR.MINOR.PATCH:

    • MAJOR: Para cambios importantes.
    • MINOR: Para nuevas características compatibles hacia atrás.
    • PATCH: Para correcciones 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 de API.
    4. Utilice Capgo CLI subir y cargar actualizaciones en paquetes.
  • para empaquetar y subir actualizaciones.:

    • Utilice canales separados (por ejemplo, “beta” para pruebas, “producción” para lanzamientos estable).
    • Utilice canales separados (por ejemplo, "beta" para pruebas, "producción" para lanzamientos estable).
    • Opciones de reversión 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 rollouts de etapas de manera efectiva.

Versión Semántica | Nivel Up

Capgo Setup Guide

Capgo Live Update Interfaz de la Consola

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

Pasos de Configuración Inicial

Comience instalando el Capgo plugin de actualizador:

npm install @capgo/capacitor-updater  
npx cap sync

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

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

archivo utilice un formato de versión semántica:

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

(actualice el Capgo con su API clave:

npx @capgo/cli@latest init YOUR_API_KEY

Tabla de Referencia Rápida:

Setup Phase Acción Clave Paso de Verificación
Instalación Instalar plugin y sincronizar Comprobar package.json
Configuración Establecer números de versión Verificar en todos los archivos
Iniciación Conectar con la clave API Estado de conexión de prueba
Construir Crear paquete inicial Confirmar éxito de subida

Integración de control de versiones

Capgo funciona bien con plataformas de CI/CD, lo que permite 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, notifica al plugin nativo sobre el estado del paquete en tu archivo principal de la aplicación:

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

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

Usar versionamiento semántico con Capgo

Gestión de Número de Versión

Capgo utiliza la versión semántica (SemVer) para gestionar las versiones de la aplicación, con formato MAJOR.MINOR.PATCH. Aquí está cómo funciona:

  • Versión Mayor (X.0.0): Incrementa el número MAJOR para cambios que rompen la compatibilidad.
  • Versión Menor (1.X.0): Incrementar el número de MINOR para nuevas características compatibles.
  • Versión de parche (1.0.X): Incrementar 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 rotos API Requiere aprobación manual
Menor (1.X.0) Para nuevas características Configurable en Capgo
Parche (1.0.X) Para correcciones de errores Suele ser automático

Sigue las reglas de SemVer para simplificar la gestión de versiones y asegurar actualizaciones más suaves a través de tus canales de despliegue.

Directrices de Control de Versión

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

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

    • Utiliza un canal de ‘pruebas’ (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.
    • Añada canales específicos de plataforma (por ejemplo, “ios-hotfix” con la versión 1.2.1) al abordar problemas específicos de plataforma.
  • Política de Actualización de Configuración: Controla cómo se aplican las actualizaciones utilizando las opciones de configuración de Capgo.

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

    Esta 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: Use pre-release identifiers to maintain clear rollback options. This approach allows you to revert to a previous version if problems occur, while keeping versioning consistent across all channels.

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

sbb-itb-f9944d2

sbb-itb-f9944d2

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

Preparación de Actualización

Preparación de Actualización package.json y capacitor.config.jsonSeguro que la versión sigue el formato SemVer (MAJOR.MINOR.PATCH):

  • Bug Fix: Incrementa el número de parche (por ejemplo, 1.0.1 → 1.0.2)
  • Nueva Funcionalidad: Incrementa el número de versión menor (por ejemplo, 1.0.0 → 1.1.0)
  • Cambio significativo: Incrementa el número de versión mayor (por ejemplo, 1.0.0 → 2.0.0)

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

Próximo, decide tu estrategia de actualización. Puede elegir entre:

  • Auto-Update: Aplica automáticamente los requisitos de versión mínima.
  • Control Manual: Establece requisitos de versión exactos para las actualizaciones.
  • Channel-Based: Utilice canales para pruebas y lanzamientos escalonados.

Comandos de Actualización de Capgo CLI

Utilice Capgo’s CLI para desplegar su 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 es una forma inteligente de realizar empujes calientes code (y no por todo el dinero del mundo como con @AppFlow) 🙂”

Una vez desplegada, puede 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 de nivel empresarial, es posible que desee integrar la automatización de CI/CD.

“Practicamos el desarrollo ágil y @Capgo es crucial para entregar de manera 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 para false durante el desarrollo.
  • Desinstalar la aplicación.
  • Reinstalarla con la versión corregida.
  • Re-enable auto-updates once everything is stable.

Para actualizaciones de versión mayor, utilice la disableAutoUpdateBreaking flag y escuche el majorAvailable event to handle updates properly:

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, puede mantener la consistencia de la versión y reducir errores.

Control de Versión del Equipo

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

“La prueba de cada cambio antes de fusionarlo con el repositorio principal reforzará la estabilidad y evitará errores costosos” [4]

Aquí hay algunas formas de garantizar la consistencia:

  • Define una rama como el repositorio principal para actuar como fuente de verdad.
  • Utilice canales separados Capgo para entornos de desarrollo y producción.
  • Automatice subidas de versiones mediante 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 Auto-Update Patrón de versión
Desarrollo dev Deshabilitado 0.x.x
Pruebas beta Habilitado x.x.x-beta
Producción stable Habilitado x.x.x

Actualizar Pasos de Recuperación

Aunque se tomen precauciones, las actualizaciones pueden fallar. Si eso sucede, sigue estos pasos de recuperación:

  1. Volver a una versión estable anterior.
  2. Aumentar 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. Verify updates during app startup to ensure they work as expected.

Capgo’s updater 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 versión semántica, combinada 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 utilizando este sistema [1], los procesos de implementación han vuelto un 81% más eficientes. [1]. This setup allows developers to push updates quickly and in a controlled manner, bypassing app store delays.

Aquí lo que dicen los desarrolladores:

“Desplegamos actualizaciones OTA” Capgo actualizaciones OTA en 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 de que se despliega 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]Este es especialmente útil para equipos que gestionan varias versiones cada semana a través de la plataforma de Capgo.

Capgo’s solución cifrada, integrada con herramientas CI/CD, también es asequible - reduciendo costos hasta $26,100 en cinco años [1]. Sus canales personalizables garantizan que las actualizaciones lleguen a los usuarios adecuados en el momento adecuado.

“Practicamos el desarrollo ágil y @Capgo es crucial en la entrega continua a nuestros usuarios!” - Rodrigo Mantica [1]

Sigue leyendo desde Cómo usar la versión semántica con Capgo actualizaciones OTA

If estás utilizando Cómo usar la versión semántica con Capgo actualizaciones OTA para planificar el rollback y el control de versiones, conecta con Reversiones para los detalles de implementación en Reversiones, Objetivos de versión para los detalles de implementación en la versión de destino Comportamiento de Actualización Para el detalle de implementación en Comportamiento de Actualización. bundle para los detalles de implementación en el paquete para los detalles de implementación en paquete, y también con las actualizaciones de Capgo en vivo, Capgo for the product workflow in Capgo Live Updates.

Actualizaciones en vivo para aplicaciones Capacitor

Cuando un bug en la capa web está activo, 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.

El soporte humano de Martin

Iniciar Ahora

Últimas noticias de nuestro Blog

Capgo le da las mejores perspectivas que necesita para crear una aplicación móvil verdaderamente profesional.