【问题标题】:Automate Xcode Simulator: how to build and launch an app from terminal自动化 Xcode 模拟器:如何从终端构建和启动应用程序
【发布时间】:2014-05-31 00:52:51
【问题描述】:

有没有办法为 iPhone 构建一个应用程序,让它在模拟器中运行,但只使用控制台?

我正在尝试测试一个将启动的应用程序;发送一些数据然后退出;如果我通过 Xcode 运行它,它工作正常;模拟器启动,一切正常。

但是使用 xcodebuild;应用构建,但不会启动模拟器。

是否有任何命令或标志来执行 Xcode IDE 所做的工作,但使用 xcodebuild?

我为模拟器找到了一个未记录的标志,称为“SimulateApplication”,但遗憾的是没有记录该用法;这使得它有点难以使用。

尝试使用 ios-sim,但我的项目无法使用它。

【问题讨论】:

标签: xcodebuild


【解决方案1】:

一种方法是使用仪器。在某种程度上,您将在“UI 自动化”下运行它,但实际上您根本没有自动化 UI。步骤是:

编译应用程序:

xcodebuild -sdk iphonesimulator7.1

创建一个不执行任何操作的虚拟 UI 自动化脚本 (myscript.js):

while(true) {
    UIATarget.localTarget().delay(100);
}

然后通过仪器运行应用程序:

instruments -t /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate "$(pwd)/$(find . -name '*.app' | grep iphonesimulator)" -e UIASCRIPT myscript.js

(那里的 find | grep 怪物只是转换为应用程序编译版本的完整路径。如果您愿意,当然也可以手动输入它。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-21
    • 1970-01-01
    • 2022-06-15
    • 1970-01-01
    相关资源
    最近更新 更多