Fork me on GitHub

AutoJS

AutoJS

官网

https://hyb1996.github.io/AutoJs-Docs/#/

特性

类似于按键精灵和触动精灵,特点是不需要root、免费、开源。
适合小功能开发,需要取色找色等强大复杂的脚本依然需要使用触动精灵。

安装及开发

Android

Android端下载好后可以直接编辑,然后运行脚本,但是编辑排版困难。

PC

PC端可以用VSCode的Auto.js-VSCodeExt插件。
先启动PC的服务端,Ctrl + Shift + P -》Auto.js:StartServer
然后Android在同一个局域网的情况下,打左侧的连接电脑,输入电脑IP即可。
VS编辑好脚本后直接F5运行即可。
直接把代码保存到Android端Ctrl + Shift + P -》Auto.js:Save On Device

语法

打开APP

var appName = "*宝";
launchApp(appName);

调试

toast("Hello, AutoJs!");  //展示后消失
console.log("Hello world!!!");   //打印在控制台上
console.show();   //显示控制台

设置设备宽高比例

auto.waitFor();  //检查该应用开启无障碍后才执行其后面的代码,如果未开启无障碍,不指定代码
var height = device.height;  //设备高
var width = device.width;  //设备宽

//显示信息
toast("\n设备宽" + width + "\n" + "设备高" + height + "\n" + "手机型号" + device.model + "\n安卓版本" + device.release)

//设置设备系数指标,为了让不同大小的屏幕按比例缩小到指定大小,这里的width, height换成自己屏幕的实际值.
setScreenMetrics(width, height);

检测按钮并点击

   var p1 = '逛一逛';
   var p2 = '去浏览';
   var target =  text(p1).findOnce() || text(p2).findOnce();  //找p1,找不到就找p2
   while (true) {
       if (target == null) {  //如果不存在
        	toast("不存在"+p1+","+p2);
            break;  //则跳出
       }
       target.click();  //点击按钮
       
       sleep(25000);  //等待25s
       back();  //退回
       sleep(2000);  //等待2s
    }

    var r1 = '领取';
    while (text(r1).exists()) {  //查询是否存在text值为r1的按钮
        toast("存在"+r1);  //提示按钮
        text(r1).findOne().click();  //点击按钮
        sleep(2000);  //等待2s
        continue;   //继续循环
    }

点击精确坐标

/*首先查看布局,找到bound属性(x1,y1,x2,y2),其中x1y1代表左上角,x2y2代表右下角*/
var btn_close_x = Math.random() * (1053 - 948) + 948;  //获取按钮范围内x坐标
var btn_close_y = Math.random() * (954 - 915) + 915;  //获取按钮范围内y坐标
click(btn_close_x,btn_close_y);  //点击坐标
posted @ 2020-12-10 16:56  秋夜雨巷  阅读(1340)  评论(0编辑  收藏  举报