Saltar al contenido principal

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

Aprende 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

Quieres simplificar actualizaciones de aplicaciones ¿y control de versiones? Semántica de versiones (SemVer) combinado con Capgolas actualizaciones de Over-The-Air (OTA) de Capacitor hace que gestionar aplicaciones sea más fácil y rápido. Aquí está cómo hacerlo:

  • Basics de la Semántica de versiones: Las versiones utilizan el formato MAJOR.MINOR.PATCH:

    • MAJOR: Para cambios importantes.
    • MINOR: Para nuevas características que son 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 Setup 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 las actualizaciones y utilice canales para gestionar los despliegues de etapas de manera efectiva.

Versión Semántica | Nivel Up

Capgo Configuración de la Guía

Capgo Dashboard de Actualizaciones en Vivo

Here’s how to set up Capgo for managing OTA updates and version control with ease.

Comience instalando el

__CAPGO_KEEP_0__ plugin de actualizador Capgo:

npm install @capgo/capacitor-updater  
npx cap sync

Asegúrese de que su capacitor.config.json context

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

utilice un formato de versión semántica:

  • package.json Para proyectos más antiguos, actualice los detalles de la versión en los siguientes lugares: version (busque el
  • android/app/build.gradle campo) versionName)
  • ios/App/App.xcodeproj/project.pbxproj (actualice CURRENT_PROJECT_VERSION)

Once configured, initialize Capgo with your API key:

npx @capgo/cli@latest init YOUR_API_KEY

Una vez configurado, inicie __CAPGO_KEEP_0__ con su clave __CAPGO_KEEP_1__:

Tabla de Referencia Rápida: Fase de Configuración Verificación de paso
Instalación Instalar plugin y sincronizar Comprobar package.json
Configuración Establecer números de versión Verificar en todos los archivos
Inicialización Conectar con la clave API Comprobar el estado de la conexión
Crear Crear el paquete inicial Confirmar éxito de subida

Integración de Control de Versión

Capgo se integra bien con plataformas CI/CD, lo que hace que actualizaciones automáticas sigan siendo simples. 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 su aplicación esté lista para despliegues OTA suaves y gestión de versiones.

Usando la versión semántica 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, 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): Aumenta 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
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 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 Versiones por Canal: 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 de plataforma (por ejemplo, ‘ios-hotfix’ con la 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"
        }
      }
    }

    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: Utiliza identificadores de prelanzamiento para mantener opciones de reversión claras. Esta aproximación te permite revertir a una versión anterior si ocurren problemas, mientras se mantiene la versión consistente en todos los canales.

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

sbb-itb-f9944d2

Despliegue de Actualizaciones OTA

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

Preparación de Actualizaciones

Comienza actualizando la versión en y contexto: Página/área: Sitio web de marketing de Capgo. Rol: Etiqueta de IU corta o elemento de navegación. Visto en: página trust.astro. Clave de mensaje `y` (Y). capacitor.config.jsoncontexto: Página/área: Sitio web de marketing de Capgo. Rol: Etiqueta de IU corta o elemento de navegación. Visto en: página trust.astro. Clave de mensaje `__CAPGO_KEEP_0__.config.json` (Configuración de __CAPGO_KEEP_0__).

  • Corrección de errores: Incrementar el número de PATCH (por ejemplo, 1.0.1 → 1.0.2)
  • Nueva característica: Incrementar el número de MINOR (por ejemplo, 1.0.0 → 1.1.0)
  • Cambio disruptivo: 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.

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

  • Actualización automática: Aplicar automáticamente los requisitos de versión mínima.
  • Control Manual: Especifica requisitos de versión exactos para actualizaciones.
  • Basado en Canal: Utiliza canales para pruebas y despliegues de etapa.

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 de empresa, tal vez 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 las actualizaciones de despliegue. Para evitar sobreescribir su trabajo de desarrollo, configure los siguientes en su capacitor.config.json archivo:

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

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

  • Establecer autoUpdate a false contexto: Página/área: Página de producto de actualizaciones en vivo. Rol: Etiqueta de IU corta o elemento de navegación. Clave de mensaje `live_update_dynamic_label_to` (Etiqueta dinámica de actualización en vivo a).
  • durante el desarrollo.
  • 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 correctamente:

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 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.

“Es fundamental probar cada cambio antes de fusionarlo con el repositorio principal para reforzar la estabilidad y evitar errores costosos” [4]

A continuación, se presentan algunos métodos para garantizar la consistencia:

  • Define una rama como el repositorio principal ser la 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 los 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
Pruebas beta Habilitado x.x.x-beta
Producción estable Habilitado x.x.x

Pasos de recuperación de actualizaciones

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

  1. Volver a una versión estable anterior.
  2. Incrementar 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.

El actualizador de Capgo 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 que utilizan este sistema [1], los procesos de despliegue han vuelto 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 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 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 equipos que gestionan varias liberaciones cada semana a través de la plataforma de Capgo

de Capgo solución cifrada, integrada con herramientas CI/CD, también es asequible - reduce 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 para entregar continuamente a nuestros usuarios!” - Rodrigo Mantica [1]

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

Si estás utilizando Cómo utilizar la versión semántica con Capgo actualizaciones OTA para planificar el rollback y el control de versiones, conecta con Reversiones para la información de detalle de implementación en Reversiones, Alcance de Versión contexto: Página/área: Página de marketing de soluciones de Capgo. Rol: Título de sección o página. Visto en: página soluciones/versión-targeting.astro. Mensaje clave `solutions_version_targeting_title` (Título de Soluciones de Versión Targeting). | Página/área: Página de marketing de soluciones de Capgo. Rol: Etiqueta de interfaz de usuario corta o elemento de navegación. Visto en: página soluciones/versión-targeting.astro. Mensaje clave `solutions_version_targeting` (Soluciones de Versión Targeting). para la información de detalle de implementación en Alcance de Versión, Comportamiento de Actualización para la información de detalle de implementación en Comportamiento de Actualización, paquete Capgo Live Updates Capgo Actualizaciones en Vivo

Actualizaciones en vivo para aplicaciones Capacitor

When a web-layer bug is live, ship the fix through Capgo instead of waiting days for app store approval. Users get the update in the background while native changes stay in the normal review path.

Cuando un error de capa web está vivo, envíe la corrección a través de __CAPGO_KEEP_0__ 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.

contexto: Página/área: Sitio web de marketing de Capgo. Rol: Descripción de apoyo o meta descripción. Visto en: componente GetStarted.astro. Preservar términos de producto/marca y desarrollador de Capgo exactamente. Clave de mensaje `instant_updates_for_capacitor_apps_description` (Descripción de Actualizaciones Instantáneas para Aplicaciones de Capacitor).

Últimas noticias de nuestro Blog

Capgo te brinda las mejores herramientas para crear una aplicación móvil profesional de verdad.