Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何解决;错误:无法读取应用程序的Info.plist(无法加载DVTFilePath的信息字典)";_Ios_Xcode - Fatal编程技术网

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

Ios 如何解决;错误:无法读取应用程序的Info.plist(无法加载DVTFilePath的信息字典)";,ios,xcode,Ios,Xcode,我使用的是Xcode版本7.1.1(7B1005) 我试图构建的iOS应用程序是通过复制应用程序的现有Mac版本并更改相关目标操作系统设置而生成的。我以前用另一个应用程序成功地做到了这一点,没有任何重大问题。但是,此应用程序的Info.plist文件(直接从工作应用程序复制)可能会导致某种问题 iOS版本的Xcode生成设置中的“Info.plist文件”设置设置为正确的路径。如果将其设置为非工作路径,则会出现不同的错误(ProcessInfoPlistFile报告错误) 我检查了构建的应用程

我使用的是Xcode版本7.1.1(7B1005)

我试图构建的iOS应用程序是通过复制应用程序的现有Mac版本并更改相关目标操作系统设置而生成的。我以前用另一个应用程序成功地做到了这一点,没有任何重大问题。但是,此应用程序的Info.plist文件(直接从工作应用程序复制)可能会导致某种问题

  • iOS版本的Xcode生成设置中的“Info.plist文件”设置设置为正确的路径。如果将其设置为非工作路径,则会出现不同的错误(ProcessInfoPlistFile报告错误)
  • 我检查了构建的应用程序包,它确实包含一个Info.plist文件
以下是我的问题产生的错误:

replacing existing signature
bundle format unrecognized, invalid, or unsuitable

Command /usr/bin/codesign failed with exit code 1
我通过向代码设计标志添加
--deep
来解决第一个错误。添加后,我将得到以下错误:

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'>)
Validate/Users/me/Library/Developer/Xcode/DerivedData/long string/Build/Products/Debug iphoneos/my\app\name.app
cd/Users/me/Performance/workspace/project/Platform/OSX
export PATH=“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin”
导出产品类型=com.apple.PRODUCT-TYPE.application
内置验证实用程序/Users/me/Library/Developer/Xcode/DerivedData/long string/Build/Products/Debug iphoneos/my\app\name.app
错误:无法读取app/Users/me/Library/Developer/Xcode/DerivedData/long string of characters/Build/Products/Debug iphoneos/my app name.app的Info.plist(无法加载的信息字典)

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

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

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

我也有同样的问题(在我的例子中没有名为“resources”的文件夹,所以问题在别处)。使用xCode 8.2.1


解决方案:确保Info.plist文件列在每个目标的“构建阶段->复制捆绑资源”部分。

通过单击Info.plist文件的目标来检查它。

对于我,重新启动我的计算机解决了这个问题。没有别的办法


=/

在我的情况下,在构建时将目标设备更改为iOS模拟器是可行的。

在创建一个文件夹(例如非常常见的支持文件或任何其他folderName)并将info.plist文件放入其中后,同样的问题总是会发生。 以下是如何修复它:- 项目->目标->选择应用->构建设置->打包->Info.plist->双击旧文件路径并将其更改为新文件路径


例如,如果您创建了一个名为Supporting Files的文件夹,并将info.plist文件移动到其中,则新文件路径应为:-YourAppName/Supporting Files/info.plist

我也有同样的问题,但在我的情况下没有名为“resources”的文件夹,因此问题一定在别处。我将xCode 8.2.1As用于所有NextStep捆绑包(
.app
.framework
,等等),捆绑包中确实有一个
资源
目录。它是你所有资源被复制到的地方。你的项目中肯定有一个
resources
目录,但你不应该尝试将其全部复制到最终的应用程序包中。相反,在复制文件构建阶段,让Xcode复制您需要的单个资源。进一步阅读:该页面上完全没有文档记录,他们明确表示要将您的文件放在应用程序包的顶层,对您应该称为文件夹的内容没有任何限制。他们甚至鼓励将文件放在macOS应用捆绑包的“资源”文件夹中,但在iOS应用程序中遵循相同的模式会导致这种混乱。你确定吗?我希望包中的Info.plist只能根据项目配置生成,这是一个名为ProcessInfoPlistFile的生成步骤警告:复制捆绑资源生成阶段包含此目标的Info.plist文件“/Users/anonymized/path/Info.plist”```@VarunNaharia我假设这个答案是这个错误出现的更常见的情况,但我保留我自己的答案为“接受”,因为这个答案不是我遇到的问题的根本原因,作为提问者。(我最初的问题甚至说plist被正确复制。)接受的工具提示文本:“它解决了您的问题,或者是最有助于找到您的解决方案。”upvote系统提供了一种退路,用于促进相同或类似问题的备选答案,因此,没有理由更改接受的答案。我通过添加info.plist文件以复制捆绑资源(如上所述)和更新我的xcode版本以适应设备上运行的iOS版本,解决了此错误。