我想在OSX上刮掉iOS模拟器的屏幕。我希望能够获取我在iOS模拟器中加载的UI屏幕的文本,并将其输出到文本文件,我可以进一步操作文本。这可能吗?有没有人尝试过类似的东西?我想在AppleScript中这样做。
AppleScript选择的原因是我的团队已经在AppleScript中编写了许多自动化任务脚本,我应该能够利用它来回收其中的一些。那个和我没有任何Objective-C经验的事实看起来与我见过的OO语言有很大不同,我没有时间学习。该工具需要在接下来的两周内启动并运行。
这可能吗?
任何正确方向的帮助\指针将不胜感激。
答案 0 :(得分:0)
如果您在AppleScript中使用gui脚本,这是一项轻松的工作。困难的部分是找到对ui元素的引用......但如果你使用像UI Browser这样的工具,那就不难了。我不运行iOS模拟器,但你可以使用gui脚本从任何应用程序的前窗获取东西,所以我不认为模拟器窗口有任何不同。
例如,我正在看这个safari窗口。我可以从这个窗口获得一些文字吗?当然......假设我想使用gui脚本获取url文本。我可以用这个...
tell application "Safari" to activate
delay 0.2
tell application "System Events"
tell process "Safari"
set textfieldReference to text field 1 of splitter group 1 of group 3 of tool bar 1 of window 1
set urlText to value of textfieldReference
end tell
end tell
关于gui脚本有一些棘手的事情但是如果你正确使用它那么它应该不是问题。请注意,从safari窗口中截取此文本的代码花了2分钟来编写。最困难的部分是获取textfieldReference。
注意:要使gui脚本工作,您必须在Universal Access偏好设置面板中启用“为辅助设备启用访问权限”。
下一部分是使用文本项分隔符和其他AppleScript工具操作您可以在applescript中轻松完成的文本。总的来说,这项工作对我来说似乎很简单,所需的技能也不算太多。