Capgo utiliza 2 variables principales para gestionar versiones en tu Capacitor app:
- Versión nativa
- Versión de JavaScript
Todas las opciones de versión se deciden de forma server-side por Capgo.
Sistema de versionado
Para administrar la versión Capgo utilice el sistema SemVer. Lea la Especificación de SemVer o verifique la compatibilidad de actualización de Capgo con el Prueba de Semver.
Versiones
¿Dónde Capgo encuentra la versión para comparar?
Puede sobrescribir este comportamiento estableciendo la clave de versión en
capacitor.config.jsonarchivo Documentación Se ignorará la versión nativa para todas las plataformas.
IOS
In IOS, la variable se establece en tu proyecto aquí ios/App/App/Info.plist bajo la claveCFBundleShortVersionString o ios/App/App.xcodeproj/project.pbxproj bajo la clave MARKETING_VERSION si MARKETING_VERSION se estableció en tu Info.plist archivo.
En Android
In Android, la variable se establece en tu proyecto aquí android/app/build.gradle bajo la clave defaultConfig.versionName
JavaScript ( Capgo versión del paquete )
En JavaScript, la variable se puede establecer en tu package.json bajo la clave version
En caso contrario, debes proporcionarlo en el comando de carga.
Comportamiento por defecto
Esto es cómo el canal Capgo se comportará si no cambias ninguna configuración.
Este comportamiento se basará en el canal único que has establecido como predeterminado.
Cuando se realiza una instalación fresca de tu aplicación Capacitor
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 del paquete nativo (1.2.3) es menor que la versión del paquete Capgo (1.2.4), Capgo envía el paquete al usuario.
- La versión del paquete nativo (1.2.3) es igual a la versión del paquete Capgo (1.2.3), Capgo envía 'no es necesario actualizar'.
- La versión del paquete nativo (1.2.4) es mayor que la versión del paquete Capgo (1.2.3), Capgo envía 'no es necesario actualizar'.
- La versión nativa del paquete (1.2.3) es MAYOR menor que la versión del paquete Capgo (2.2.3), Capgo envía “no es necesario actualizar”.
Otras configuraciones
No habilitar la actualización automática bajo nativo
Si cambias esta configuración a falso, Capgo considerará siempre la fuente confiable de la versión.
- La versión nativa (1.2.4) es superior a la versión Capgo (1.2.3)
Capgo envía su versión al usuario.
__CAPGO_KEEP_0__ envía su versión al usuario.
Hay varias estrategias de las que puedes elegir. Puedes aprender más sobre ellas here
Versión de paquete de JavaScript
La versión del paquete JavaScript es la que envías cuando haces 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 su package.json archivo (dentro de la clave de versión).
Después de que tu aplicación Ionic ha instalado una versión de Capgo, esta es la versión que se comparará para:
- Su versión de paquete JavaScript (1.2.3) es menor que la versión de paquete Capgo (1.2.4), Capgo envía su paquete al usuario.
Con algunas condiciones de guardia:
- Si la versión nativa del paquete es mayor que la versión Capgo, el
Disable auto downgrade under nativeLa condición se aplica. - Si la versión del paquete nativo es menor que la versión Capgo en el nivel mayor,
Disable auto upgrade above majorLa condición se aplica.
actualización de la tienda de aplicaciones.
Cuando pubiques tu aplicación Capacitor de JavaScript 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 Saber más sobre ello Aquí
Esta configuración solo se puede cambiar en el lado del aplicación, no desde la nube como otros ajustes.
Otros ajustes
Después de todo este comportamiento, puedes tener arriba algunos específicos uno relacionado con el dispositivoID.
In 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 saltará todos los ajustes realizados anteriormente.
Saber más sobre ello en el artículo de abajo.
Sigue adelante desde cómo funciona la versión en Capgo
Si estás utilizando Cómo funcionan las versiones en Capgo para planificar el trabajo de plugins nativos, conecte 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, Agregar o Actualizar Plugins para los detalles de implementación en Agregar o Actualizar Plugins, Alternativas de Plugins de Ionic Enterprise para el flujo de trabajo del producto en alternativas de Ionic Enterprise Plugin Capgo Compilaciones Nativas para el flujo de trabajo del producto en compilaciones nativas de Capgo.