Xcode 10 beta安装后,Xcode 9 iOS模拟器变成了黑屏

14
我知道之前有很多人问过这个问题,但我认为我的情况不同。在我的情况下,Xcode 9.2已经安装好了,我将macOS从10.13.2升级到了10.13.5,然后安装了Xcode 10 beta。现在当我在Xcode 9.2上运行任何项目并尝试使用模拟器时,虽然我可以看到Xcode的日志,但模拟器变成黑屏。到目前为止,我尝试过以下方法:
  1. 卸载Xcode 10 Beta
  2. 卸载并重新安装Xcode 9.2
  3. 卸载Xcode 9.2并安装Xcode 9.4
  4. 重置模拟器菜单中的内容和设置
  5. 从模拟器菜单中重新启动设备
  6. 调整模拟器大小。
  7. 按照帖子清理DerivedData、CoreSimulator和iOSDeviceSupport等文件夹
  8. 从“设备和模拟器”部分重新添加模拟器
现在我该怎么办?

重新启动你的电脑。 - Vishal Vaghasiya
  • 强制退出所有应用程序,包括Xcode和模拟器
  • 关闭您的MAC - 再次启动
- Ramkumar Paulraj
完成 所有这些... - Poles
根据changelog,在 Xcode 10 beta 2 中已修复。你能测试并确认吗? - Cœur
7个回答

23

尝试在终端中运行defaults write com.apple.CoreSimulator.IndigoFramebufferServices FramebufferRendererHint 3来源)。请注意,这将强制模拟器使用OpenGL而不是Metal,因此一旦问题得到修复,您将需要使用0重新运行它。


2
这段代码可以帮助解决黑屏问题,但是重新运行相同的代码并使用默认值com.apple.CoreSimulator.IndigoFramebufferServices FramebufferRendererHint 0会再次使模拟器变黑。因此,在苹果发布修复程序之前,我将坚持使用3 - Poles
这个有效。我注意到一件事:当你开始使用Grab工具为了推广而截取设备边框的屏幕截图时,OSX会重置默认设置,只有重启才能修复。同时,你安装其他程序也可能导致这种行为发生。 - Henrik Erlandsson

1

尝试使用解决方法,删除Library/Developer文件夹并重新启动


0

我想到了另一个选项。我创建了UIWindow的子类,并调用了.init(frame: .zero)。将其更改为.init(frame: UIScreen.main.bounds)后问题得到解决。


-1

打开 XCode 9 并进入添加额外模拟器(如下图所示),重新添加 iOS 10 和 iOS 11 模拟器

enter image description here


-1

看起来你已经尝试了所有方法,除了更改你正在运行的iOS模拟器版本。

也许问题出在特定版本的iOS模拟器上,例如iOS 11.x iPhone 6。更改它可能会正常运行。

  • 如果你没有所需的版本,请前往XCode->首选项->组件,并下载XCode 9.x时可用的旧版iOS模拟器之一。
  • 然后,前往XCode->窗口->设备和模拟器。在屏幕左下角按下+号。添加你想要的模拟器版本(给它一个你想要的名称),这样这个新的模拟器就会出现在XCode的可运行方案列表中。

你尝试过一些模拟器命令吗?例如从硬件菜单中的锁定、主屏幕等。 - Nirav Bhatt

-2

这篇文章是为那些尝试了所有方法都无法解决Xcode 10问题,然后重新安装Xcode 9.4.1但模拟器仍无法工作的用户而写的。

以下是我所做的步骤,让Xcode 9.4.1重新运行。 在升级到Xcode 10后,我遇到了这个问题。 我尝试了那个著名的FramebufferRendererHint,但对我没有用。 我发现Xcode 10.1 beta版本并没有为其他人解决问题,所以我也没试过10.1 beta。

从在线研究中,我知道问题出在/Library/Developer/PrivateFrameworks/CoreSimulator.framework。 如果你的Mac上没有安装Xcode,/Library/Developer文件夹就不存在。 因此,当你第一次运行Xcode时,它会自动安装。你会看到一个屏幕显示“正在安装组件”。 但是,如果你安装了Xcode 10,然后安装/运行Xcode 9.4.1,它就不会再触及那个文件夹了。所以即使你把Xcode 9.4.1放回去,问题仍然存在。

这就是为什么我下载了Xcode 9.4.1并运行它后,问题仍然存在的原因。

我没有备份我的Mac电脑。所以我决定从头开始。我从互联网上恢复了我的MacBook,重新下载了Xcode 9.4.1。现在一切都恢复正常了。我现在可以继续发布应用到App Store了。


你现在使用的是 Xcode 10 最终版还是测试版? - Poles
我现在正在使用的是 Xcode 9.4.1。我尝试在 Xcode 10 中使用来自 Xcode 9.4.1 的 /Library/Developer/PrivateFrameworks/CoreSimulator.framework,但是它没有起作用。编译时出现了很多错误。 - Paul
1
我不得不切换到Xcode 10来继续我的开发。只使用iPhone 8进行测试。如果苹果在几周内没有解决这个问题,我将被迫购买一台新的MacBook Pro,因为我必须在那时发布新的应用程序。 - Paul

-2
在我的情况下(xcode 10),我只是因为沮丧而离开电脑了大约10分钟左右,当我回来时,我发现它已经回到了起始屏幕!...我猜第一次需要时间。

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