从终端杀死iOS模拟器

Cla*_*aus 12 terminal simulator prompt kill jenkins

我正试图从终端控制台终止iOS模拟器(需要在Jenkins中集成自动UI测试),但每次我尝试命令时:

killall SimulatorBridge
Run Code Online (Sandbox Code Playgroud)

显示等待操作的提示: 在此输入图像描述

问题是模拟器在获取提示操作之前不会被解雇.如何摆脱它?

Sla*_*lav 32

使用 killall "iPhone Simulator"

使用XCode 6,使用killall "iOS Simulator"(感谢@gempewsaw)

使用XCode 7,使用killall "Simulator"(感谢@Stanislaw)

使用XCode 8,杀死模拟器进程有时是不够的,还需要杀死进程com.apple.CoreSimulator.CoreSimulatorService(感谢@bensnider)

  • 在Xcode 8上,杀死模拟器进程有时是不够的.我还必须杀死进程`com.apple.CoreSimulator.CoreSimulatorService`. (4认同)
  • 对于xcode 6.1的小牛队,我不得不做"killall"iOS模拟器"`.谢谢你的出发点:D (3认同)
  • 这些答案对于传统来说看起来不错,但对于 2019 xcode 10 我不得不使用 /sf/answers/3805192891/ (2认同)

rus*_*hop 14

关闭模拟器的正确方法是xcrun simctl shutdown all

我不建议您通过杀死CoreSimulator来关闭模拟器。

Simulator.app只是一个查看器(从Xcode 9开始)。它不需要启动,因此也不需要关闭。它将响应设备自动启动和关闭。

您也可以在退出时按住Option键以退出正在运行的模拟器,而无需关闭它们。选中该复选框以使其成为默认行为。

同样,您可以在通过文件关闭窗口时按住Control键,而在关闭单个模拟器的窗口时使用Close键可以得到类似的选择。

  • 这不是最好的答案,这超出了我。+1为简单起见! (2认同)

Joe*_*ick 5

我同意上面的答案.只是想补充一点,我注意到当没有模拟器可以杀死时,我的Jenkins工作失败了.我通过这样添加它来解决这个问题:

killall "iOS Simulator" || echo "No matching processes belonging to you were found"
Run Code Online (Sandbox Code Playgroud)

祝你的ci好运!