Code sign error : bundle format unrecognized, invalid, or unsuitable

Code sign error : bundle format unrecognized, invalid, or unsuitable

我正在开发 iOS 应用程序,Swift 语言,iOS8,Xcode 6.1。在 iPad 上 运行 很好。然后我向项目添加了一个 "Resource" 文件夹引用,之后我收到代码签名错误。

资源文件夹包含一些 HTML 文件。我不确定此文件夹引用是如何导致此问题的。有什么帮助吗?

好的,解决了,This answer帮了我。

我重命名了文件夹。显然 Xcode 不喜欢 "Resources" 手动创建文件。

Clean Build Folder 为我解决了这个问题。

我几个小时都遇到同样的问题。但以下帮助了我。

  1. 删除派生数据
  2. 清理项目

然后又 运行,成功了。

除了接受的答案我想我应该添加这个-

对我来说,我收到此错误是因为 Xcode-8 实际上在设备上使用 运行 应用程序时使用测试目标。因此,如果相同,请按照以下步骤操作:

转到 xcode 中的编辑方案 -> 在构建目标中 -> 完全删除 MyProject.xctest 或取消选中 MyProject.xctest 分析、测试等的所有复选框。

清理您的项目,然后在设备上 运行。

PS: 答案来自这个Link

升级到 Xcode 8.1 后出现问题。我的项目使用 CocoaPods。我不得不删除 ./Pods 目录和 运行 pod installpod update(将 Flurry-iOS-SDK 更新为 7.8.1)。为什么?因为原因。

更新到 Xcode 8.1 一周后我遇到了这个问题,结果我不得不更新 cocoapods(sudo gem update cocoapods)并再次执行 pod install 以使其正常工作。

我在两个不同的项目中遇到过这个问题,我做了很多建议的事情,清除了 DerivedData 文件夹,re-installed pods 等等

在这两个项目中,它都在抱怨某个特定的 Pod 并且无法对其进行代码签名。

为我修复的是:

  1. Select Pods 项目
  2. 在主编辑器中 window,select 目标下拉列表中的 Pod
  3. 在常规选项卡下,在身份 header 下,单击选择 Info.plist 文件
  4. Select Pod 的 plist 文件

项目现在应该生成了。由于某种原因,它似乎丢失了这个设置,或者无法引用它自己的 plist 文件。

这在两个项目中都对我有用。不是 100% 知道为什么,但我希望它能帮助遇到同样问题的其他人。

对我来说,在我将 xcode 升级到 8.1 后,出现了类似的问题。我尝试了不同的方法,但似乎首先将 cocoapods 更新到最新版本绝对值得。然后用 pods 更新 pod install --verbose --no-repo-updatepod update --verbose --no-repo-update 会有帮助。

更新到 Xcode 8.1 后遇到此问题。简单地更新 cocoapods(通过 运行 'sudo gem update cocoapods' 在终端)为我修复了这个问题

对于像我这样的人来说,以上所有的解决方案都行不通。你可以仔细检查你的方案名称,那里不应该有任何 space 。 Cocoapods 无法处理带有 space 的 1.1.1 版本的方案名称。但我不确定为什么只有当我升级到 Xcode 8.2 时才会发生这种情况。它与 Xcode 8.1.

一起工作得很好

我花了好几个小时才弄清楚这个问题。 你可以关注这个thread

希望对您有所帮助。

我现在遇到了类似的问题,它实际上是由 Fabric 的嵌入脚本引起的,通过删除项目文件内部路径中的 space 来解决。

在名为 'app-ios' 的项目文件夹中有一个完全可构建的作品space 我制作了一个名为 'app-ios 2' 的副本,但无法构建它。 codesign 确实报告了 bundle format unrecognized, invalid, or unsuitable 并且各自的路径不是到包,但以 /app-ios 而不是 app-ios 2/DerivedData/...

结尾

将文件夹重命名为 app-ios-2 后,作品space 又可以构建了。

我的问题是,在 info.plist 中,我忘记将 url 方案更新为新的包 ID

上一个:com.test.app 新:com.test.app1

这解决了问题

以防其他人遇到此问题:确保您没有将 静态框架 添加到“嵌入式二进制文件 " 部分,只需要动态框架。

这里解决了

  • 确保所有使用的框架都添加到构建阶段的嵌入框架部分
  • 仅当在同一部分安装 CHECKED 时才保留副本

祝你好运

我遇到了同样的问题,在尝试了此处报告的几乎所有解决方案均未成功后,我发现只需删除产品文件(即将其移至 Finder 中的回收站)即可解决我的问题。

我知道这是一个旧话题,但我刚遇到这个问题,none 的其他答案对我有所帮助。对我来说,这个错误发生在我不拥有的旧第三方框架的 "Embed & Sign" 上。查看那个 .framework 包,它确实有一个不正确的 directory formatVersions/A/ 目录被命名为 Versions/1.0.0/(“1.0.0”当然是一个任意版本number),这似乎混淆了 CodeSign 命令。所以我 cd Versions 进入框架的目录,然后 mv 1.0.0 Aln -sf A Current - 之后 CodeSign 和构建成功。

在使用 AppCode 的针对 MacOS(不是 iOS)的应用程序上遇到问题,但我相信该解决方案应该适用于所有情况:在 AppCode 中,只需在构建之前执行 Run > Clean