【问题标题】:Invalid Bundle. The bundle at '.app' does not contain a bundle executable无效的捆绑包。 '.app' 处的捆绑包不包含捆绑包可执行文件
【发布时间】:2016-01-26 23:04:25
【问题描述】:

我正在尝试验证/提交我的应用程序,但它给了我这个错误。我尝试了之前对这个问题的回复中提到的所有可能的建议,但都没有奏效。

我删除了 CFBundleKey,同时在 info.plist 中将 CFBundlePackageType 键的值从 APPL 更改为 BNDL。

我还附上了相同的截图。

请为此提供解决方案,非常感谢,因为我被严重卡住了。

我的应用程序包标识符有一个数字值会导致问题吗??

【问题讨论】:

标签: ios xcode xcode7


【解决方案1】:

对于未来来自 Google 的人:

我最近遇到了这个问题(向我们分发了第三方静态库 + 捆绑包)并尝试了我所能做的一切,最终屈服并能够获得 Apple 开发人员的支持。原来包的创建者把 Info.plist 放在了错误的地方。引用 Apple 知识渊博且乐于助人的人的话:

Info.plist 需要位于包的根目录,而不是位于 资源文件夹。由于在预期中没有找到 Info.plist 位置来描述对捆绑包的期望,它继续 寻找可执行代码,作为 iOS 支持的包类型 APPL, FMWK 和 XPC 都应该有一个 bundle 可执行文件。

将 Info.plist 文件移动到正确的位置是您的短期目标 解决方法,但您还应该考虑消除捆绑 完全是长期的。如果您在 Xcode,你会看到一个提供通用目的的模板 bundle 仅在 macOS 部分可用,但在 iOS 上不可用。 Xcode 从来没有一个通用的 iOS 捆绑包起点,所以大多数 开发人员手工制作了接近预期的捆绑包 macOS 基础之外的 iOS 结构,但不完全满足 对整个系统的期望,导致各种意想不到的 诸如此类的问题。如果您的捆绑包内容与 框架,您可以直接将该内容嵌入到框架中 bundle,如果是给app的,可以直接部署内容 进入主 .app 包。

iOS 上不存在捆绑包,特别是 BNDL 意义上的捆绑包。他们是一个 旨在包含插件可加载代码的 macOS 概念, 这在 iOS 上不存在,并且该部分记录在 以下位置: https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html#//apple_ref/doc/uid/10000123i-CH101-SW30

在 iOS 上使用 BNDL 作为资源容器,无需加载代码 是在开发人员社区中发展起来的约定。他们的方式 从您的应用程序中的几个捆绑包可以看出,在 iOS 上使用的是 有效地作为具有花哨文件名的文件夹,用于组织 原因。使用没有 .bundle 文件扩展名的文件夹可以 相同的组织目的,同时也避免陷入困境 在验证过程中试图确定它是否发现了什么 是应用程序、框架或应用程序扩展包。

总之:避免在 iOS 中使用捆绑包。您最终会冒着使 Apple 有时不透明的验证过程绊倒的风险,而收效甚微。

【讨论】:

    【解决方案2】:

    与 info.plist 文件的连接可能会导致问题。尝试从目标更改捆绑 ID 并检查它是否反映在 plist 文件中,反之亦然。如果这不反映将您的 plist 文件复制到其他位置,请将其从应用程序中删除并再次拖放,这将有所帮助。这解决了我的问题,希望对您有所帮助。

    感谢您的努力。

    【讨论】:

      【解决方案3】:

      如果您收到此错误,请检查您的 info.plist 文件,

      <key>CFBundleExecutable</key>
          <string>${EXECUTABLE_NAME}</string>
      

      并添加此密钥。

      【讨论】:

        【解决方案4】:

        您应该输入 general 以找到 Embedded Binaries,然后删除您的框架。

        【讨论】:

          猜你喜欢
          • 2014-11-21
          • 2014-11-03
          • 1970-01-01
          • 2017-08-15
          • 2023-03-07
          • 2015-08-02
          • 2014-12-23
          • 1970-01-01
          相关资源
          最近更新 更多