Подтвердить что ты не робот

Убить iOS Simulator от терминала

Я пытаюсь завершить iOS Simulator с консоли терминала (необходимо для интеграции автоматического тестирования пользовательского интерфейса в Jenkins), но каждый раз, когда я пытаюсь выполнить команду:

killall SimulatorBridge

появится запрос на ожидание действия: enter image description here

Проблема заключается в том, что симулятор не отклоняется, пока не будет предпринято действие в приглашении. Как избавиться от него?

4b9b3361

Ответ 1

Используйте killall "iPhone Simulator"

С XCode 6 используйте killall "iOS Simulator" (спасибо @gempewsaw)

С XCode 7 используйте killall "Simulator" (спасибо @Stanislaw)

С XCode 8 убивать процесс Simulator иногда недостаточно, также нужно убить процесс com.apple.CoreSimulator.CoreSimulatorService (спасибо @bensnider)

Ответ 2

Правильный способ выключения симуляторов - xcrun simctl shutdown all.

Я не рекомендую выключать симуляторы, убивая CoreSimulator.

Simulator.app - это просто программа просмотра (начиная с Xcode 9). Его не нужно запускать, и поэтому не нужно его выключать. Он будет реагировать на загрузку и выключение устройств автоматически.

Вы также можете удерживать Option, когда выходите из режима отключения симуляторов, не выключая их. Установите флажок, чтобы сделать это поведение по умолчанию.

Точно так же вы можете удерживать Control при закрытии окна через File, Close, чтобы получить аналогичный выбор при закрытии одного окна симулятора.

Ответ 3

Я согласен с ответами выше. Просто хотел добавить, что я заметил, что моя работа Дженкинса потерпела неудачу, когда не было симулятора, чтобы убить. Я обошел это, добавив его следующим образом:

killall "iOS Simulator" || echo "No matching processes belonging to you were found"

Удачи вам в вашем ci!

Ответ 4

Попробуйте

killall -9 "iPhone Simulator"

Ответ 5

Если я использую несколько симуляторов и хочу убить один конкретный симулятор, а не все, как это сделать, спасибо заранее