Capgo utiliza 2 variables principales para gestionar las versiones en su aplicación Capacitor:
- Versión nativa
- Versión de JavaScript
Todas las opciones de versión se deciden en el lado del servidor por Capgo.
Sistema de versionado
Para gestionar la versión Capgo utilice el sistema SemVer, leer más sobre él aquí.
Versiones
¿Dónde Capgo encontrar la versión para comparar?
Puede sobreescribir este comportamiento estableciendo la clave de versión en
capacitor.config.jsonarchivo documentación aquí Se ignorará la versión nativa para todas las plataformas.
IOS
En IOS la variable se establece en su 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 su Info.plist archivo.
Android
En Android, la var se establece en su 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 su package.json bajo la clave version
De lo contrario, debes proporcionarla en el comando de carga.
Comportamiento por defecto
Esta es la forma en que 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 descargue tu aplicación Ionic por primera vez y abra la aplicación, se contactará 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 su 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 del paquete nativo (1.2.3) es MAYOR que la versión del paquete Capgo (2.2.3), Capgo envía “no es necesario actualizar”.
Otras configuraciones
Desactivar la actualización automática nativa
Si cambias esta configuración a falso, Capgo considerará siempre la fuente más confiable de la versión.
- The native version (1.2.4) is higher than Capgo version (1.2.3)
La versión nativa (1.2.4) es mayor que la versión de Capgo (1.2.3)
__CAPGO_KEEP_0__ envía su versión al usuario.
Desactivar la estrategia de actualización automática Hay una serie de estrategias que puedes elegir. Puedes aprender más sobre ellas
aquí
Versión del paquete de JavaScript npx @capgo/cli@latest bundle upload --channel production
La versión del paquete de JavaScript es la que envías cuando haces --bundle 1.2.3, Capgo will get the bundle version from your package.json __CAPGO_KEEP_0__ obtendrá la versión del paquete desde tu
After su app Ionic ha instalado una versión de Capgo, esta es la versión que se comparará para:
- La versión de su paquete JavaScript (1.2.3) es menor que la versión de Capgo del paquete (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 Capgo, se aplica la
Disable auto downgrade under nativecondición. - Si la versión del paquete nativo es mayor en versión principal que la versión Capgo, se aplica la
Disable auto upgrade above majorcondición.
Actualización de la tienda de aplicaciones
Cuando publique su app Capacitor JS en la Tienda de Aplicaciones, lo que sucede es simple.
Su usuario recibirá la nueva versión desde la tienda y eliminará todas las actualizaciones locales en su app por defecto.
Si desea cambiar ese comportamiento, necesita configurar la configuración resetWhenUpdate lea más sobre ello aquí
Esto solo puede cambiarse en el lado de la 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.
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 bypassará todos los ajustes realizados anteriormente.
Aprende más sobre esto en el artículo a continuación.