【问题标题】:ITMS-90668 - Invalid Bundle Executable. The executable file contains incomplete bitcodeITMS-90668 - 无效的捆绑可执行文件。可执行文件包含不完整的位码
【发布时间】:2016-09-26 08:35:58
【问题描述】:

昨天我开始从 iTunes Connect 收到奇怪的错误消息:

ITMS-90668
Invalid Bundle Executable.
The executable file '...' contains incomplete bitcode.
To compile binaries with complete bitcode, open Xcode and choose Archive in the Product menu.

实际上,对于我的每个嵌入式框架,我都会收到许多相同的消息。

我确实使用了 Bitcode,并且我没有在我的项目中更改任何相关的 Bitcode。 这似乎是一个新的 ITMS 要求(或错误)。而且我不知道如何解决它。

看起来这个问题与深圳或 BuddyBuild 等 CI 工具神秘相关。或者,可能与依赖项包含预编译代码的情况有关。

以防万一,我的应用:

  • 具有以下已预编译代码的依赖项: BuddyBuildSDKFirebaseCardIO
  • 用 Swift 编写。
  • 具有 iOS 键盘扩展。
  • 使用 BuddyBuild。
  • 使用 CocoaPods。

更新:

我几乎没有改变任何东西,然后问题昨天就消失了。我不知道为什么。我相信 Apple 只是修复了这个错误,或者这是侥幸问题。

【问题讨论】:

  • 这里也一样,突然来了。我已经尝试将 bitcode 设置为 YES 和 NO 两种变体 - 没有变化。
  • 我遇到了完全相同的问题。您如何将代码提交到 iTunes Connect?
  • 遇到同样的问题,我认为这是苹果的错误。是否已完成任何报告?

标签: ios app-store-connect bitcode


【解决方案1】:

我在一些 pod 依赖项上遇到了同样的问题。我更改了导致问题的每个 pod 项目的“启用位码”构建设置(遵循 itunesconnect 的错误描述)。现在一切正常。

您可以在 Podfile 中设置它。这里有一个为每个依赖项更改的示例:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['ENABLE_BITCODE'] = 'NO'
    end
  end
end

在这里找到:Disable bitcode for project and cocoapods dependencies with Xcode7?

【讨论】:

  • 那么,这个问题与buddybuild有关吗?!
  • 我不这么认为。我在 buddybuild 中使用了来自 itunesConnect 的错误描述。我认为 Apple 已经更改了应用程序验证规则。
  • 好的,这是一个很好的临时解决方法,但我确实想使用 Bitcode,所以显然我不想禁用它。
  • 我明白了,您可以对有问题的 pod 库禁用 bitcode。如果我找到重新激活它的解决方案,我会分享它。
  • 这对我有用。有谁知道为什么这个错误刚刚开始出现?在几个版本中,我们没有更改任何与位码相关的设置...
【解决方案2】:

只需在 git card.io 库中注册一个问题: https://github.com/card-io/card.io-iOS-SDK/issues/205

希望尽快解决这个问题!

【讨论】:

  • 有没有线索表明这个问题与 Card.io 有关?
猜你喜欢
  • 2014-11-03
  • 2014-11-21
  • 1970-01-01
  • 2016-01-26
  • 1970-01-01
  • 1970-01-01
  • 2016-04-03
  • 2017-08-15
  • 1970-01-01
相关资源
最近更新 更多