我正在尝试为 iOS 模拟器实现一些自动化。我面临一个我无法理解的奇怪问题。正是以下是我的场景:
- 我使用命令创建了一个模拟器:
xcrun simctl create "iPhone 8 Plus"
- 我重命名了我新创建的模拟器:
xcrun simctl rename <udid> my-new-iphone-8-plus
- 我启动我的模拟器:
xcrun simctl boot <udid>
- 我打开模拟器应用程序:
open /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app/
. 此时模拟器应用程序已启动并运行,我可以与模拟器完全交互。 - 我关闭了模拟器:
xcrun simctl shutdown <udid>
. 此时模拟器关闭但模拟器应用程序仍在运行,这是有道理的,因为我可能同时运行多个模拟器。 - 我再次启动关机模拟器:
xcrun simctl boot <udid>
. 此时模拟器快速启动。启动屏幕和任何加载指示器都没有出现,就像我第一次启动它时出现的那样。
此时模拟器对我的触摸没有反应。好像卡住了。该命令成功返回并且不返回任何错误。
我也尝试过同样的事情fbsimctl
。我遇到了同样的问题。还尝试了多个模拟器。
一件重要的事情:当我通过选择所需的模拟器窗口手动关闭模拟器,然后CMD + W
从左上角的红色关闭按钮执行或关闭它,然后从命令行再次启动它时,它出乎意料地工作正常。
目标:当模拟器在使用命令行关闭后启动时,模拟器应该像以前一样响应。
我也尝试了其他的东西,比如使用pid
. 它没有帮助。
在这方面的任何帮助将不胜感激。谢谢!