从模拟器上的 iOS 应用程序,启动 OS X shell 脚本

From iOS app on Simulator, launch OS X shell script

是否可以从 iOS 应用代码内部到 运行 Mac OS X shell 脚本(或任何其他 OS X程序)?

具体情况如下:我正在玩UI XCTests,想运行 shell脚本中的setup()tearDown()方法测试用例。目的是在测试 运行ning 时启动屏幕录制。

好的,看来没有人知道简单的解决方法。所以我用 python.

上的本地网络服务器解决了这个问题

Python 已内置 BaseHTTPServer class。以本教程为例:http://joelinoff.com/blog/?p=1658 我们可以编写简单的网络服务器来处理 POST 请求并执行一些操作。

在我的例子中,操作是调用 bash 脚本

os.system(someCommandString)

要启动所有这些机制,我们需要 运行 python 网络服务器。然后在 XCTestCase subclass 中的 setup()tearDown() 方法中,我们向服务器执行请求,例如:

    AFHTTPSessionManager().POST("http://0.0.0.0:8080/command", parameters: params, success: { (NSURLSessionDataTask, AnyObject) in
        print("succeed")
    }, failure: { (NSURLSessionDataTask, NSError) in
        print("failed")
    })