【问题标题】:Error running playground. Unable to find suitable target device运行游乐场时出错。找不到合适的目标设备
【发布时间】:2015-03-22 03:47:07
【问题描述】:

我从

下载了 Swift 语言的 GuidedTour.playground.zip 文件

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/GuidedTour.html

解压为GuidedTour.playground, 用Xcode 6.1.1打开,然后报错:

Error running playground.
Unable to find suitable target device.

我点击确定按钮关闭错误消息窗口, 以“A Swift Tour”为题回到操场。那里的任何嵌入式代码都没有输出。而且每次我尝试编辑任何代码时,都会一次又一次地弹出错误消息。

网上有些人遇到了同样的问题,并通过在菜单Window -> Devices -> SIMULATORS下添加一些设备来解决它。我做到了,但错误一直显示。

如果我点击File -> New -> Playground来创建一个测试playground,这个错误信息不会出现,测试代码会运行。

一周前,我将 2008 年初 iMac 中的 HDD 更换为 SSD(固态磁盘),从我的 Time Machine 备份中将整个系统恢复到 SSD。一切看起来都很好,直到我发现 Xcode 开始拒绝运行教程“A Swift Tour”。在更换 SSD 之前,Xcode 会运行它。这可能是相关的?

【问题讨论】:

  • 更换硬盘可能不是原因,而是重新安装了 Xcode。仔细检查 Xcode 菜单 > 首选项 > 下载。查看是否下载并安装了正确版本的模拟器
  • 目前我有适用于 iOS 8.1 模拟器的 iPad 2。我去 Preferences > Downloads 下载 iOS 7.1 Simulator 并在 Window > Devices 中添加更多 iOS 7.1 模拟器,但仍然弹出错误消息。所以我删除了整个 Xcode,然后重新安装,只保留 iOS 8.1 的模拟器,这样不必要的 Xcode 组件就不会弄乱我较小的固态磁盘。
  • 我已经解决了这个问题。我发现我刚刚添加的模拟器不够,以至于 Xcode 无法找到合适的目标设备。我为iOS 8.1添加了所有10个模拟器后,错误消失了,出现了输出。
  • 请将此作为答案。
  • 重置模拟器的简单方法是使用 Fastlane 工具快照应用程序。 fastlane.toolssnapshot reset_simulators然后重启xcode

标签: xcode swift ios-simulator swift-playground


【解决方案1】:

非常感谢 Raptor 的友好回复。我已经解决了这个问题。我发现我刚刚添加的模拟器不够,以至于 Xcode 无法找到合适的目标设备。在我为iOS 8.1添加了所有10个模拟器后,错误消失了,出现了输出。

起初,我似乎必须添加所有这些才能使其正常工作。然后通过删除和添加一些来回并重新启动xcode进行了相当多的实验后,我无法确定确切需要多少模拟器。也许是 3 或 4 个。

【讨论】:

  • 尽管看起来很荒谬,但从 Xcode 7 beta 2 开始,这对我有用。感谢您发布此内容!
  • 我也是!只是添加了一些模拟器并没有做到这一点,但我最后做了 iPad,所以也许它就是其中之一。
  • 试试这个:(0) 退出 Xcode。 (1) 将~/Library/Developer/CoreSimulator/Devices 重命名为~/Library/Developer/CoreSimulator/DevicesBackup。 (2) 创建空的新文件夹~/Library/Developer/CoreSimulator/Devices。 (3) 启动 Xcode。在我的例子中,Xcode 7 重新启动自动为每个可能的设备和 iOS 组合创建了一个模拟器。
  • 具体需要iPad Pro:stackoverflow.com/a/33461378/1148702
  • (你也可以欺骗这个雷达来修复这个问题:openradar.me/23719213
【解决方案2】:

假设至少配置了以下模拟器之一,游乐场将正常运行:iPhone 6、iPhone 6+、iPad Air、可调整大小的 iPhone 或可调整大小的 iPad。

【讨论】:

  • 伟大的提示罗宾!不知道你在哪里找到这个信息,但我差点把头发从头上拔下来。这节省了我的一天/晚上,谢谢!
  • 我花了一点时间...删除所有模拟器,重新启动Xcode。创建了一个模拟器,打开了一个游乐场,看看它是否会运行。删除单个模拟器,重新启动 Xcode,创建列表中的下一个模拟器,冲洗并重复。
  • 添加 iPhone 6/ios 9 对我不起作用,添加 iPad Air ios9 对我有用。发生了一些奇怪的事情。
【解决方案3】:

删除 ~/Library/Developer/XCPGDevices 的内容(通常它包含一个名称为模拟设备的 UDID 的目录)

【讨论】:

    【解决方案4】:

    在 Xcode 7:

    第1步:窗口>设备>左下角加号图标>添加iPad Air或iPad Air 2。

    第 2 步:退出并重新启动 Xcode。

    【讨论】:

      【解决方案5】:

      我使用的是 Xcode 版本 6.0.1。我重新启动 Mac(仅重新启动 Xcode 没有帮助),这个问题得到解决。

      希望这会有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-02-11
        • 2016-01-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多