使用工具获取iDevices在运行Python子进程时遇到困难

时间:2016-09-05 12:40:27

标签: python ios instruments

我正在使用Subprocess编写一个简单的python脚本,以便将iDevices列表附加到我的mac上。我使用的命令是“instruments -s devices”。当我运行命令行时,此命令正常工作但我在使用子进程使用相同命令时遇到问题。

下面是我的简单python脚本

    import subprocess

    cmd = ['instruments', '-s', 'devices']
    response = subprocess.Popen(cmd,stdout=subprocess.PIPE)
    print response.communicate()

当我运行上面的python命令时,我的终端屏幕如下所示

MacBook-Pro-9:lib darren$ python iOSRemoteLib.py
2016-09-05 14:30:38.648 instruments[21276:1052546] WebKit Threading Violation - initial use of WebKit from a secondary thread.

python进程挂起并且没有返回任何响应。看起来像一些线程问题,我无法弄清楚是什么。

谢谢

1 个答案:

答案 0 :(得分:0)

你有两个版本的Xcode吗? 我遇到了与子进程(仪器设备)挂起的完全相同的问题。我有XCode 8.0和7.3.1。只有在切换到7.3.1后才会出现此问题。结果是subprocess.Popen(' sudo instruments -s devices',stdout = subprocess.PIPE)工作正常。所以可能是一个许可问题。