AAIS

概述

AAI Script (AAIS) 是建立在 AAI 的 FindNode 之上的非常简单的脚本,它具有非常简单的语法和十几个命令,AAIS 不是复杂的 JS/REST API 的替代品,它可以用于简单的测试或者临时脚本。AAIS 将在执行期间转换为 JavaScript(和 FindNode 命令)。它有几个不同于 JS 的属性:

  • 没有条件,没有循环,没有变量,不适合复杂的脚本。
  • 任何失败/错误都会导致脚本停止。
  • 在执行时会以多线程的方式运行在多个设备上,用户可以选择一组设备(1 到 100),启动脚本。
  • 目前仅在MDCC(多设备控制中心)支持,下个版本将支持WDM(Windows桌面模式)。
  • 任何错误消息或打印输出都将保存在日志文件中。
  • 由于它建立在 FindNode 之上,它继承了 FindNode 的属性:
    • 基于对象,而不是基于坐标。
    • 支持混合设备环境中的脚本(不同的分辨率和大小)。
    • 使用"找到"来替换设备相关的向下/向上页面。"找到"将滚动,直到找到节点。

下一个版本

下一个版本的一些增强功能:

  • "get"从节点获取信息。
  • "exec" 调用 JavaScript。

AAIS 命令

点击/长按

点击或长按屏幕上的查询字符串或文本。如果未找到查询或文本,脚本将停止。有关查询语法,请参阅 FindNode 用户指南。

用法:

点击/长按 <text|query>

例子:

点击 "T:About phone||OX:1"
长按 "Information"

启动/重启

打开或重新启动应用程序,重新启动将强制关闭应用程序并重新启动。如果未找到应用程序,脚本将停止。

用法:

启动/重启 <package name>
启动/重启 <app name>

例子:

启动 "com.raider.skype"
等待 "Favorites"
重启 "Skype" 

等待

该命令一直等待,直到找到匹配项或超时到期。如果超时到期,脚本将停止。如果没有指定超时,默认为 5000 毫秒。有关查询语法,请参阅 FindNode 用户指南。

用法:

等待 <text|query>
等待 <text|query>, <timeout in milliseconds>

例子:

等待 "Finish"
等待 "R:.icon_done", 20000

文本

在文本字段中输入文本,如果屏幕找不到文本字段、超出范围或找不到标签,脚本将停止。

用法:

文本 <text>		// 在第一个输入框中输入文字
文本 <text>, <position> 	// 在指定位置输入文字,从0开始编号,例如0表示第一个输入框,以此类推
文本 <text>, <label>	// 在指定标签处输入文字.

例子:

文本 "Hello world"
文本 "Hello world", "Please input a message"
文本 "Hello world", 2

按键

按一个键码(和可选的元状态)或键码名称,错误的键码名称将停止脚本。

用法:

按键 <keycode name>
按键 KeyCode, <keycode>
按键 KeyCode, <keycode>, <meta state>

例子:

按键 Home
按键 KeyCode, 47, 1

有关所有键码名称,请参阅https://developer.android.com/reference/android/view/KeyEvent。以下是流行的键码名称(不区分大小写):

Enter
Back
Home
Back_space
Search
Power
Tab

找到

它将向下滚动屏幕,直到找到匹配项,找不到匹配项,脚本将停止。搜索从当前位置开始,向下滚动 30 页或页尾。

用法:

找到 <text|query>

例子:

找到 "John"
找到 "T:OK||C:.Button"

执行

执行另一个 AAIS,如果脚本产生错误将停止。默认位于脚本目录中。

用法:

执行 <file path and filename>

例子:

执行 "aais\\skype.tst"
执行 "C:\\aais\\skype.tst"

打印

将文本字符串打印到日志文件。

用法:

打印 <text>

延迟

临时暂停脚本的执行指定毫秒。

用法:

延迟 <time in milliseconds> 

例子:

延迟 10000

AAIS 示例:

启动 "Skype"
等待 "Skype"
打印 "Skype已经启动"
点击 "D:聊天选项卡"
找到 "T:小明"
点击 "T:小明"
文本 "早上好,小明", "在此处键入消息"
// 点击发送按键
点击 "TP:textInput||OX:1"
// 从输入框返回
按键 Back
// 回到聊天界面
按键 Back
打印 "完成"

创建脚本

将脚本保存到扩展名为".tst"的文本字段中,例如skype.tst,或者您可以使用MDCC Record and Replay 将脚本录制在AAIS(您需要选择对象模式)文件中。

运行脚本

运行脚本很简单:

  • 打开 MDCC 窗口。
  • 通过缩略图设备选择设备或选择一个组。将始终选择主设备。
  • 点击"执行器"。
  • 选择一个或多个脚本,当复选框被点击时,它将显示执行顺序。
  • 单击运行按钮,它将在设备上运行脚本。