1 基础教程
1.1 定义变量
1.2 运算符
1.2.1 算数运算符
1.2.2 逻辑运算符
1.2.3 关系运算符
1.2.4 连接运算符
1.3选择结构
1.4 循环结构
1.5 定义函数
1.6 Sub子程序
1.7 Rem标记
1.8 Goto跳转
1.9 函数调用
2 基本命令
2.1 触摸命令
2.1.1 按键控制
2.1.2 短暂点击控制
2.1.3 持续点击控制
2.1.4 滑动控制
2.2 控制命令
2.2.1 循环
2.2.2 选择
2.2.3 子程序
2.2.4 调用子程序
2.2.5 结束程序
2.3 颜色命令
2.3.1 根据坐标获取颜色值
2.3.2 指定范围查找坐标
2.3.3 在整个屏幕中查找
2.4 图形命令
2.4.1 指定范围找图片
2.4.2 整个屏幕找图片
2.5 设备命令
2.5.1 获取屏幕宽度
2.5.2 获取屏幕高度
2.5.3 获取屏幕色彩值
2.5.4 保存屏幕状态
2.5.5 返回设备唯一编号
2.5.6 播放音频
2.5.7 振动
2.6 其他命令
2.6.1 输入文本
2.6.2 输出文本
2.6.3 屏幕提示信息
2.6.4 延时
2.6.5 启动应用
定义一个或多个变量,数组
Dim a, arr()
a = "这是变量"
b(0) = "这是第一个数字元素"
TracePrint a, arr(0)
运算符 | 描述 |
+ | 加法 |
- | 减法 |
* | 乘法 |
/ | 除法 |
\ | 整除 |
^ | 求幂 |
Mod | 取余 |
运算符 | 描述 |
And | 逻辑与 |
Or | 逻辑或 |
Not | 逻辑非 |
运算符 | 描述 |
> | 大于 |
>= | 大于等于 |
< | 小于 |
<= | 小于等于 |
= | 等于 |
<> | 不等于 |
运算符 | 描述 |
& | 强制连接 |
if选择
If 条件 Then
执行语句
End If
Select Case多重选择
Select Case 变量
Case 值1[,值2,...]
执行语句1
Case Else
执行语句2
End Select
循环体
Wend
while循环
While 条件
循环体
Wend
do循环
例子1:
//可以使用Exit Do 命令退出循环
Do
TracePrint "死循环了"
Loop
//最常见的无限循环(死循环)
例子2:
Dim i=1
//当循环条件成立的时候,反复执行循环体
Do While i=1
TracePrint "死循环了"
Loop
例子3:
Dim i=1
//当循环条件成立的时候,离开循环体
Do Until i=1
TracePrint "来执行我呀"
Loop
TracePrint "循环结束"
例子4:
Dim i=0
//当循环条件不成立的时候,反复执行循环体
Do Until i=1
TracePrint "我停不下来啦!!快住手"
Loop
例子5:
Dim i=0
Do
TracePrint "至少执行了一次"
//条件放后面,前面的循环内容可以执行一次!
Loop While i <> 0
例子6:
Dim n=0
Do While true
TracePrint "我将循环10次停下来!!"
If n>=10 Then
//当循环条件成立的时候,离开循环体
Exit do
End if
n=n+1
Loop
TracePrint n & "次"
for循环
For 次数
执行语句
Next
例子1:固定循环次数后离开
For 10 '固定循环10次跳出
TracePrint "循环中……"
Next
TracePrint "离开循环"
例子2:范围循环
Dim i
For i = 0 To 9 '这里没写步长,默认每次循环结束 i 都+1,
那么10次后等于9,第11次等于10,大于9,离开循环
TracePrint "循环中,i=" & i
Next
TracePrint "离开循环,i=" & i
Dim i
For i = 0 To 19 Step 2 '步长为2,每次循环结束 i 都+2,
那么10次后等于18,第11次等于20,大于19,离开循环
TracePrint "循环中,i=" & i
Next
TracePrint "离开循环,i=" & i
Dim i
For i = 9 To 0 Step -1 '步长为-1,每次循环结束 i 都-1,
那么10次后等于0,第11次等于-1,小于0,离开循环
TracePrint "循环中,i=" & i
Next
TracePrint "离开循环,i=" & i
例子3:循环离开
Dim i
i=5
For i=0 To 10
TracePrint "循环中,i=" & i
If i=5 Then
Exit For '离开当前For循环
End If
Next
for each...in循环
For Each 变量名 in 数组
执行语句
Next
Dim Arr
Arr=Array("我","爱","编","程")
For Each a In Arr
TracePrint a //输出数组的所有元素
Next
Function 函数名([自定义参数1, 自定义参数2, ...])
执行语句
[函数名=返回值]
End Function
注:子程序的功能和函数的功能很类似,只是子程序没有返回值,而函数可以有自己的返回值
Sub 子程序名([自定义参数1, 自定义参数2, ...])
执行语句
End Sub
例子1:子程序调用
Call 子程序()
EndScript
Sub 子程序()
TracePrint "我是子程序,被你调用了"
End Sub
例子2:子程序调用并传入参数,参数可支持多个。
Dim 变量1,变量2
变量1="我是字符串信息"
变量2=123
Call 子程序(变量1,变量2,"第三个参数",456)
EndScript
//定义一个过程,可以在脚本中调用这个过程
Sub 子程序(参数1,参数2,参数3,参数4)
TracePrint "我是子程序,被你调用了"
TracePrint "参数1=" & 参数1
TracePrint "参数2=" & 参数2
TracePrint "参数3=" & 参数3
TracePrint "参数4=" & 参数4
End Sub
//支持Exit Sub 命令直接退出子程序过程
Rem identifier
Goto sign
Call 过程名([自定义参数1, 自定义参数2, ...])
可以模拟手机上的按键,如数字1-9,字母A-Z,home键,back键等
KeyPress "Home"
KeyPress "Back"
KeyPress "EndCall"
KeyPress "0"
KeyPress "A"
第一个0代表X坐标,第二个0代表Y坐标
Tap 0, 0
Tap 1, 1
Tap 100, 100
0,0代表坐标,1000代表时间(单位毫秒)
Touch 0, 0, 1000
Touch 1, 1, 1000
Touch 100, 100, 1000
0,0代表第一个点的坐标,1,1代表第二个点的坐标
Swipe 0, 0, 1, 1
Swipe 0, 0, 100, 100
Swipe 10, 10, 20, 20
// 循环一次
For 1
// 程序逻辑
Next
// 循环十次
For 10
// 程序逻辑
Next
注:falge为我们自定义的变量或表达式,如果条件为true,则执行程序逻辑的内容
If falge Then
// 程序逻辑
End If
Sub sub1()
// 子程序1逻辑
End Sub
Sub sub2()
// 子程序2逻辑
End Sub
Call sub1()
Call sub2()
EndScript
Dim rColor
rColor = GetPixelColor(0, 0)
// 1.左上--> 右下
Dim intX, intY
FindColor 0, 0, 10, 10, "0000FF", 0, 0.90, intX, intY
//如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
End If
// 2.中心-->四周
Dim intX, intY
FindColor 0, 0, 10, 10, "0000FF", 1, 0.90, intX, intY
//如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
End If
// 3.右下-->左上
Dim intX, intY
FindColor 0, 0, 10, 10, "0000FF", 2, 0.90, intX, intY
//如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
End If
// 4.左下-->右上
//Dim intX, intY
FindColor 0, 0, 10, 10, "0000FF", 3, 0.90, intX, intY
//如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
End If
// 右上左下
//Dim intX, intY
FindColor 0, 0, 10, 10, "0000FF", 4, 0.90, intX, intY
//如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
End If
Dim intX, intY
FindColor 0, 0, 0, 0, "0000FF", 1, 0.90, intX, intY
//如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
End If
Dim intX, intY
FindPic 0, 0, 100, 100, "Attachment:1.png", "000000", 0, 0.9, intX, intY
// 如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
// 程序逻辑
End If
Dim intX, intY
FindPic 0, 0, 0, 0, "Attachment:1.png", "000000", 0, 0.9, intX, intY
// 如果没有找到,intX和intY的值都会被置为-1
If intX > -1 And intY > -1 Then
// 程序逻辑
End If
Dim screenX
screenX = GetScreenX()
Dim screenY
screenY = GetScreenY()
Dim colorDep
colorDep = GetScreenColorDep()
// 屏幕常开
KeepScreen True
// 屏幕关闭
KeepScreen False
Dim deviceID
deviceID = GetDeviceID()
PlaySound "1.mp3"
Vibrate 1000
InputText "这是脚本语言"
TracePrint "这是脚本语言"
ShowMessage "这是提示信息"
Delay 1000
根据包名来启动应用
RunApp "包名"
第一种获取包名的方式:在界面的其它命令里直接插入
第二种获取包名的方式:通过系统命令获取
首先在模拟器上打开将要被获取包名的软件,接着在按键精灵手机助手调试命令
Dim 当前应用包名
当前应用包名 = Sys.GetFront()
TracePrint 当前应用包名