Xcode“管理版本和内部版本号”选项

Umi*_*aya 74 xcode app-store ios app-store-connect

我刚刚更新到 Xcode 13 Beta,即将使用此版本的 Xcode 将我的第一个版本上传到 App Store。此版本的 Xcode 显示了我以前从未见过的新 App Store Connect 分发选项:

管理版本和内部版本号

这会将应用程序中所有内容的版本和内部版本号更改为 1.2 (3)。

在此输入图像描述

在存档之前,我已经从 Xcode 增加了我的版本和内部版本号。我们应该在这里做什么?如果它是一种自动化的构建增量方式,那么使用它有什么好处?

Tar*_*agi 47

在存档之前,我已经从 Xcode 增加了我的版本和内部版本号。我们应该在这里做什么?

如果您确定在存档之前已经更新了版本/内部版本号,则可以取消选中此选项,这将被忽略。

如果它是一种自动化的构建增量方式,那么使用它有什么好处?

  1. 它为您提供了更改的机会version/build以防万一您忘记了。以前的 Xcode 版本中没有任何迹象表明这一点。

  2. 它允许您在导出/上传之前(存档后)更改version/编号,以前如果您想更改/编号,则必须创建新的存档。buildversionbuild

  • 旁注:如果 xcodebuild 13 覆盖您已经管理的 CFBundleVersion 值,请在您的 exportOptions.plist 中将新的 `manageAppVersionAndBuildNumber` 属性设置为 false (18认同)
  • 这实际上听起来是一个不错的功能,只是会选择默认关闭现有项目。 (2认同)

sal*_*aha 26

对于使用 fastlane 并在 Xcode 更改构建版本方面遇到困难的人们。

\n

Xcode 13中的新功能:

\n
\n

将应用程序上传到 App Store Connect 时,分发助手\n Xcode 会检测您的应用程序是否具有有效的内部版本号\n(CFBundleVersion)。如果您的应用具有无效编号(例如之前使用过的编号,或者位于当前版本号之前的编号),则分发助手会提供一个选项来自动增加\n至有效编号。此外,分发助手可确保应用中所有嵌入内容(例如应用扩展、App Clip 或 watchOS 应用)的内部版本号与您的应用同步。请注意,这不会\xe2\x80\ x99t 修改您的源代码或您的存档;Xcode\n会在打包\n并将其上传到 App Store Connect 之前更新应用程序暂存副本中的内部版本号。(59826409)

\n
\n

当使用fastlane构建和发布应用程序时,您可以将“ manageAppVersionAndBuildNumber: false ”参数传递给build_app操作的export_options以禁用xcode版本更改。

\n
build_app( scheme: "your_app_scheme", export_options:{ manageAppVersionAndBuildNumber: false })\n
Run Code Online (Sandbox Code Playgroud)\n


mat*_*ark 15

我遇到了一些意想不到的事情 - 它还更改了嵌入到应用程序中的框架的版本号。

https://developer.apple.com/forums/thread/690647