javaee论坛

普通会员

225648

帖子

98

回复

112

积分

楼主
发表于 2019-11-08 18:43:13 | 查看: 2571 | 回复: 1

文章目录前言解决过程代码编写总结

前言

今天在使用雷电模拟器测试游戏的时候,有一个领奖界面需要点击领奖100次,程序猿作为解放劳动力的先锋,必须想个办法解决这个事情,按键精灵是个好东西,但是重装系统之后还没有安装,然后发现这个雷电模拟器里除了简单的按键映射,还有一键宏的功能,那就用它解决了。

解决过程

关于雷电模拟器的按键操控功能,官方论坛-帮助教程已经写得很清楚了,一键宏怎么设置教程里也写的很清楚,唯一的缺点就是各个截图中的代码太模糊了,根本看不清,所以我在尝试的过程中还花了点时间,其中遇到了几个坑和大家分享下。

我用的模拟器版本是3.54,这个版本在编写一键宏的时候可以直接在界面上获得对应点的坐标,非常的方便,在开始写一键宏的时候有一个误区,就是怎么控制我写的这段宏代码的开始与结束,起初我还控制按键的按下和抬起,发现没有什么用,最后测试发现,就是设置的按键按下时执行,如果存在循环就一直执行,按键抬起时执行结束,简单粗暴。

代码编写

其实这个一键宏也算不上代码,最多也就算个伪代码,然后通过模拟器解析一下,要实现循环点击的功能需要的指令不多,只有4个:

size:指定模拟器的分辨率loop:说明以下的指令开始循环touch:点击屏幕上的像素点wait:休息一下,防止点击过快,单位是毫秒

其中坑人最深的就是size这个命令,我一开始以为是设置分辨率的,而我玩游戏默认的分辨率是1600X900,所以设置的点击位置也是在这个分辨率下取的点,然后就没加这个指令,结果一键宏一直不生效,后来加上了size1600900这一句才好使,这时我才明白这个指令不是设置分辨率的,而是告诉以下指令,当前的分辨率是多少,在操作像素点时不至于选错,宏的内容很简单,只有四句:

size1600900looptouch1400350wait1000

这个宏组合的意思也很清楚,在分辨率1600X900的情况下,循环点击(1400,350)这个像素点,每次点击间隔1s,防止点击过快。

总结一键宏设置完成后,按键按下执行,如果是循环指令,则按键抬起结束size指令并不是设置分辨率,而是说明现在的分辨率

上一篇:gtest之断言集合 下一篇:AutoSAR系列讲解

普通会员

0

帖子

96

回复

101

积分
沙发
发表于 2019-11-27 03:35:18

楼主你知道的太多了

您需要登录后才可以回帖 登录 | 立即注册

触屏版| 电脑版

技术支持 历史网 V2.0 © 2016-2017