【问题标题】:Error ITMS-4236 when uploading build to iTunes because of build version由于构建版本而将构建上传到 iTunes 时出现错误 ITMS-4236
【发布时间】:2015-01-02 00:00:40
【问题描述】:

我正在尝试将预发布版本上传到 iTunes,以便与新的 iTunes TestFlight 集成一起使用。

我的持续集成构建设置的方式是每个版本都使用 git commit 短哈希标记。

例子:

Version: 1.7.6

Build Version: 1.7.6.4ABD89A

我在提交时不断收到以下错误:

ERROR ITMS-4236: "Invalid value '1.7.6 (4ABD89A)' for bundle_version at SoftwareAssets

我尝试过不同的格式,例如:1.7.6.4ABD89A1.7.6 (4ABD89A)1.7.6 [4ABD89A]

我想知道以前是否有人遇到过这个问题,如果没有,哪些格式可以接受?

【问题讨论】:

  • 由于某些不清楚的原因,我唯一允许上传通过的是完全删除除版本之外的任何标签,并保持版本和构建版本相同。这不是答案,因为应该有办法做到这一点。
  • 似乎格式应该是 x.y 或 x.y.z 之类的,并且只允许使用数字。

标签: ios xcode xcode6 app-store-connect


【解决方案1】:

内部版本号必须是“最多三个非负整数的句点分隔列表”。请参阅 Apple 在 CFBundleVersion 上的文档。

在使用 Xcode 11.5 验证我的应用程序的“版本 1.0.0”和“构建 1.0.0-0”时,我收到了以下消息:

“由于以下错误,此时无法处理应用程序:此捆绑包无效。Info.plist 文件中键 CFBundleVersion [1.0.0-0] 的值必须是一个以句点分隔的列表,最多为三个非负整数。有关 CFBundleVersion 的更多信息,请访问https://developer.apple.com/documentation/bundleresources/information_property_list/cfbundleversion。"

【讨论】:

    【解决方案2】:

    简单说明一下,当 SVN 版本号与构建版本号合并时,我在存档中遇到了这个问题。在我的情况下,我有 1.0(6771M) 和“M”,这意味着项目中有 SVN 修改,在上传构建时给了我一个错误。

    因此,请确保您提交所有内容并准备存档。

    【讨论】:

      【解决方案3】:

      不幸的是,情况仍然如此。我以前有:

      buildNumber=$(git rev-list HEAD | wc -l | tr -d ' ')<br>
      buildHash=$(git rev-parse HEAD | cut -c1-4)`
      

      但现在只能使用 buildNumber。 :(

      【讨论】:

        【解决方案4】:

        iTunesConnect 不允许版本号中有字母。我不知道这是 TestFlight 集成的新功能,还是这种情况已经有一段时间了。

        我们曾经在版本号中使用字母来表示内部版本。猜猜我们不再是了。

        【讨论】:

        • 看起来@dwery 在评论中提到了这一点。好吧,这里有一个答案。 :)
        猜你喜欢
        • 2017-11-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-22
        • 1970-01-01
        • 2015-07-09
        • 2021-01-16
        • 1970-01-01
        相关资源
        最近更新 更多