Pasar al contenido principal
Guía

Cómo funcionan las versiones en Capgo

Entiende cómo Capgo gestiona las versiones en tu aplicación Capacitor, y úsalo al máximo. Aprende el significado de mayor, menor y parche.

Créditos del artículo

Martin Donadieu

Escritor

Valeria

Revisor

Jordan

Editor

Cómo funcionan las versiones en Capgo

Capgo utiliza 2 variables principales para gestionar versiones en tu Capacitor aplicación:

  • Versión nativa
  • Versión de JavaScript
Capacitor sistema de actualización

Todas las opciones de versión se deciden de forma remota por Capgo.

Sistema de versionado

Para gestionar la versión Capgo utiliza el sistema SemVer. Lee la especificación de SemVer o verifica la compatibilidad de Capgo con la actualización utilizando el Semver Tester.

Versiones

¿Dónde Capgo encuentra la versión para comparar?

Puedes sobreescribir este comportamiento estableciendo la clave de versión en capacitor.config.json archivo documentación aquí La versión nativa se ignorará para todas las plataformas.

IOS

En IOS, la variable se establece en tu proyecto aquí ios/App/App/Info.plist bajo la claveCFBundleShortVersionString o ios/App/App.xcodeproj/project.pbxproj contexto: Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de padre `alternatives_cta_questions`). Página/área: Comparación de alternativas de actualización en vivo de Capacitor. Papel: Párrafo de marketing o legal largo. Visto en: página alternatives.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `alternatives_cta_questions` (Preguntas de CTAs de alternativas). | Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de padre `appflow_cta_questions`). Página/área: Copia de marketing de comparación/migración de Appflow. Papel: Párrafo de marketing o legal largo. Visto en: página ionic-appflow.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `appflow_cta_questions` (Preguntas de CTAs de Appflow). | Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de padre `capwesome_cta_questions`). Página/área: Página de comparación de Capawesome. Papel: Párrafo de marketing o legal largo. Visto en: página capwesome.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `capwesome_cta_questions` (Preguntas de CTAs de Capwesome). | Fragmento de texto HTML de una cadena de UI de Capgo más larga (clave de padre `consulting_faq_subtitle`). Página/área: Página de servicios de consultoría. Papel: Título de sección o etiqueta. Visto en: página consulting.astro. Preservar términos de producto y marca de Capgo y términos de desarrollador exactamente. Clave de mensaje `consulting_faq_subtitle` (Título de subtítulo de preguntas frecuentes de consultoría). | Página/área: Copia de marketing de comparación/migración de Appflow. Papel: Etiqueta de UI corta o elemento de navegación. Visto en: página ionic-appflow.astro, página ionic-enterprise-plugins.astro, página soluciones/ionic-enterprise-plugins.astro. Clave de mensaje `appflow_plugins_or` (Appflow Plugins Or). MARKETING_VERSION bajo la clave MARKETING_VERSION si Info.plist se estableció en tu archivo de configuración aquí

Android

En Android, la var se establece en tu proyecto aquí android/app/build.gradle Bajo la clave defaultConfig.versionName

JavaScript ( Capgo versión del paquete )

En JavaScript, la var se puede establecer en tu package.json Bajo la clave version De lo contrario, debes proporcionarlo en el comando de carga.

Comportamiento predeterminado

Esto es cómo Capgo canal se comportará si no cambias ninguna configuración.

Este comportamiento se basará en el canal único que hiciste predeterminado.

Cuando la instalación fresca de tu Capacitor aplicación

Cuando el usuario descargó tu aplicación Ionic por primera vez y abre la aplicación, se contacta con el servidor Capgo.

Actualmente, 4 resultados pueden ocurrir:

  • La versión nativa del paquete (1.2.3) es menor que la versión Capgo del paquete (1.2.4), Capgo envía su paquete al usuario.
  • La versión nativa del paquete (1.2.3) es igual a la versión Capgo del paquete (1.2.3), Capgo envía “no es necesario actualizar”.
  • La versión nativa del paquete (1.2.4) es mayor que la versión Capgo del paquete (1.2.3), Capgo envía “no es necesario actualizar”.
  • La versión nativa del paquete (1.2.3) es mayor en versión principal que la versión Capgo del paquete (2.2.3), Capgo envía “no es necesario actualizar”.

Otras configuraciones

Deshabilitar la descarga automática bajo nativo

Si cambias esta configuración a falso, Capgo considerará siempre la fuente más confiable de la versión. Luego el comportamiento se convierte en :

  • La versión nativa (1.2.4) es mayor que la versión Capgo (1.2.3)

Capgo envía su versión al usuario.

Deshabilitar la estrategia de actualización automática

Existen varias estrategias que puedes elegir. Puedes aprender más sobre ellas aquí

Versión del paquete de JavaScript

La versión del paquete de JavaScript es la que se envía cuando se hace npx @capgo/cli@latest bundle upload --channel production

Si no utilizaste la opción --bundle 1.2.3, Capgo obtendrá la versión del paquete desde tu package.json archivo (en la clave de versión).

Después de que tu aplicación de Ionic haya instalado una versión de Capgo, esta es la versión que se comparará para:

  • Su versión de paquete de JavaScript (1.2.3) es menor que la versión de paquete de Capgo (1.2.4), Capgo envía su paquete al usuario.

Con algunas condiciones de guardia:

  • Si la versión del paquete nativo es mayor que la versión de Capgo, se aplica Disable auto downgrade under native Si la versión del paquete nativo es mayor en versión principal que la versión de __CAPGO_KEEP_0__, se aplica
  • Si la versión del paquete nativo es mayor en versión principal que la versión de Capgo, se aplica Disable auto upgrade above major Se aplica la condición.

Actualización de la tienda de aplicaciones

Cuando publicas tu aplicación de JS Capacitor en la Tienda de Aplicaciones, lo que sucede es simple.

Tu usuario obtendrá la nueva versión desde la tienda y eliminará todas las actualizaciones locales en su aplicación por defecto.

Si deseas cambiar ese comportamiento, debes configurar la configuración resetWhenUpdate Lee más sobre ello aquí

Esto solo se puede cambiar en el lado de la aplicación, no desde la nube como otros ajustes.

Otros ajustes

Después de todo este comportamiento, puedes tener encima algunos específicos relacionados con el dispositivoID.

En Capgo, puedes decidir sobreescribir el comportamiento para cada dispositivoID.

Puedes vincular un dispositivoID a:

  • una versión de paquete específica
  • un canal específico

Esto ignorará todas las configuraciones realizadas anteriormente.

Aprende más sobre ello en el artículo a continuación.

Sigue adelante desde Cómo funcionan las versiones en Capgo

Si estás utilizando Cómo funcionan las versiones en Capgo para planificar el trabajo de plugin nativo, conecta con Capgo Directorio de Plugins para el flujo de trabajo del producto en Capgo Directorio de Plugins, Capacitor Plugins por Capgo para los detalles de implementación en Capacitor Plugins por Capgo, Plugins o Actualizaciones de Plugins para los detalles de implementación en Plugins o Actualizaciones de Plugins, Alternativas de Plugins de Ionic Enterprise para el flujo de trabajo del producto en Alternativas de Plugins de Ionic Enterprise, y Nuevas Construcciones Nativas Capgo para el flujo de trabajo del producto en Nuevas Construcciones Nativas Capgo.

Actualizaciones en vivo para aplicaciones de 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.

Apoyo humano de Martin

Iniciar ahora

Últimas noticias de nuestro Blog

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