Os campos de versão / compilação para um aplicativo iOS incluem:
"Versão" CFBundleShortVersionString (String - iOS, OS X) especifica o número da versão de lançamento do pacote, que identifica uma iteração lançada do aplicativo. O número da versão de lançamento é uma string composta por três inteiros separados por pontos.
"Build" CFBundleVersion (String - iOS, OS X) especifica o número da versão do build do pacote, que identifica uma iteração (lançada ou não) do pacote. O número da versão do build deve ser uma string composta por três inteiros não negativos separados por ponto, sendo o primeiro inteiro maior que zero. A string deve conter apenas caracteres numéricos (0-9) e ponto (.). Os zeros à esquerda são truncados de cada número inteiro e serão ignorados (ou seja, 1.02.3 é equivalente a 1.2.3). Esta chave não é localizável.
"Número da versão do iTunes Connect" : número da versão que você especifica ao criar uma nova versão do aplicativo no iTunes Connect.
Minha pergunta é:
Quais números de versão / compilação precisam ser incrementados quando uma nova versão do aplicativo é carregada no iTunes Connect e / ou lançada na App Store?
A "versão" CFBundleShortVersionString
ou a "construção" podem CFBundleVersion
permanecer iguais entre as atualizações do aplicativo?
Pontos extras para fontes da Apple ou as mensagens de erro exatas que o iTunesConnect exibe ao enviar um número de versão / compilação inválido.
Nota Android / Google Play:
A discussão que levanta esta questão é que a "versão" pública de um aplicativo Android na Google Play Store não precisa ser incrementada e não é de forma alguma validada. O android:versionName
pode permanecer o mesmo entre lançamentos, upgrade, downgrade ou ser qualquer sequência aleatória em vez de algo que pareça ser um "número de versão" válido.
android:versionName
- Um valor de string que representa a versão de lançamento do código do aplicativo, como deve ser mostrado aos usuários.O valor é uma string para que você possa descrever a versão do aplicativo como uma
<major>.<minor>.<point>
string ou como qualquer outro tipo de identificador de versão absoluta ou relativa.
Diferença entre versionName e versionNumber no Android
Considerando que o android:versionCode
é forçado a ser um número inteiro incrementado na liberação.
Documentação da Apple
Conforme observado na resposta recentemente aceita , a Apple publicou recentemente uma Nota Técnica que detalha sua versão e esquema de número de compilação:
Nota técnica da Apple TN2420 - Números de versão e números de compilação