如何重置 Xcode 机器人使用的模拟器?
Posted
技术标签:
【中文标题】如何重置 Xcode 机器人使用的模拟器?【英文标题】:How do I reset the simulator used by an Xcode bot? 【发布时间】:2016-01-07 17:46:18 【问题描述】:我正在使用的模拟器实例在持续集成运行后有时会留在inconsistent state 中,我该如何重置它?
在构建服务器上重置以普通用户帐户运行的模拟器似乎不会重置机器人使用的模拟器(在受限_xcsbuild
用户下运行。)
【问题讨论】:
【参考方案1】:受this gist 的启发,将此脚本作为“集成前”触发器在您的 Bot 上运行:
/usr/bin/osascript -e 'tell application "ios Simulator" to quit'
/usr/bin/osascript -e 'tell application "Simulator" to quit'
/usr/bin/xcrun simctl erase all
...并欺骗雷达 24091918 将“all”作为有效参数添加到 xcrun simctl shutdown
。
【讨论】:
感谢有关simctl shutdown all
的建议,但我认为这对您的情况没有太大帮助。您需要记住 simctl 是 CoreSimulator 的客户端,就像 Simulator.app 一样。 simctl 并不意味着控制 Simulator.app。
我只能说,它似乎对我有用 - 从用户帐户重置模拟器不起作用,像触发器一样执行上述操作。
是的,以上将实现你的目标,但我的意思是你误解了simctl和Simulator.app之间的关系。如果您没有使用“simctl boot”,则没有理由使用“simctl shutdown”,因为当 Simulator.app 终止时设备会自动关闭。以上是关于如何重置 Xcode 机器人使用的模拟器?的主要内容,如果未能解决你的问题,请参考以下文章