iOS应用程序的版本/构建字段包括:
“ Version” CFBundleShortVersionString(字符串-iOS,OS X)指定捆绑软件的发行版本号,该编号标识应用程序的发行版本。发行版本号是一个由三个句点分隔的整数组成的字符串。
“ Build” CFBundleVersion(字符串-iOS,OS X)指定捆绑软件的构建版本号,该版本号标识捆绑软件的迭代(已发布或未发布)。内部版本号应该是由三个非负的,由句点分隔的整数组成的字符串,并且第一个整数大于零。该字符串应仅包含数字(0-9)和句点(。)字符。每个整数都会截断前导零,并将其忽略(即1.02.3等于1.2.3)。该密钥不可本地化。
“ iTunes Connect版本号”:在iTunes Connect上创建应用程序的新版本时指定的版本号。
我的问题是:
将新版本的应用程序上载到iTunes Connect和/或发布到App Store时,需要增加哪个版本/内部版本号?
应用更新之间的“版本” CFBundleShortVersionString
或“内部版本”可以CFBundleVersion
保持不变吗?
在上传无效的版本/内部版本号时,Apple来源的加分或iTunesConnect会显示确切的错误消息。
Android / Google Play注意事项:
促使这个问题的讨论是,在谷歌的Android应用程序的公版“”玩不商店并不需要被递增,是没有办法验证。该android:versionName
可以保持相同的版本之间,升级,降级,或为任何随机字符串,而不是东西,似乎是一个有效的“版本号”。
android:versionName
—一个字符串值,代表应显示给用户的应用程序代码的发行版本。该值是一个字符串,以便您可以将应用程序版本描述为
<major>.<minor>.<point>
字符串或任何其他类型的绝对或相对版本标识符。
Android中的versionName和versionNumber之间的区别
而将android:versionCode
强制为释放增量整数。
苹果文档
如新接受的答案中所述,Apple最近发布了技术说明,其中详细说明了其版本和内部编号方案: