位置: IT常识 - 正文

Auto.js的介绍(auto.js 教程)

编辑:rootadmin
Auto.js的介绍 Auto.js 是一款无需root权限的javascript自动化软件

推荐整理分享Auto.js的介绍(auto.js 教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:auto.js官方教程,auto.js常用命令,auto.js 教程,auto.js 教程,auto.js例子,auto.js入门教程,auto.js 教程,auto.js 教程,内容如对您有帮助,希望把文章链接给更多的朋友!

auto.js是一款安卓手机应用,和微信一样,安装在手机上使用

Auto.is是一款自动化软件,更根据脚本内容便可自动执行相关的操作,并且手机无需root

Auto.js的脚本需要使用JavaScript编写 准备阶段:

手机上安装auto.js应用

电脑上有代码编辑器,vscode最佳(Auto.js作者提供了vscode的插件便于调试)

https://link.zhihu.com/?target=https%3A//share.weiyun.com/5a9g8ys(Auto.js4.1.0) https://link.zhihu.com/?target=https%3A//share.weiyun.com/5yQt3kc(Auto.js4.1.0 插件) 手机安装 auto.js后,需要打开无障碍模式(为了脚本能执行)和悬浮框(为了查看控件信息) 然后开始写脚本,可以在VScode上写脚本,写好后发给手机,再Auto应用中运行 在vscode上写脚本,电脑和手机在同一局域网,通过安装auto.is的vscode插件,实现在vscode上运行,手机就会相应执行脚本 在手机的Auto.JS应用中直接码代码(不提倡)

实战开始

1.打开淘宝->点击领喵币按钮 为了编写脚本简单,淘宝预先打开喵铺主页

在这里插入代码片

var appName = "手机淘宝";launchApp(appName);sleep(3000);//寻找领喵币按钮并点击var lingmiaobi = text("领喵币").findOnce();if (lingmiaobi) { lingmiaobi.click(); sleep(1000);}else { toast("未检查到领喵币按钮"); //中止脚本 exit();}Auto.js无需root,但是需要对该应用开启无障碍模式,开启后才可以进行屏幕点击等操作auto.waitFor()表示直到检查该应用开启无障碍后才执行其后面的代码,否则一直卡在这里,一般放到脚本的第一行launchApp()可以打开对应应用,由于不同手机响应速度不同,本代码让它睡眠3s。定位组件是autojs的最常见的操作,这很类似前端的定位dom元素。在任何点击之前都需要找到对应的组件,这不同于点击某像素位置,点击组件更能适配不同分辨率的手机。在auto.js中通过各种条件选取到的控件称为UiSelector。那么筛选条件是如何确定呢?打开Auto.js应用的悬浮窗,在喵铺主页,点击Auto.js悬浮窗后选择出现的蓝色按钮,点击布局范围分析后选择领喵币按钮查看控件信息,你就能看到如图2所示的信息。click()表示点击该元素。 toast()表示展示一个消息框。toast()表示展示一个消息框。2.点击去进店/去浏览```javascript//开始执行任务execTask();function execTask() { while(true) { var target = text("去进店").findOnce() || text("去浏览").findOnce(); if (target == null) { toast("任务完成"); break; } target.click(); sleep(3000); //浏览网页20s viewWeb(20); back(); sleep(1000); }}Auto.js的介绍(auto.js 教程)

相信现在你看这段代码能看懂了,viewWeb是一会儿我们要写的函数,目的是模拟浏览网页20s的操作,虽说淘宝要求15s就行了,但是可能部分手机加载耗时比较多,所以多写了5s。当判断任务栏有"去进店"、“去浏览"的组件时,点击跳转至浏览广告,浏览完毕后,返回至任务栏页面,循环执行该操作直到找不到"去进店”、“去浏览"的组件结束(任务完成后按钮文字会变成"已完成”)。

3.浏览广告function viewWeb(time) { gesture(1000, [300, 600], [300, 300]); var cnt = 1; while(true) { var finish = desc("任务完成").exists() || textStartsWith("已获得").exists(); if (finish || cnt > time) { break; } sleep(1000); cnt += 1; } //模拟返回键,返回到任务栏页面 back();}

终于到了最后的环节了,函数的参数为当前页面的最大停留时间(防止意外而一直停留该页面)。

浏览广告完成的标志:

当前页面出现"任务完成"或"已获得*****"的组件 位于当前页面的时间大于所设定的最大限制 gesture是指屏幕滑动操作,这是本文唯一涉及屏幕像素的语句。gesture(duration, [x1, y1], [x2, y2]表示用duration的时间,从(x1,y1)点滑到(x2,y2)点,代码中表示如图用1s从黄点滑向红点,故是上滑操作浏览广告。

本次淘宝的活动最开始滑动一次,之后等着时间够了即可,故代码中没有再额外滑动。在浏览广告完毕后back()模拟返回键返回值任务栏页面。

你也许会注意到这段代码定位组件用到了desc(),之所于用desc是因为该控件的desc信息是"任务完成",还记得如何查看控件信息吧?总之,想定位控件,就先去查它的控件信息。

4. 测试

代码终于写完了,将脚本发到手机中,在Auto.js应用点击右下角的+号,选择导入,在文件目中寻找对应的脚本加载。

将淘宝打开至喵铺主页,返回Auto.js,点击运行即可执行脚本,在日志处可以查看脚本运行日志,我还没提到日志?在脚本中你可以使用log()函数记录日志,这等同于print,常用于调试或记录日志信息。

5. 打包apk

编写完代码,将代码打包成一个独立的apk。

右下角+号,新建文件夹命名为double11在double11文件夹中加载对应脚本如图选择,打包apk 你还需要知道的:

1.选择器筛选条件:除使用text、desc筛选选择器外,组件的大多数属性都可以筛选,详情见官方文档。单一的筛选条件常常无法定位到元素,那么可以进行链式调用。如定位任务栏的关闭×按钮:

className("android.widget.Button").depth(18).indexInParent(1).findOnce();

2.定位选择器:findOnce()表示找到第一个满足条件的控件,找不到返回null;另外还有findOne(),findOne(time)等方法,具体的可以看文档。这里有一个坑,findOne()如果没找到匹配的组件会一直找,直至所描述的控件出现为止,故该函数不会返回null,找不到可能会卡在这里,所以谨慎使用。 3. click():当定位的元素的clickable属性为true时,才可以点击,如果你查看某控件的clickable为false,那说明此控件不能点!!你可能是想点击它的子/父控件。

本文链接地址:https://www.jiuchutong.com/zhishi/296173.html 转载请保留说明!

上一篇:vue-devtools的安装与使用(devtools vue)

下一篇:MNIST数据集下载+idx3-ubyte解析【超详细+上手简单】(mnist数据集下载码)

  • 微信公众号如何从粉丝到变现(微信公众号如何发布文章)

    微信公众号如何从粉丝到变现(微信公众号如何发布文章)

  • redmi手环怎么充电(红米redmi手环怎么充电)

    redmi手环怎么充电(红米redmi手环怎么充电)

  • 荣耀x10和华为畅享z的区别(荣耀x10和华为畅享10plus哪个好)

    荣耀x10和华为畅享z的区别(荣耀x10和华为畅享10plus哪个好)

  • 华为荣耀8x手机多少厘米(华为荣耀8x手机壳)

    华为荣耀8x手机多少厘米(华为荣耀8x手机壳)

  • 华为5g双模手机有哪些(华为5g双模手机有哪几款)

    华为5g双模手机有哪些(华为5g双模手机有哪几款)

  • 手机格式化后还能查出以前的东西吗(手机格式化后还有病毒吗)

    手机格式化后还能查出以前的东西吗(手机格式化后还有病毒吗)

  • 苹果手机不能用万能钥匙吗(苹果手机不能用wifi的原因)

    苹果手机不能用万能钥匙吗(苹果手机不能用wifi的原因)

  • 内存里的其他是什么(内存里的其他是内存卡吗还是内存卡)

    内存里的其他是什么(内存里的其他是内存卡吗还是内存卡)

  • 5g产品有哪些(5g相关产品有哪些)

    5g产品有哪些(5g相关产品有哪些)

  • qq删除聊天记录别的手机能看到吗(qq删除聊天记录怎么恢复聊天记录)

    qq删除聊天记录别的手机能看到吗(qq删除聊天记录怎么恢复聊天记录)

  • 微信号不用了怎么处理(微信号不用了怎么注销实名认证)

    微信号不用了怎么处理(微信号不用了怎么注销实名认证)

  • 拼多多怎么取消关注店铺(拼多多怎么取消银行卡绑定)

    拼多多怎么取消关注店铺(拼多多怎么取消银行卡绑定)

  • solidworks cam是什么(solidworks cam是什么意思)

    solidworks cam是什么(solidworks cam是什么意思)

  • 微信录视频录不了怎么回事(微信录视频录不了声音)

    微信录视频录不了怎么回事(微信录视频录不了声音)

  • vivox30支持红外遥控吗(vivox30有红外线功能)

    vivox30支持红外遥控吗(vivox30有红外线功能)

  • ipad pro和air的区别(ipad pro和air啥区别)

    ipad pro和air的区别(ipad pro和air啥区别)

  • 抖音换手机了怎么登录(抖音换手机了怎么登录原来的号)

    抖音换手机了怎么登录(抖音换手机了怎么登录原来的号)

  • 苹果11可以放几张卡(苹果11可以放几个卡槽)

    苹果11可以放几张卡(苹果11可以放几个卡槽)

  • 苹果x反向充电怎么用(苹果x反向充电开关怎么设置)

    苹果x反向充电怎么用(苹果x反向充电开关怎么设置)

  • 云管端是什么意思(云管端互联网软件有限公司)

    云管端是什么意思(云管端互联网软件有限公司)

  • 小米金服安全组件是什么(小米金服安全组件)

    小米金服安全组件是什么(小米金服安全组件)

  • Vue学习:路由(vue路由实现)

    Vue学习:路由(vue路由实现)

  • lpq命令  查看打印队列状态(ip命令查看ip地址)

    lpq命令 查看打印队列状态(ip命令查看ip地址)

  • ssh-keygen命令  生成SSH密钥文件(ssh-keygen -m pem)

    ssh-keygen命令 生成SSH密钥文件(ssh-keygen -m pem)

  • 其他应付款计入资本公积
  • 缺少订单停工费用如何做账
  • 三方合同怎么盖章
  • 申报作废了还能修改吗
  • 财务报表没有申报表
  • 2019年印花税税率多少
  • 向境外销售货物交增值税吗?
  • 债转股资金
  • 接受捐赠计入什么费用
  • 税务局代开的劳务费发票可以入账吗
  • 机票退票账务处理
  • 信用贷的基本准入要求
  • 应交增值税账面数
  • 减半征收政策
  • 反倾销税由谁缴纳
  • 统借统还的所得税政策
  • 企业的免税收入用于支出所形成的费用或财产
  • 个人技术服务费增值税税率是多少啊
  • 1697509310
  • 有产能无产量
  • 吸甲醛最好的植物是什么?
  • 如何安装react
  • 货物质量赔偿需要改变收入吗合法吗
  • 捐赠固定资产入账价值
  • linux安装常用命令
  • 前端请求方式
  • 房地产消防工程入什么科目
  • 企业纳税额包括个人所得税吗
  • 最优化模型的优点
  • 注意力机制加在CNN的什么位置
  • 出口退税管理类别四类
  • 税务清单和发票清单是一样吗
  • 商业承兑汇票如何查询
  • 已认证的发票
  • 包装物为什么是无菌的
  • 报销备用金的摘要
  • 当月工资未发放的怎么记账
  • 帝国cms下载
  • pythonzen
  • 开业请别人吃饭怎么说
  • 银行手续费和利息会计分录
  • 年末关账注意事项
  • 一般纳税人什么情况可以开3%的发票
  • 注册资本认缴出资日期是什么意思
  • 施工单位转包需要受到什么惩罚
  • 如何访问一台网络上的电脑
  • mysql复制数据到另一张表
  • 解决问题
  • 企业所得税计提的准备金可以扣除吗
  • 帮员工购买意外险怎么记到分录
  • 个人所得税手续费比例
  • 利润表和资产负债表不平的原因
  • 营改增对金融业税负的影响
  • 计提医疗保险费的会计分录
  • 未使用固定资产有哪些
  • 固定资产的折旧标准
  • 货物已经入库发货怎么办
  • 企业代扣个人社保最新会计处理
  • 企业会计准则规定,企业在对会计要素
  • 表空间 数据库
  • sedsvc.exe是什么
  • windos8怎么样
  • win7屏幕太亮了怎么调电脑
  • windows8出现蓝屏
  • centos如何查看所有用户
  • centos6.5服务器安装教程
  • centos7rz
  • win8.1不能关机
  • win7系统怎么给文件夹设置密码
  • 使用灭火器人要站在上风口还是下风口
  • 微信小程序异步回调函数
  • js 仿真
  • 死循环代码
  • js对象类
  • python特性和属性
  • javascript精度问题的原因
  • 如何查询汽车发票
  • 乡镇地税局待遇
  • 公司账户注销了,是不是网银也注销了
  • 鸿蒙2.0哪个版本续航好
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设