5

我在构建以前工作的项目时遇到的错误:

Images.xcassets:无法为 SimDeviceType 类型找到合适的设备:com.apple.CoreSimulator.SimDeviceType.iPad-2,运行时 SimRuntime:9.0 (13A4305g) - com.apple.CoreSimulator.SimRuntime.iOS-9-0

我已经删除了我 Mac 上所有 Xcode 和所有模拟器的引用,重新启动了很多次,我数不清。这发生在 2 天前 El Capitan 的最后一次发布之后。该项目之前构建和运行良好。为什么错误首先来自Images.xcassets?

我可以看到 xcode 7 beta 4 的软件包中包含所有模拟器,可用模拟器列表为空。需要注意的是,我只想在物理设备而不是模拟器上运行我的项目(打开时会冻结)

从我升级 OSX 以来一直显示的 CoreSimulator 的日志:

7 月 22 日 14:53:53 CoreSimulatorService[787]:com.apple.CoreSimulator.CoreSimulatorService 166~1 开始。

设法缩小范围,从 Images.xcassets 中删除所有图像,并向其中添加 AppIcon 和 LaunchImage。构建正常,但每当我尝试添加任何其他图像时,构建将再次失败,并出现与上述相同的错误。仅当图像为空且没有关联的 png 文件时才会构建。为什么呢?

4

3 回答 3

1

尝试删除这两个路径中的所有文件

rm -rf ~/Library/Developer/CoreSimulator
rm -rf ~/Library/Developer/Xcode
于 2015-12-13T01:25:48.180 回答
0

一个相关问题的官方讨论是在Apple 的论坛中,但人们混淆了这两个问题,因为它们具有相似的特征。

当前的 El Capitan Beta 存在一个错误,该错误会导致在 El Capitan 中从旧版本的 iOS 模拟器加载 dyld_sim 时出现问题。

如果您将较旧的旧运行时安装到 /Library/Developer/CoreSimulator,以前版本的 El Capitan Beta 有一个不同的错误会导致 CoreSimulatorService 崩溃(从而限制模拟器的可用性)。

论坛帖子中讨论的解决方法将解决这两个问题:

sudo xcode-select -s /path/to/Xcode-beta.app  
[[ -d /Library/Developer/CoreSimulator ]] && sudo mv /Library/Developer/CoreSimulator{,.bak}  
sudo mv $(xcrun --sdk iphonesimulator --show-sdk-path)/usr/lib/dyld_sim{,.bak}  
sudo mv $(xcrun --sdk watchsimulator --show-sdk-path)/usr/lib/dyld_sim{,.bak}  

将来更新 Xcode 将“撤消”对 Xcode.app 的更改。在 El Capitan Beta 之后发布的最新 Xcode.app Beta 不受此错误的影响。

将来,在发布新的 El Capitan 测试版并且您进行了更新后,如果您将 /Library/Developer/CoreSimulator 移到一边,您将需要恢复它:

[[ -d /Library/Developer/CoreSimulator.bak ]] && sudo mv /Library/Developer/CoreSimulator{.bak,}  
于 2015-08-09T19:06:20.697 回答
-3

按照此处的说明:support.apple.com/en-us/HT201314,使用 Recovery 重新安装 OSX。在您这样做之前,请删除所有 Xcode 引用。操作系统安装后,重新安装 Xcode,项目应该可以正常构建。

于 2015-07-28T16:15:21.077 回答