常见问题
Q & AQ & A如何定时运行脚本点击脚本右边的菜单按钮->更多->定时任务即可定时运行脚本,但是必须保持Auto.js后台运行(自启动白名单、电源管理白名单等)。同时,可以在脚本的开头使用device.wakeUp()来唤醒屏幕;但是,Auto.js没有解锁屏幕的功能,因此难以在有锁屏密码的设备上达到效果。
定时任务如何获取外部参数如果一个脚本是用intent”启动”的,比如定时任务中的特定事件(网络状态变化等)触发而启动的,则可以通过engines.myEngine().execArgv.intent获取启动的intent,从而获取外部参数。
如何把图片和脚本一起打包,或者打包多个脚本如果除了单脚本以外还有其他脚本、图片、音乐等资源一起打包,则需要使用项目功能。
点击Auto.js的”+”号,选择项目,填写项目名称、包名等信息以后,点击”√”即可新建一个项目。可以在项目中放多个脚本、模块、资源文件,点击项目工具栏的apk打包图标即可打包一个项目,点击工具栏可以重新配置项目。
例如,主脚本要读取同一文件夹下的图片1.png,再执行找图,则可以通过imag ...
引擎 engines
Engines
稳定性: 稳定
engines 模块包含了一些与脚本环境、脚本运行、脚本引擎有关的函数,包括运行其他脚本,关闭脚本等。
例如,获取脚本所在目录:
toast(engines.myEngine().cwd());
Enginesengines.execScript(name, script[, config])
name {string} 要运行的脚本名称。这个名称和文件名称无关,只是在任务管理中显示的名称。
script {string} 要运行的脚本内容。
config {Object} 运行配置项
delay {number} 延迟执行的毫秒数,默认为 0
loopTimes {number} 循环运行次数,默认为 1。0 为无限循环。
interval {number} 循环运行时两次运行之间的时间间隔,默认为 0
path {Array} | {string} 指定脚本运行的目录。这些路径会用于 require 时寻找模块文件。
在新的脚本环境中运行脚本 script。返回一个ScriptExectuion对象。
所谓新的脚本环境,指定是,脚本中的变量 ...
悬浮窗 floaty
Floatyfloaty模块提供了悬浮窗的相关函数,可以在屏幕上显示自定义悬浮窗,控制悬浮窗大小、位置等。
悬浮窗在脚本停止运行时会自动关闭,因此,要保持悬浮窗不被关闭,可以用一个空的setInterval来实现,例如:
setInterval(()=>{}, 1000);
Floatyfloaty.checkPermission()[4.2.17 新增]
返回 {boolean}
返回当前应用是否有悬浮窗权限。(不会触发请求权限操作)
floaty.requestPermission()[4.2.17 新增]
跳转到系统的悬浮窗权限请求界面。
if (!floaty.checkPermission()) {
// 没有悬浮窗权限,提示用户并跳转请求
toast("本脚本需要悬浮窗权限来显示悬浮窗,请在随后的界面中允许并重新运行本脚本。");
floaty.requestPermission();
exit();
} else {
toastLog('已有悬 ...
shell
shell 即 Unix Shell,在类 Unix 系统提供与操作系统交互的一系列命令。
文字识别 OCR
OCR文档
稳定性:
实验性的函数、模块或特性, 在未来的更新中可能会更改或移除。应该谨慎使用这些函数或模块,或者仅用作临时或试验用途。
Paddle OCR5.6.1 新增 基于百度飞桨的 OCR
paddle.ocr(img, path)
img {Image} 图片
path {String} 自定义模型路径,必须是绝对路径
return {Array}
使用自定义模型进行文字识别
// files.path() 将相对路径转为绝对路径
let myModelPath = files.path("./models");
let result = paddle.ocr(img, myModelPath)
paddle.ocr(img[, cpuThreadNum=4, useSlim=true])
img {Image} 图片
cpuThreadNum {Number} 识别使用的 CPU 核心数量
useSlim {Boolean} 加载的模型,可选值:
true ocr_v2_for_cpu(slim) :快速模型,默认
false ...
消息加密
crypto 模块提供了对称加密(例如AES)、非对称加密(例如RSA)、消息摘要(例如MD5, SHA)等支持。
画布 canvas
CanvasCanvascanvas提供了使用画布进行2D画图的支持,可用于简单的小游戏开发或者图片编辑。使用canvas可以轻松地在一张图片或一个界面上绘制各种线与图形。
canvas的坐标系为平面直角坐标系,以屏幕左上角为原点,屏幕上边为x轴正方向,屏幕左边为y轴正方向。例如分辨率为1920*1080的屏幕上,画一条从屏幕左上角到屏幕右下角的线段为:
canvas.drawLine(0, 0, 1080, 1920, paint);
canvas的绘制依赖于画笔Paint, 通过设置画笔的粗细、颜色、填充等可以改变绘制出来的图形。例如绘制一个红色实心正方形为:
var paint = new Paint();
//设置画笔为填充,则绘制出来的图形都是实心的
paint.setStyle(Paint.STYLE.FILL);
//设置画笔颜色为红色
paint.setColor(colors.RED);
//绘制一个从坐标(0, 0)到坐标(100, 100)的正方形
canvas.drawRect(0, 0, 100, 100, paint);
如果要绘制正方形的边框,则通过设 ...
MTQQ
autojs的主题订阅、发布、QOS、遗嘱消息。
app 相关
autojs的app操作。
websocket
autojs的websocket模块。

