Cuándo liberar una versión mayor
La versión puede ser difícil de manejar, generalmente deseas enviar una actualización mayor cuando aparece un cambio importante para los usuarios.
Pero la versión no está hecha para eso, la versión del tienda de aplicaciones es diferente de la versión nativa.
La versión nativa está diseñada para manejar cambios que rompen la aplicación en la code
En iOS, por ejemplo, iOS 16 es el store version de Apple, pero la versión de code es 20A5283p (no parecen usar SemVer allí)
Ahora está claro que no los mezclamos y los usamos para lo que están hechos!
Lanzamiento mayor
En tu aplicación de Capacitor, un lanzamiento mayor es necesario cuando sucede un cambio disruptivo. Por ejemplo, un nuevo destino de iOS (15 a 16), o una nueva versión de Capacitor (3 a 4), o un plugin (1.2 a 2.0) que utilizas ha sido actualizado a una versión mayor.
Este cambio significa que todas las herramientas deben estar alineadas para manejar el cambio disruptivo.
Por eso Capgo sigue este sistema.
Así que si lanzas una versión mayor, Capgo no la enviará a un usuario que no la tenga instalada desde la tienda.
Este comportamiento se puede personalizar. Puedes aprender más sobre ello aquí
Versiones
Donde Capgo encuentra la versión para comparar
IOS
Se utilizará por Capgo para comparar con la versión de JavaScript y encontrar la actualización mayor
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.
Puede sobrescribir este comportamiento estableciendo la clave de versión en
capacitor.config.jsonarchivo documentación aquí
Android
Se utilizará por Capgo para comparar con la versión de JavaScript y encontrar actualizaciones importantes
en Android, la variable se establece en tu proyecto aquí android/app/build.gradle bajo la clave defaultConfig.versionName
Puedes sobreescribir este comportamiento estableciendo la clave de versión en
capacitor.config.jsonarchivo documentación aquí
JavaScript
Se utilizará por Capgo para comparar con la versión nativa y encontrar actualizaciones importantes
en JavaScript, la variable se establece en tu proyecto aquí package.json bajo la clave version
Ejemplo
Su aplicación Ionic se está publicando actualmente con la versión 1.2.3 con Capacitor 3
Está actualizando a capacitor 4.
Necesita actualizar el número de versión a 2.2.3, luego todos sus paquetes incluirán Capgo con notificación de este gran cambio.
Cuando publique esta versión en Capgo y la Tienda de Aplicaciones.
Todos los siguientes actualizaciones en vivo en Capgo 2.2.4 nunca serán enviadas al usuario con 1.2.3 Sólo con 2.2.3 Si sigue este patrón, no necesita preocuparse más, todo está bien gestionado.
actualizaciones
Si no sigo esta guía
En este caso, eso significa que debes enviar tu nueva aplicación con Capacitor 4 a Apple y Google, pero no a Capgo.
Luego debes esperar que el 100% de tus usuarios, tengan la aplicación o al menos el 90%, esto tomará meses, probablemente.
Mientras tanto, no puedes enviar ninguna actualización con Capgo, ya que los usuarios antiguos no pueden obtener la nueva versión. No tienes una forma de seleccionar solo a algunos usuarios para que reciban la actualización.
Sigue adelante desde Cómo liberar una versión mayor en capgo
Si estás utilizando Cómo liberar una versión mayor en capgo para planificar el rollback y el control de versiones, conecta con Rollbacks para obtener detalles de implementación en Rollbacks, Version Targeting para obtener detalles de implementación en Version Targeting, Actualizar Comportamiento para el detalle de implementación en Actualizar Comportamiento, paquete para el detalle de implementación en paquete, y Capgo Actualizaciones en Vivo para el flujo de trabajo del producto en Capgo Actualizaciones en Vivo.