Los campos de versión / compilación para una aplicación iOS incluyen:
"Versión" CFBundleShortVersionString (String - iOS, OS X) especifica el número de versión de lanzamiento del paquete, que identifica una iteración lanzada de la aplicación. El número de versión de lanzamiento es una cadena compuesta por tres números enteros separados por puntos.
"Build" CFBundleVersion (String - iOS, OS X) especifica el número de versión de compilación del paquete, que identifica una iteración (publicada o no publicada) del paquete. El número de versión de compilación debe ser una cadena compuesta por tres enteros separados por puntos no negativos, siendo el primer entero mayor que cero. La cadena solo debe contener caracteres numéricos (0-9) y punto (.). Los ceros iniciales se truncan de cada entero y se ignorarán (es decir, 1.02.3 es equivalente a 1.2.3). Esta clave no es localizable.
"Número de versión de iTunes Connect" : número de versión que especifica al crear una nueva versión de la aplicación en iTunes Connect.
Mi pregunta es:
¿Qué números de versión / compilación se deben incrementar cuando se carga una nueva versión de la aplicación en iTunes Connect y / o se lanza a la App Store?
¿Puede la "versión" CFBundleShortVersionString
o la "compilación" CFBundleVersion
permanecer igual entre las actualizaciones de la aplicación?
Puntos adicionales para las fuentes de Apple o los mensajes de error exactos que iTunesConnect muestra al cargar una versión / número de compilación no válido.
Nota de Android / Google Play:
La discusión que suscita esta pregunta es que la "versión" pública de una aplicación de Android en Google Play Store no necesita incrementarse y no está validada de ninguna manera . El android:versionName
puede seguir siendo el mismo entre los lanzamientos, mejorar, reducir, o ser cualquier cadena aleatoria en lugar de algo que parece ser un "número de versión" válido.
android:versionName
- Un valor de cadena que representa la versión de lanzamiento del código de la aplicación, como se debe mostrar a los usuarios.El valor es una cadena para que pueda describir la versión de la aplicación como una
<major>.<minor>.<point>
cadena o como cualquier otro tipo de identificador de versión absoluta o relativa.
Diferencia entre versionName y versionNumber en Android
Mientras que android:versionCode
se obliga a que sea un entero que se incrementa en el lanzamiento.
Documentación de Apple
Como se señaló en la respuesta recientemente aceptada , Apple ha publicado recientemente una Nota técnica que detalla su esquema de número de versión y compilación:
Nota técnica de Apple TN2420 - Números de versión y números de compilación