按键【第一篇】基础

官网

http://www.anjian.com/

安装

http://download.myanjian.com/

 

模拟器使用第三款:手机助手 

连接模拟器

界面简介

第一个按键程序

按键语言不区分大小写

分析

 

输入输出

InputText  "输入的内容"

可输出多个值

TracePrint 666,"hello"
ShowMessage "很好非常好"

编码 

// 抖音关注、浏览

// 启动抖音
RunApp "com.ss.android.ugc.aweme"
Delay 15000	// 延时10秒

// 点击"关注"
Tap 495, 334
Delay 2000
Tap 321, 234
Delay 2000
Tap 264,233

// 返回
Delay 5000
KeyPress "Back"


For 10
	// 上滑
	Swipe 289, 527, 268,44
	Delay 2000	// 延时6秒
Next

常用命令  

Tap x,y  			点击某个坐标点
Swipe X1,   		Y1, X2, Y2 从点(X1,  Y1)滑动到点(X2, Y2 )
InputText			输入文字
Delay				延迟
FindColor			区域单点找色
GetPixelColor 		得到指定点颜色 
FindMultiColor		多点找色(类似区域找色)
CmpColor 			对比指定点颜色
CmpColorEx 			对比多个点颜色 
FindPic				区域找图
If For/while/do		控制
Sub/Functon			子程序(函数)

找图找色

适用场景

多点比色:效率高,适合静态图

多点找色:效率较低,适合动态图

抓抓工具

抓抓工具的图色工具很好用,可以测试颜色或者图片是否找成功,还可以生成代码

找图

截取关注图标并保存

代码调试

 

找色

变量 

函数/子程序 内部不能改变全局变量的值(值传递)

变量定义

dim

Dim num
num = 6
TracePrint num

 

Dim num = 6
TracePrint num

变量使用

Dim num = 6
TracePrint "输出变量:",num,"输出结束"  //使用逗号隔开,有一个空格
TracePrint "输出变量:" & num & "输出结束"  //使用连接符&

循环  

For

次数循环

  
//例子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

while

//例子1
Dim i=0
While i=0
    TracePrint "我停不下来啦!!快住手"
Wend
//当循环条件成立的时候,反复执行循环体

//例子2
Dim i
i = 0
//跳出循环
While i < 10
   i = i + 1
   TracePrint "正在循环中,i=", i
   If i = 5 then
      TracePrint "准备退出循环"
      Exit While
   End If
Wend
TracePrint "循环结束,i=", i 

do  

默认省略while true

无限循环和条件循环

//例子1:
//支持Exit Do 命令退出循环
Do 
    TracePrint "我停不下来啦!!快住手"
Loop
//最常见的无限循环(死循环)

//例子2:
Dim i=0
Do While i=0
    TracePrint "我停不下来啦!!快住手"
Loop
//当循环条件成立的时候,反复执行循环体

//例子3:
Dim i=0
Do Until i=0
    TracePrint "为什么没有循环到我呢?"
Loop
TracePrint "循环结束"
//当循环条件成立的时候,离开循环体

//例子4:
Dim i=0
Do Until i=1
    TracePrint "我停不下来啦!!快住手"
Loop
//当循环条件不成立的时候,反复执行循环体

//例子5:条件在后(先执行一次循环体,再判断)
Dim i=0
Do 
   TracePrint "ok"
Loop While i <> 0
//条件放后面,前面的循环内容可以执行一次!


//例子6:
Dim n=0
Do While (n<10)
    n = n + 1
    TracePrint n & "次"
Loop


//例子7:
Dim n=0
Do While true
    TracePrint "我将循环10次停下来!!"
    If n>=10 Then
        //当循环条件成立的时候,离开循环体
        Exit do
    End if
    n=n+1
Loop
TracePrint n & "次"

//例子8(等效于例子7):
Dim n=0
Do
    TracePrint "我将循环10次停下来!!"
    If n>=10 Then
        //当循环条件成立的时候,离开循环体
        Exit do
    End if
    n=n+1
Loop
TracePrint n & "次"

数组 

Dim i
i = Array(1,"字符串1", 2.2) 'i(0)=1,i(1)"字符串1",i(2)=2.2

For each a in i
	TracePrint a

Next

 

Dim i
i = Array(1,"字符串1", 2.2) 'i(0)=1,i(1)"字符串1",i(2)=2.2
 
 TracePrint i(0),i[1]

 

Dim a()
a(0) = "hello"
a(1) = "world"

TracePrint a(0), a(1)

 

// 二维数组
Dim a(0,0)
a(0,0) = "hello"
a(0,1) = "world"

TracePrint a(0,0)

函数

函数的定义:如果无参,可以省略括号

函数的调用:可省略Call和括号

函数和子程序的区别:函数可以有返回值

无返回值

Dim 变量1,变量2
变量1="我是字符串信息"
变量2=123
Call 自定义函数(变量1,变量2,"第三个参数",456)
EndScript
//定义一个过程,可以在脚本中调用这个过程
Function 自定义函数(参数1,参数2,参数3,参数4)
    TracePrint "我是自定义函数,被你调用了"
    TracePrint "参数1=" & 参数1
    TracePrint "参数2=" & 参数2
    TracePrint "参数3=" & 参数3
    TracePrint "参数4=" & 参数4
End Function

有返回值

Dim 返回值
返回值=自定义函数()
TracePrint 返回值

Function 自定义函数()
    TracePrint "我是自定义函数,被你调用了"
    自定义函数="把过程中想要返回的信息写这里"  // 其它语言是return,这里是函数名
End Function

命令库  

相当于其它语言的模块  

Import "CmdLibUtil.mql"  //系统默认
Import "TT.mql"		//自定义

TracePrint CmdLibUtil.相加(1, 2)
TracePrint TT.random(5,10)

制作字库 

不建议使用按键自带的字库功能(很垃圾) 

退出

Exit Do
Exit For
Exit Function
Exit Sub
Exit While
EndScript

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2020-09-23 11:43  沐风先生  阅读(311)  评论(0)    收藏  举报