如何修复Xcode错误:在使用Xcode时无法找到iPhone设备支持文件

50

我在新的iPhone X上遇到了这个错误:
Error: Could not locate device support files

无法找到设备支持文件。

这款iPhone X(型号A1865、A1901、A1902、A1903)运行的是iOS 11.1(15B93),可能不被此版本的Xcode支持。

我正在运行最新版本的Xcode(Beta 9.2 9C32c),它不支持iPhone X(iOS 11.1)。问题在于这是一部全新的iPhone,没有旧版配置文件来完成大部分解决方案中提到的切换。

是否有其他解决此问题的方法?因为下载最新版本的Xcode已经是我目前所运行的版本,而找到配置文件以进行切换似乎不太可能?是否有人拥有这些配置文件或知道如何编辑它们来欺骗Xcode?


1
更新Xcode到最新版本。 - Soeurng Sar
3
请在评论之前完整阅读问题,这已经是最新版本了。 - user2888798
我认为这个链接可能会帮助你下载缺失的配置文件 https://dev59.com/gZ_ha4cB1Zd3GeqPuzBh#42261788,虽然这个问题是关于Apple Watch的,但实际上它可以下载在Xcode安装期间未安装的文件,希望能有所帮助。 - Bhargavi
1
我在使用iPhone 8时遇到了同样的问题,Xcode Beta 9.2不支持我的iOS 11.1版本。然而,Xcode 9.1支持我的iOS 11.1版本。你试过Xcode 9.1吗? - Chris Herbst
@Bhargavi 我尝试了参考的帖子,但是它没有起作用。 - user2888798
显示剩余3条评论
8个回答

87

答案:Xcode:无法定位设备支持文件

我发现这里没有任何答案是完整和可持续的。下面是解决方法。

最重要的是不要浪费时间和下载 Xcode 所需的互联网带宽,因为你可以通过几 MB 的下载和一点点操作系统知识来解决问题!!!

步骤 1:
以下 GitHub 存储库似乎是最新的,其中包含所有所需的支持文件,有助于解决此问题。而且,这个存储库似乎会尽可能快地更新。请自行查看,你已经完成了一半。

https://github.com/filsv/iPhoneOSDeviceSupport

步骤 2:
选择并下载你的 Xcode 缺少的支持文件,你可以从上面的提示消息中获得线索。在我的情况下,我被告知要下载 11.4 (15FCA...something)。因此,我去下载了最新的 iOS 支持文件:

这些文件位于 iPhoneOSDeviceSupport/11.4(15F5061c)/ 路径下。

DeveloperDiskImage.dmg
DeveloperDiskImage.dmg.signature

11.4 最新版本的存储库中的文件

步骤 3:
然后将它们放入与您的 Xcode 安装相关路径中的 DeviceSupport 文件夹中。在我的情况下,我安装了 Xcode 9.2,所以我的 DeviceSupport 路径如下:

/Applications/Xcode-9.2.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

步骤 4:
将你下载的两个文件放到一个名为 11.4 (15F5061c) 的文件夹中。
提示:根据你下载文件所对应的 iOS 版本进行命名。

步骤 5:
如果你之前已经使用 Xcode 应用程序,请先退出该应用程序。然后重新打开 Xcode 并尝试在 iPhone(或之前尝试过的 iDevice)上运行你的应用程序。Xcode 将首先发出以下警告:

Preparing debugger support for Randika's iPhone 6s

Preparing debugger support for Randika's iPhone 6s in Xcode

在完成此操作后(可能需要多次重连你的 iPhone 到 Xcode),你就可以成功地在你选择的设备上运行你的应用程序。

如何找到这个路径? 转到你的应用程序文件夹,找到 Xcode-x.x.app 文件,右键单击 Xcode 应用程序并选择 “显示包内容”,如下所示:

Where to find the DeviceSupport

然后在 Finder 应用程序 中导航到 DeviceSupport 文件夹,如下所示:

Navigate the folder tree

希望这对你们中的任何人有所帮助!

干杯!


5
十个大拇指!更新 Xcode 并不能解决我的第六代 iPod Touch 在 iOS 11.4 上的问题,但是这种方法行得通。 - Raul Nohea Goodness
2
很棒的答案,支持在Xcode 8.2.1中使用iOS 12的文件。 - Dilip Tiwari
1
是的,它仍然有效!我很高兴我已经记录了这个对我也有帮助。 测试了Xcode版本10.0(10A255),并添加了对iOS 12.1的支持--->可以运行。 - Randika Vishman
1
我的最高敬意!它仍然有效,并且您已经以易于理解的方式记录了它。 - Cucu
1
谢谢!我刚刚使用这个来为Xcode 11.2添加iOS 13.4支持。(否则我必须升级到Catalina才能使用最新的Xcode。尽可能地推迟这个计划。) - eddybox

18

我的iPhone 8也遇到了同样的问题,Xcode Beta 9.2不支持我的iOS 11.1版本。

不过,Xcode 9.1支持我的iOS 11.1版本。


@Mind_Sparkles,您能告诉我如何为您生成那些文件吗? - Chris Herbst
1
我想要文件夹11.1,如果你能分享的话,请分享给我,提前谢谢。 - Samkit Shah
@Mind_Sparkles 抱歉让你等了,我已经压缩好并正在忙着上传到gdrive(网络不是很快)。一旦完成,我会发布链接。 - Chris Herbst
2
@Mind_Sparkles 这是您需要的链接:https://drive.google.com/file/d/13aiB1FrxwKO4n4bGl67-Ols8q9htFjic/view?usp=sharing - Chris Herbst
嗨,@Chris Herbst,你能否请继续在这里上传所有最新的模拟器?只需在此处更新链接即可。 - Samkit Shah
显示剩余4条评论

16

这个错误有两种解决方法:

1. 你需要及时更新最新版本的Xcode。

2. 如果不想更新到最新版本的Xcode,也可以通过更新设备支持文件来修复该错误。

要更新设备支持文件,请按照以下步骤进行操作:

你可以在下面的路径中找到设备支持文件并进行更新:

路径 -

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceS‌​upport/

您可以从以下链接下载设备支持文件


2
你怎么去那个路径?控制台显示“没有这个文件或目录”。 - June Wang
好的,让我更新路径,你可以尝试这个 - /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceS‌​upport/ - Samkit Shah

10
您可以下载所有的iOS-DeviceSupportiOS 13.0

iOS 12.3

iOS 12.2

iOS 12.1

  • 12.1 (16B5068g)。(来自Xcode_10.1_Beta_2)
  • 12.1 (16B5059d)。(来自Xcode_10.1_Beta)
  • xCode中如何添加文件

    • 打开Finder
    • 打开应用程序文件夹
    • 找到Xcode应用程序
    • 点击Xcode,右键单击->显示包内容
    • 在以下目录层次结构中查找支持的真机测试文件:

      Contents -> Developer -> Platforms -> iPhoneOS.platform -> DeviceSupport(/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport)

    上述目录是Xcode支持真机调试的iOS实际版本,如下所示: 然后通过其他渠道将最新的DeviceSupport文件复制到此目录中 并重新启动XCode 以使用最新的iOS设备进行调试。

    输入图像描述


    我做了这个并且它起作用了,谢谢。但我的问题是,为什么我们甚至需要这样做呢?我已经使用Xcode开发将近十年了,以前从来没有必要这样做。发生了什么变化? - Bill Norman

    1

    我不太舒服从第三方下载碎片; 而且,上面链接的iOS 13.2支持文件好像是基于一个测试版,现在会崩溃。

    我建议直接从苹果官网下载Xcode,并将新版本与您需要使用的Xcode版本并排安装(例如,如果您受Swift二进制框架固定),

    1. 将当前的Xcode应用程序包重命名(Xcode --> Xcode_11)
    2. 从AppStore下载最新的Xcode (Xcode 11.2)
    3. 启动新的Xcode,安装命令行工具,然后退出
    4. 启动旧的Xcode (Xcode_11),并在设备上进行构建和运行

    0
    在我的情况下,设备支持文件已经存在,但我仍然面临问题。原因是此路径下的文件夹
    /Applications/Xcode-9.2.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
    的名称为12.1(16B91),但xcode对于12.1(16C101)出现错误,因此将文件夹重命名为12.1(16C101)即可解决问题。

    -1

    这是针对ios13版本的。 - www.brunoneves.com

    -1

    我能够成功运行它,首先使用BuddyBuild.com通过电子邮件向我发送了一个测试应用程序,我成功下载了它。之后,我能够构建这个应用程序。


    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接