在应用商店发布时,哪些iOS应用版本/内部版本号必须增加?

在应用商店发布时,哪些iOS应用版本/内部版本号必须增加?,ios,app-store,app-store-connect,mac-app-store,Ios,App Store,App Store Connect,Mac App Store,iOS应用程序的版本/构建字段包括: “Version”CbundleShortVersionString(String-iOS,OS X)指定捆绑包的发布版本号,用于标识应用程序的已发布迭代。发布版本号是由三个以句点分隔的整数组成的字符串 “Build”CbundLeverVersion(String-iOS,OS X)指定捆绑包的构建版本号,它标识捆绑包的迭代(已发布或未发布)。构建版本号应该是一个字符串,由三个非负的、以句点分隔的整数组成,第一个整数大于零。字符串应仅包含数字(0-9)

iOS应用程序的版本/构建字段包括:

  • “Version”CbundleShortVersionString(String-iOS,OS X)指定捆绑包的发布版本号,用于标识应用程序的已发布迭代。发布版本号是由三个以句点分隔的整数组成的字符串

  • “Build”CbundLeverVersion(String-iOS,OS X)指定捆绑包的构建版本号,它标识捆绑包的迭代(已发布或未发布)。构建版本号应该是一个字符串,由三个非负的、以句点分隔的整数组成,第一个整数大于零。字符串应仅包含数字(0-9)和句点(.)字符。前导零从每个整数截断,并将被忽略(即,1.02.3相当于1.2.3)。此密钥不可本地化

  • “iTunes Connect版本号”:在iTunes Connect上创建应用程序新版本时指定的版本号

我的问题是:

当新版本的应用程序上载到iTunes Connect和/或发布到应用商店时,哪些版本/内部版本号需要增加

在应用程序更新之间,“版本”CbundleShortVersionString或“构建”CbundleVersion是否可以保持不变

上传无效版本/版本号时,Apple sources的额外点数或iTunesConnect显示的确切错误消息


Android/Google Play注意事项: 引发这个问题的讨论是,Google Play Store中Android应用程序的公共“版本”不需要增加,也不需要验证。
android:versionName
可以在发布、升级、降级或任何随机字符串之间保持不变,而不是看起来有效的“版本号”

android:versionName
-一个字符串值,表示应用程序代码的发布版本,应该显示给用户

该值是一个字符串,因此可以将应用程序版本描述为
字符串、或任何其他类型的绝对或相对版本标识符

android:versionCode
被强制为一个在发布时递增的整数


苹果文档 如中所述,苹果最近发布了一份技术说明,详细说明了其版本和版本号方案:


好吧,在我看来,你只需要增加构建编号
CbundLeverVersion
。不一定需要增加短版本字符串,尽管您可能应该增加它,因为它确实会告诉用户应用程序是新的。不过,苹果确实表示,编号应该遵循传统的软件版本控制惯例,如果你试图重新上传一个已经存在的版本,iTunes Connect可能会抱怨


长话短说,它可能有效,但可能无效。

CbundLeverVersion和CbundleShortVersionString必须大于应用程序的最新版本号。保持它们不变是一种很好的做法。您应该在-info.plist中找到它们


当您尝试在organizer中验证应用程序时,如果其中任何一个应用程序未递增,它将抛出一个错误。昨晚发生在我身上。

CbundleShortVersionString应该与您提供给iTunes Connect的版本号匹配。它也是用户在应用商店中查看您的应用时显示的版本号

商店中会显示版本号,该版本应与您稍后在iTunes Connect中输入的版本号匹配

应用商店中不会显示
CbundLeverVersion
,但iTunes会使用它来确定您的应用何时更新

如果按照“设置版本号和生成字符串”中的说明更新生成字符串,iTunes会识别生成字符串已更改,并将新的iOS App Store软件包正确同步到测试设备

更具体地回答你的问题

将新版本的应用程序上载到应用商店时,需要增加哪些版本/内部版本号

两者都有。一个显示在应用商店中,另一个由iTunes用于更新应用

CbundleShortVersionString或CbundLeverVersion能否在应用程序更新之间保持不变

不。(元问题,这里的用例是什么?如果您以任何方式编辑了负载,构建将不同,用户将想知道它)。如果尝试,您将看到如下错误消息:

或者将其与之前的相应数字进行比较,以确保新版本的应用程序上载的数字更大

对。使用标准

CbundleShortVersionString和CbundLeverVersion编号是否以任何方式相互比较


否。

向应用商店发布新版本时,必须增加
CbundLeverVersion
CbundleShortVersionString

此外,其中一个字符串必须与iTunes Connect中指定的版本匹配

包括当
CbundleVersion
CbundleShortVersionString
未增加时,Xcode组织者的验证程序拒绝验证应用程序的上述屏幕截图

  • 此捆绑包无效。Info.plist文件中的key
    CbundLeverVersion
    [1.0]值必须包含高于先前上载版本[1.134]的版本

  • 此捆绑包无效。Info.plist文件中的key
    CbundleShortVersionString
    [1.0]值必须包含比先前上载的版本[1.134]更高的版本

  • 1.0.0 (1) 1.0.1 (1) 1.0.2 (1)
    1.0.0 (1)
    1.0.1 (2)
    1.0.2 (3)
    
    1.0.0 (1.0.0.1)
    1.0.1 (1.0.1.1)
    1.0.2 (1.0.2.1)