【问题标题】:Can't submit apps to AppStore: ERROR ITMS-90534: "Invalid Toolchain无法将应用程序提交到 AppStore:错误 ITMS-90534:“工具链无效
【发布时间】:2017-11-03 12:22:34
【问题描述】:

错误 ITMS-90534:“无效的工具链。

新应用和应用更新必须使用 Xcode 6 或更高版本、macOS 和 iOS SDK 或更高版本的公共 (GM) 版本构建。不要提交使用 beta 软件构建的应用程序,包括 beta macOS 版本。" ERROR ITMS-90534: "Invalid Toolchain。新应用和应用更新必须使用 Xcode 6 或更高版本、macOS 和 iOS SDK 或更高版本的公共 (GM) 版本构建。不要提交使用 beta 软件构建的应用,包括 beta macOS 版本。”

我在将 IPA 上传到帐户时发现了这个错误。

【问题讨论】:

  • 那么……您使用了哪些版本的 Xcode 和 macOS 来构建应用程序?

标签: ios xcode xcode11.2


【解决方案1】:

您需要使用 Xcode 的最新稳定(非测试版)版本获取存档。

【讨论】:

    【解决方案2】:

    在我使用Xcode 12 beta 版之前,原因仅此而已。

    我已下载Xcode 12稳定版本,IPA已成功验证。

    您可以从这里下载最新版本:https://developer.apple.com/download/

    谢谢。

    【讨论】:

      【解决方案3】:

      使用稳定的 Xcode 版本归档您的应用程序并使用 Xcode 测试版上传。这解决了我的问题。

      【讨论】:

      • 使用稳定的 Xcode 版本存档应用程序并使用相同的稳定 Xcode 版本上传。不需要 Xcode 测试版。这也为我解决了问题。
      【解决方案4】:

      按照此解决此问题:

      1. 退出 Xcode 和任何已打开的模拟器。

      2. 转到此链接以在应用程序下下载 Xcode 11.2.1 GM 种子。大约 7GB:https://developer.apple.com/download/

      1. 下载后点击Xcode_11.2.1_GM_Seed.xip文件解压存档。

      2. 解压后,将Xcode文件从Downloads移动到Application文件夹中。

      1. 替换现有的 Xcode 应用程序。

      1. 出现提示时输入登录密码。

      1. 等待移动完成。

      1. 完成后,启动 Xcode 并检查 About Xcode 以确认最新版本。

      1. 构建您的应用,增加您的内部版本号并提交到 App Store。

      更新:自 11 月 13 日起,App Store 本身现已提供 11.2.1 版。

      【讨论】:

        【解决方案5】:

        2019 年 11 月使用 Xcode 12.1?

        2 天前,Apple 发布了 11.2.1 版本,您可以从 App Store 下载/更新。从今天开始解决这个问题就像从官方 App Store 安装/更新 Xcode 12.2.1 一样简单。

        在我的应用上检查并能够在此更新后成功部署,只需确保使用 new Xcode (12.2.1) 上传应用构建,否则您会看到错误Invalid Toolchain. Your app was built with an unsupported version of Xcode or SDK. If you plan to submit....

        您应该再次看到绿色的肯定确认 :)

        【讨论】:

        • 在 Xcode 12 beta 4 (12A8179i) 上确认此错误。
        【解决方案6】:

        Xcode 11.2 于 2019 年 11 月 5 日被 Apple 弃用


        始终有效的解决方法(手动下载)

        Download the xip file from here

        还有:

        Latest Release version (Xcode 11.2.1)

        Latest Beta version(Xcode 11.3 测试版)

        Any version you need。以及所有其他可下载的内容

        然后将其提取并移动到您喜欢的位置。

        你可以找到all workaround histry of the issue here.

        【讨论】:

        • 尽管这是我们从 Apple 的混乱中看到的几乎所有当前问题的根源,好吧 @rmaddy
        • 并且已经有特定于该问题的问题,您已经发布了完全相同的答案。在与弃用 Xcode 11.2 无关的问题上发布此答案是不合适的。
        【解决方案7】:

        如果您在 2019 年 11 月查看此内容,则 Xcode 11.2 中存在一个模糊错误,该错误会阻止从该版本上传到 App Store。您必须升级到 Xcode 11.2.1,该版本目前在 Mac App Store 上尚不可用,但必须从此处的开发人员门户下载:https://developer.apple.com/download/

        Xcode 11.2 存档错误日志甚至指出:

        编辑:

        Xcode 11.2.1 现已在 AppStore 上架:

        https://apps.apple.com/us/app/xcode/id497799835?mt=12

        【讨论】:

        • 2019 年 11 月您好!您在添加此答案时的勤奋可能为我节省了数小时的搜索时间!谢谢!
        • 大声笑...现在也尝试一下,希望对您有所帮助!已经有8票了!这些是忙碌的 4 个小时:D
        • 请注意,这可能与使用 Xcode 11.2 构建 iOS 应用程序的问题有关,如 this question 中所述。
        • 我在这里尝试了所有其他选项,其中不包括更新到 Xcode 的 beta 版本,但它们不起作用。这对我运行一个使用快速通道构建的 React Native 项目很有用。谢谢。
        • 为什么 Apple 不在 App Store 中发布 11.2.1?为什么是苹果?!
        【解决方案8】:

        我在使用 Xcode 11.2 上传 Apple 审查时遇到了同样的错误。

        修复步骤: Apple 决定于 2019 年 11 月 5 日弃用 Xcode 11.2。 Xcode 11.2 有 UITextView 构建错误代码。因此,Apple 建议使用 Xcode 11.2.1 GM 种子。

        您可以从链接https://developer.apple.com/download/下载

        来自苹果的消息: 此更新修复了一个严重问题,该问题可能导致使用 UITextView 的应用程序在以前版本的 iOS、iPadOS 或 tvOS 上运行时崩溃。请参阅发行说明

        您可以使用 Xcode 11.2.1 GM 种子构建和发布应用程序。希望这会帮助一些人。

        【讨论】:

          【解决方案9】:

          这是我上网后所做的。

          1. https://xcodereleases.com/下载最新的Xcode(无需登录即可下载)。

          2. 当您提取上面下载的以 .xip

          3. 结尾的文件时,您可能会收到错误“数据已损坏
          4. 要解决此问题,请使用 Archive Utility.app 而不是 The Unarchiver.app

          5. 解压缩

          【讨论】:

            【解决方案10】:

            我只想添加使用 Apple Beta 软件页面底部的内容 (https://developer.apple.com/support/beta-software/) 如果您使用的是 XCode 的 BETA 版本并尝试每次提交都会失败,除非您使用的是 GM_seed(Golden Master 版本,也就是发布到生产之前的版本) 因为我没有足够的“声誉”来评论@Chuck Smith。我创造了这个。 希望这可以帮助。 今天是 11/8/2019,我成功下载并提交了我的应用程序。

            提交应用程序

            App Store 不接受使用 Xcode 测试版创建的应用或为操作系统测试版构建的应用。您提交的应用应使用 Mac App Store 中最新版本的 Xcode 进行开发,并且应该为 iOS、macOS、watchOS 和 tvOS 的公开可用版本构建 - 除非 GM 种子可用。 当 Xcode 的 GM 种子可用时,使用它来开发您的应用程序以供提交。当 iOS、macOS、watchOS 或 tvOS 的 GM 种子可用时,为这些版本构建您的应用。

            【讨论】:

              【解决方案11】:

              您无法通过 Xcode 测试版将应用上传到 App Store。确保您使用稳定版本将应用推送到 App Store

              【讨论】:

                【解决方案12】:

                对于尝试使用 Xcode 11 的任何人,请检查 Xcode 版本。如果是版本 11.0 (11A419c),您无法使用此版本向应用商店提交构建。获取 Xcode 版本 11.0 (11A420a)

                使用 Xcode 11 GM 种子 (11A419c) 构建的应用无法再上传到 App Store Connect。您现在可以使用 iOS 13 SDK 和 watchOS 6 SDK 将使用 Xcode 11 GM 种子 2 (11A420a) 构建的应用程序提交到 App Store。

                【讨论】:

                  【解决方案13】:

                  Xcode 的新 beta 或 Golden Master 版本即将发布,请在几个小时后寻找。

                  【讨论】:

                    【解决方案14】:

                    我在使用fastlane gym 从命令行归档我们的应用程序时收到此错误。当我使用 Xcode 手动归档应用程序时,我没有收到错误消息。

                    我想我传递给fastlane gym 的参数/配置有问题。如果我弄清楚这是什么,我会报告回来。

                    【讨论】:

                      【解决方案15】:

                      从 Xcode -> 转到 Organizer -> 在 Archives 下,选择构建并右键单击以在 finder 中显示 -> 选择项目并右键单击 -> 显示包内容 -> 双击 Info.plist 并添加一个排。键是 BuildMachineOSBuild,类型是字符串,值是 16G29(值取决于您的 Mac OS 版本。请按照下面给出的链接)

                      https://support.apple.com/en-in/HT201260.....Check the version number for your Mac OS version and set the value in the Info.plist

                      例如,如果您的 Mac OS 版本是 10.12.6,则将其添加到您的 plist

                      <key>BuildMachineOSBuild</key>
                      <string>16G29</string>
                      

                      您已准备好将构建发送到 iTunes Connect

                      【讨论】:

                        【解决方案16】:

                        显然这是 Apple 服务器中的部署问题。我尝试了 3 小时后神奇地消失了。

                        【讨论】:

                          【解决方案17】:

                          对于 XCode 9.2 问题主要出在命令行工具版本中。

                          最佳解决方案:

                          1. 重新安装 XCode 或命令行工具
                          2. 在您的项目中将 Project Format 设置为 Xcode 8.3-compatible

                          可能的解决方案:

                          1. 打开 XCode.app(显示包内容)
                          2. 查找并打开 version.plist
                          3. 将 ProductBuildVersion 从 9C40b 更改为 9C40
                          4. 在您的项目中将 Project Format 设置为 Xcode 8.3-compatible
                          5. 享受吧!

                          【讨论】:

                            【解决方案18】:

                            我今天在使用 Xcode 9.2 的 App Store 版本时遇到了这个问题。

                            这绝对不是测试版,我猜从软件发布到 iTunes connect 更新以期待新版本之间存在一些延迟。

                            我已经尝试了上面的所有建议,但没有一个可行...但是这就是(虽然很粗略)对我的工作所做的:

                            • 在管理器中,右键单击您的存档并在查找器中显示
                            • 显示包内容
                            • 查找 Products/Applications/yourApp.app
                            • 显示包内容
                            • 编辑 Info.plist
                            • 将 DTXcodeBuild 的值更改为以前的版本(9.2 是 9C40b,9.1 是 9C40)
                            • 保存并重试

                            这对我有用...

                            【讨论】:

                            • 虽然这确实可以将我的二进制文件上传到商店,甚至让我通过试飞进行测试,但我无法提交商店审查。尝试时出现不同的错误:无效的 sdk 值。为 MyApp.app/MyApp 中 LC_VERSION_MIN_IPHONEOS 的 sdk 部分提供的值是 11.2,大于允许的最大值 11.1。
                            • 感谢您的帮助 - 我按照您的指示进行了操作,虽然构建完成了 iTunesConnect(和 TestFlight),但我收到一封电子邮件,警告我它是使用旧版本构建的。由于 DTXcodeBuild 中的 beta 值是由 XCode 自己编写的,这是否意味着我们需要一个带有修复的新 XCode 版本,而不是在商店端进行修复?还是字符串末尾的 b 实际上不是 beta 的意思?
                            • 我不确定是否诚实。在 Apple 开发者论坛中,普遍的共识是,他们开始接受 9.2 的构建只是时间问题。 b 是奇数,十六进制数字大写,因此 b 不是十六进制数字。也许它确实意味着 beta 并且被错误地留在了?我最终咬紧牙关再次下载了 9.1 并重新提交了一个用它构建的二进制文件。
                            • 似乎它现在又可以正常工作了,无需 XCode 更新。所以我猜 9C40b 是正确的版本号,只是 Apple 更新 iTunesConnect 有点慢。
                            • 谢谢!我刚刚设法提交了该应用程序以供审核。我在构建版本 11B52 时遇到问题,我将其更改为之前的版本 11A1027。
                            【解决方案19】:

                            右键单击存档文件(.xcarchive)>显示包内容>产品>应用程序>右键单击应用程序文件>显示包内容>双击Info.plist进行编辑

                            DTXcodeBuild 值的末尾删除 b(例如从 9C40b 更改为 9C40)

                            重新提交就可以了

                            【讨论】:

                              【解决方案20】:

                              它自己说的错误消息,使用 Xcode 的稳定(非测试版)版本 创建一个构建。 您的 Mac 操作系统也应该是稳定的(不是测试版)

                              使用最新稳定版本的 Xcode Tool (Xcode 9) 创建您的构建并使用 Application Uploader 上传。

                              在创建构建时确保以下几点:

                              • Xcode 版本(Xcode 工具的最新稳定版本 - 当前 Xcode 9)
                              • Mac OS 版本(最新稳定 MacOS 版本 - High Sierra 10.12.7)
                              • Xcode 项目(文档)格式版本(兼容 Xcode 8.0)

                              【讨论】:

                                【解决方案21】:

                                我终于能够通过从 App Store 下载 XCode 8.2.1 来解决这个问题。

                                重新归档项目并照常提交。

                                【讨论】:

                                  【解决方案22】:

                                  一切都更新了 Xcode 8.3.3,OS Serra 10.12.6 但我仍然遇到问题。我做了什么,问题得到了解决:

                                  打开应用商店 搜索xcode 从应用商店打开 Xcode 它提示我安装一些缺少的功能。 我按照说明完成了向导 重新打开 Xcode 并归档我的应用程序,然后开始上传并成功。

                                  希望它可以帮助某人。

                                  干杯!

                                  【讨论】:

                                    【解决方案23】:

                                    我在使用 Xcode 8.3 公共版本时遇到了同样的问题。我重新安装 Xcode 并检查它,但没有工作...

                                    终于找到问题了,我在项目文档下的项目格式中错误地选择了Xcode 3.2-compatible。我将其更改为兼容 Xcode 8.0 并构建和存档它。我可以上传它没有任何错误。检查附加的屏幕截图..

                                    【讨论】:

                                    • 在阅读了十几个其他解决方案后,这允许验证应用程序。
                                    • 这解决了我在 Xcode 10.1 项目中的问题。谢谢!
                                    • 所以我应该选择最新的选项?
                                    • 错误仍然存​​在,要么我选择兼容 Xcode 8.0,我使用的是 Xcode 11 GM 版本
                                    • @besil,我也有 Xcode 11.2,但在选择兼容 Xcode 11.0 后仍然出现错误。您为“项目格式”选择了哪个选项?
                                    【解决方案24】:

                                    我今天也遇到了同样的问题 (13 July 2017)。

                                    到目前为止,我一直在使用 XCode 9 beta 2。一切正常。

                                    我上传的最后一个版本是在9th of July 2017 上,使用XCode 9 beta 2

                                    在尝试了很多更改后,最终解决方法是:

                                    升级到XCode 的最新测试版,即XCode 9 beta 3(发布于10th July 2017)。

                                    底线:

                                    如果您使用的是XCode 的任何beta 版本,并且如果它过时。 Apple 将拒绝您从该版本构建的版本,从而导致提问者提出错误。只要版本稳定就不用担心。

                                    建议检查您当前的版本是否为最新版本。如果没有,请下载最新的 XCode 并推送使用最新 XCode beta 实现的新构建

                                    为什么我没有使用稳定版的 XCode?​​strong>

                                    此时的稳定版是XCode 8.3.3,使用的语言是Swift 3

                                    虽然Swift 3 to 4 的代码中断更改最少,但我最新的代码库是Swift 4。另外,您的项目中可能有Pods,它也必须降级到最新的稳定版本。直到 XCode 9 的稳定版本出来。所以,我选择下载最新版的XCode beta

                                    【讨论】:

                                    • 使用 xCode 9 beta 的原因:在 xCode 8 及更早版本中使用 Swift 开发几乎是不可能的。因为自动完成和突出显示的大量错误最终将其变成了记事本。所以我非常理解你:) 谢谢你的回答。
                                    • 对于在 Xcode 12 Beta 4 中遇到此问题的任何人。只需安装 Xcode 12 Beta 6。它将得到解决!
                                    猜你喜欢
                                    • 1970-01-01
                                    • 2019-08-03
                                    • 2023-03-09
                                    • 1970-01-01
                                    • 2016-01-26
                                    • 1970-01-01
                                    • 2019-06-28
                                    • 2019-11-20
                                    • 2015-06-16
                                    相关资源
                                    最近更新 更多