"您上传的二进制文件无效.Info.plist文件中的密钥CFBundleVersion必须包含比以前上传版本更高的版本."
当我上传我的应用程序时,我收到此错误.
我在iTunes Connect上将更新版本设置为1.2,并且还将.plist
文件更新为1.2.
我不明白为什么我会收到这个错误.任何帮助,将不胜感激.谢谢.
iOS应用的版本/构建字段包括:
"Version" CFBundleShortVersionString(String - iOS,OS X)指定捆绑包的发布版本号,该版本号标识应用程序的已发布迭代.发行版本号是由三个以句点分隔的整数组成的字符串.
"Build" CFBundleVersion(String - iOS,OS X)指定捆绑包的构建版本号,该版本号标识捆绑包的迭代(已发布或未发布).构建版本号应该是由三个非负的,周期分隔的整数组成的字符串,第一个整数大于零.该字符串应仅包含数字(0-9)和句点(.)字符.前导零从每个整数中截断,将被忽略(即1.02.3相当于1.2.3).此密钥不可本地化.
"iTunes Connect版本号":在iTunes Connect上创建应用程序的新版本时指定的版本号.
我的问题是:
当新版本的应用程序上传到iTunes Connect和/或发布到App Store时,需要增加哪些版本/内部版本号?
应用更新之间的"版本" CFBundleShortVersionString
或"构建"可以CFBundleVersion
保持不变吗?
Apple来源的额外积分或iTunesConnect在上传无效版本/内部版本号时显示的确切错误消息.
促使这个问题的讨论是,在谷歌Android应用的大众"版本" Play商店并没有需要递增,是没有办法验证.该android:versionName
可不同版本之间保持不变,升级,降级,或者是任何随机字符串,而不是东西,似乎是一个有效的"版本号".
android:versionName
- 表示应用程序代码的发行版本的字符串值,因为它应显示给用户.该值是一个字符串,以便您可以将应用程序版本描述为
<major>.<minor>.<point>
字符串,或任何其他类型的绝对或相对版本标识符.
Android中versionName和versionNumber之间的区别
而android:versionCode
强制执行是一个递增的释放整数.
正如新接受的回答中所述,Apple最近发布了一份技术说明,详细说明了他们的版本和内部版本号: