如何解决"错误:无法读取应用程序的Info.plist(无法加载DVTFilePath的信息字典)"

Tim*_* R. 9 xcode ios

我正在使用Xcode版本7.1.1(7B1005)

我正在尝试构建的iOS应用程序是通过复制现有的Mac版本的应用程序,并更改相关的目标操作系统设置而生成的.我在成功使用其他应用程序之前完成了此操作,没有任何重大问题.但是,此应用程序的Info.plist文件(直接从工作应用程序复制)可能会导致某种问题.

  • iOS版本的Xcode Build Settings中的"Info.plist文件"设置被设置为正确的路径.如果我将它设置为非工作路径,我会得到一个不同的错误(ProcessInfoPlistFile报告错误)
  • 我检查了构建的应用程序包,它确实包含一个Info.plist文件.

以下是我的问题产生的错误:

replacing existing signature
bundle format unrecognized, invalid, or unsuitable

Command /usr/bin/codesign failed with exit code 1
Run Code Online (Sandbox Code Playgroud)

我通过添加--deep到codesign标志来解决第一个错误.添加之后我会收到此错误:

Validate /Users/me/Library/Developer/Xcode/DerivedData/long string of characters/Build/Products/Debug-iphoneos/my\ app\ name.app
    cd /Users/me/Perforce/workspace/project/Platforms/OSX
    export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    export PRODUCT_TYPE=com.apple.product-type.application
    builtin-validationUtility /Users/me/Library/Developer/Xcode/DerivedData/long string of characters/Build/Products/Debug-iphoneos/my\ app\ name.app

error: Failed to read Info.plist of app /Users/me/Library/Developer/Xcode/DerivedData/long string of characters/Build/Products/Debug-iphoneos/my app name.app (Couldn't load Info dictionary for <DVTFilePath:0x7f97125bb4b0:'/Users/me/Library/Developer/Xcode/DerivedData/long string of characters/Build/Products/Debug-iphoneos/my app name.app'>)
Run Code Online (Sandbox Code Playgroud)

Lit*_*ome 9

我遇到了同样的问题(在我的案例中没有名为'resources'的文件夹,所以问题出在其他地方).使用xCode 8.2.1

解决方案:确保Info.plist文件列在每个目标的Build Phases - > Copy Bundle Resources部分中.


Tim*_* R. 6

出现此问题是因为我的应用程序根目录中有一个名为“resources”的文件夹。将此文件夹重命名为“stuff”解决了此错误,但由于我们的资源设置方式而非常不方便。

我猜 iOS 在应用程序文件夹结构中有一个未记录的“资源”文件夹,并将“资源”文件夹添加到您的应用程序冲突并覆盖其中的一些元数据。

在我添加--deep到我的 codesign 标志后,我开始出现的原始错误实际上并不需要。