AutoJs6是安卓JavaScrIPt自动化工具,基于Auto.js二次开发,软件中功能非常强大,支持多种功能,支持选择api控制,布局分析,脚本打包等等功能,内置了详细的使用文档,可根据自己的需要来选择,提供无障碍服务,非常方便。
使用注意
1、Android 平台支持无障碍服务的 JavaScript 自动化工具
2、需要 Android 7.0 (API 24) 及以上
3、克隆 (clone) 自 hyb1996/Auto.js
主要功能
1、可用作 JavaScript IDE (代码补全/变量重命名/代码格式化)
2、支持基于无障碍服务的自动化操作
3、支持悬浮窗快捷操作 (脚本录制及运行/查看包名及活动/布局分析)
4、支持选择器 API 并提供控件遍历/获取信息/控件操作 (类似 UiAutomator)
5、支持布局界面分析 (类似 Android Studio 的 LayoutInspector)
6、支持录制功能及录制回放
7、支持屏幕截图/保存截图/图片找色/图片匹配
8、支持 E4X (ECMAScript for XML) 编写界面
9、支持将脚本文件或项目打包为 APK 文件
10、支持利用 Root 权限扩展功能 (屏幕点击/滑动/录制/Shell)
11、支持作为 Tasker 插件使用
12、支持与 VSCOde 连接并进行桌面开发 (需要 AutoJs6-VSCode-Extension 插件)
软件优势
1、VSCode 插件支持客户端 (LAN) 及服务端 (LAN/ADB) 连接方式
2、多语言适配 (西/法/俄/阿/日/韩/英/简中/繁中等)
3、夜间模式适配 (设置页面/文档页面/布局分析页面/悬浮窗等)
4、Rhino 引擎由 v1.7.7.2 升级至 v1.7.15-SnapShot
常见问题
区域截图
AutoJs6 不支持区域截图.
只能通过 images.captureScreen 截取屏幕后使用 images.clip 等方式做进一步处理.
定时任务
定时运行脚本
脚本右侧菜单 -> 定时任务, 即可定时运行脚本.
需保持 AutoJs6 后台运行, 包括 [ 自启动白名单 / 忽略电池优化 / 忽略后台活动限制 / 系统多任务保留 ] 等.
在设备关屏情况下, 可使用 device.wakeUp() 唤醒屏幕.
但 AutoJs6 暂未提供解锁功能, 因此可能需要根据设备自行设计解锁代码.
定时任务获取外部参数
若脚本由 intent (如网络状态变化等特定事件) 触发启动, 可通过 engines.myEngine().execArgv.intent 获取 intent, 进而获取外部参数.
打包应用
图片等资源共同打包及多脚本打包
上述需求需使用 "项目" 功能.
点击 AutoJs6 主页面 "+" 图标, 选择项目, 填写信息后可新建一个项目.
项目支持存放多个 [ 脚本 / 模块 / 资源文件 ].
项目工具栏的 APK 打包图标, 点击可打包一个项目.
例如:
脚本读取同目录 1.png: images.Read("./1.png").
UI 脚本图片控件引用同目录 2.png: <img src="file://2.png"/>.
AutoJs6 内置模块支持相对路径引用, 其他情况可能需借助 files.path() 转换为绝对路径.
更新日志
6.4.2更新
新增 dialogs.build() 选项参数属性
新增 console.setTouchable 方法
修复 ocr 模块部分方法无法识别区域参数的问题
修复 Android 7.x 发现新版本时无法获取版本详情的问题
修复 Android 14 申请截图权限时导致应用崩溃的问题
修复 主页抽屉快速切换 "浮动按钮" 开关时可能导致应用崩溃的问题
修复 使用菜单关闭浮动按钮时重启应用后浮动按钮可能依然显示的问题
修复 安卓 13 及以上系统设置页面选择并切换 AutoJs6 语言后无法生效的问题
修复 构建工具初次构建时无法自动完成 OpenCV 资源部署的问题
优化 原生化 bridges 模块以提升脚本执行效率 (Ref to aiselp)
优化 重构无障碍服务相关代码以增强无障碍服务的功能稳定性 (实验性)
优化 UiObject 和 UiObjectCollection 的打印输出格式
优化 构建工具在构建环境 Gradle JDK 版本不满足要求时作出升级提示
优化 部分依赖或本地库版本调整 CHANGELOG.md
6.4.0更新
新增 ocr 模块支持 Paddle Lite 引擎 (by TonyJiangWJ) pr
新增 打包功能支持内置插件与外部插件两种打包方式 (by LZX284) pr
新增 WebSocket 模块 (参阅 项目文档 > WebSocket)
新增 barcode / qrcode 模块 (参阅 项目文档 > 条码 / 二维码)
新增 shizuku 模块 (参阅 项目文档 > Shizuku) 及主页抽屉权限开关
新增 device.Rotation / device.orientation 等方法
新增 内部 Java 类支持 class 静态属性访问
新增 支持在安卓系统设置页面选择并切换应用语言 (安卓 13 及以上)
新增 支持设置页面添加或长按应用图标激活 应用快捷方式 , 可启动文档和设置等页面
修复 重新合并部分 PR (by aiselp) 以解决部分脚本无法正常结束运行的问题
修复 打包应用无法使用 AutoJs6 新增 API 的问题 (by LZX284)
修复 打包应用在系统夜间模式下的样式异常
修复 VSCode 插件保存文件到本地时文件扩展名信息丢失的问题
修复 使用协程特性运行项目产生未捕获异常致使应用崩溃的问题
修复 重启或退出应用时浮动按钮无法记录其位置状态信息的问题
修复 设备屏幕方向改变时无法获取更新后的设备配置信息的问题 issue
修复 屏幕旋转至横向时 Toolbar 标题字体过小的问题
修复 屏幕旋转至横向时应用主页的页签排版过于拥挤的问题
修复 屏幕旋转至横向时浮动按钮可能溢出屏幕的问题 issue #90
修复 屏幕多次旋转时无法恢复浮动按钮的坐标及屏幕侧边方向的问题
修复 部分设备消息浮动框可能出现遗漏显示或重复显示的问题
修复 消息浮动框在多个脚本同时运行时可能存在被遮蔽的问题 issue #67
修复 使用广播分析布局时点击布局无法弹出菜单且导致应用崩溃的问题
修复 第二次及以后创建的 WebSocket 实例均无法正常触发监听器的问题
修复 撤销 importPackage 的全局重定向方法以避免某些作用域下的包导入异常 issue #88
修复 日志活动页面使用复制或导出功能时可能导致应用崩溃的问题
优化 日志活动页面导出功能重命名为发送功能并重新实现符合实际意义的导出功能
优化 日志活动页面发送功能支持条目数量过大时自动截取并作出提示
优化 ocr 模块同时兼容 Google MLKit 及 Paddle Lite 引擎 (参阅 项目文档 > 光学字符识别)
优化 提升无障碍服务自动启动的成功概率
优化 Kotlin 注解处理由 kapt 迁移至 KSP
优化 构建工具支持 IntelliJ Idea EAP 版本
优化 构建工具自适应 Java 发行版本以尽量避免 "无效的发行版本" 问题
优化 构建工具优化 IDE 及相关插件的版本退级逻辑并增加版本预测能力
优化 适配 VSCode 插件 1.0.7
优化 部分依赖或本地库版本调整 CHANGELOG.md
6.3.1更新
新增 发布通知权限及主页抽屉开关 issue #55
新增 UI 模式支持简单的 Android 布局解析 (参阅 示例代码 > 布局 > 简单安卓布局)
新增 UI 模式增加 console / imagebutton / ratingbar / switch / textclock / togglebutton 等控件
新增 UI 模式控件的颜色色值支持 OmniColor 类型 (如 color="orange")
新增 UI 模式的控件完全支持 attr 方法设置控件属性 (如 ui.text.attr('color', 'blue'))
新增 UI 模式控件支持布尔类型属性值的缺省形式 (如 clickable="true" 可简写为 clickable 或 isClickable)
新增 button 控件支持 isColored 及 isBorderless 布尔类型属性
新增 console.resetGlobalLogConfig 方法用于重置全局日志配置
新增 web.newWebSocket 方法用于创建 Web Socket 实例 (参阅 项目文档 > 万维网)
修复 文件管理器的文件夹排序异常
修复 floaty 模块构建的浮动窗口无法调节样式及位置的问题 issue #60
修复 floaty 模块构建的浮动窗口与系统状态栏重叠的问题
修复 http.postMultipart 方法功能异常 issue #56
修复 Android 7.x 无法运行任何脚本的问题 issue #61
修复 sign.property 文件不存在时无法构建项目的问题
修复 高版本系统 AutoJs6 置于后台时可能因无前台通知权限而崩溃的问题 (API >= 33)
修复 调用 console.show 方法后日志窗口点击 FAB 按钮无法清空日志的问题
修复 脚本编辑器调试时出现的 prototype 空指针异常
修复 脚本编辑器运行脚本时在缓存文件夹运行临时脚本而非先保存再在原始位置运行以避免可能的脚本内容丢失问题
修复 调整布局层次分析的层级色条宽度避免层级过多时控件名称无法显示的问题 issue #46
优化 布局分析浮动窗口增加退出按钮以关闭窗口 issue #63
优化 脚本绝对路径使用简称形式以缩减文本长度并增加可读性
优化 将 Error 替换为 Exception 避免出现异常时 AutoJs6 应用崩溃
优化 视图 (View) 绑定方式由 ButterKnife 迁移至 View Binding issue #48
优化 服务端模式非正常关闭时将于 AutoJs6 启动时自动开启 issue #64
优化 客户端模式非正常关闭时将于 AutoJs6 启动时按最近一次的历史地址自动连接
6.3.0更新
新增 ocr 模块 (参阅 项目文档 > 光学字符识别)
新增 notice 模块 (参阅 项目文档 > 消息通知)
新增 s13n 模块 (参阅 项目文档 > 标准化)
新增 Color 模块 (参阅 项目文档 > 颜色类)
新增 前台时保持屏幕常亮功能及设置选项
新增 额外的文档启动器 (Launcher) 便于独立阅读应用文档 (支持在设置中隐藏或显示)
修复 colors.toString 方法功能异常
修复 APP.openUrl 方法自动添加协议前缀功能异常
修复 app.viewFile/editFile 在参数对应文件不存在时的行为异常
修复 PickUp 方法的回调函数无法被调用的问题
修复 布局分析显示的控件信息 bounds 属性值负数符号被替换为逗号的问题
修复 bounds/boundsInside/boundsContains 选择器无法正常筛选狭义空矩形 (如边界倒置矩形)
修复 更换主题或修改语言后点击或长按主页文档标签将导致应用崩溃的问题
修复 文本编辑器双指缩放调节字体大小时可能出现抖动的问题
修复 构建脚本中部分依赖源无法下载的问题 (已全部整合)
修复 Tasker 无法添加 AutoJs6 操作插件 (Action plugin) 的问题 (试修)
修复 高版本 JDK 编译项目时 ButterKnife 注解无法解析资源 ID 的问题
修复 无障碍服务较大概率出现服务异常的问题 (试修)
修复 images.medianBlur 的 size 参数使用方式与文档不符的问题
修复 engines 模块显示脚本全称时文件名与扩展名之间句点符号丢失的问题
修复 加权 RGB 距离检测算法内部实现可能存在的计算失误 (试修)
修复 console 模块的浮动窗口相关方法无法在 show 方法之前使用的问题
修复 console.setSize 等方法可能无法生效的问题
修复 colors.material 颜色空间的颜色常量赋值错误
修复 UI 模式的日期选择控件 minDate 及 maxDate 属性无法正确解析日期格式的问题
修复 运行脚本后快速切换到主页 "任务" 标签页面将出现两个相同运行中任务的问题
修复 文件管理页面从其他页面返回时页面状态可能被重置的问题
修复 文件管理页面排序状态与图标显示状态不符的问题
优化 文件管理页面增加文件及文件夹修改时间显示
优化 文件管理页面排序类型支持状态记忆
优化 README.md 添加项目编译构建小节与脚本开发辅助小节
优化 images 模块相关方法的区域 (region) 选项参数支持更多传入方式 (参阅 项目文档 > 全能类型)
优化 app.startActivity 页面简写参数增加 pref/homepage/docs/about 等形式的支持
优化 web 模块的全局方法挂载到模块本身以增强可用性 (参阅 项目文档 > 万维网)
优化 web.newInjectableWebView 方法内部默认实现部分常用的 WebView 设置选项
优化 colors 模块添加多种转换方法及工具方法并添加更多静态常量以及可直接作为参数的颜色名称
优化 console 模块添加多种控制台浮动窗口的样式配置方法并支持 build 构建器统一配置窗口样式
优化 控制台浮动窗口支持拖动标题区域移动窗口位置
优化 控制台浮动窗口支持脚本结束后自动延迟关闭
优化 控制台浮动窗口及其 Activity 活动窗口支持双指缩放调整字体大小
优化 http 模块相关方法支持超时参数 (TIMeout)
优化 Gradle 构建脚本支持 JDK 版本主动降级 (fallback)
优化 Gradle 构建脚本支持根据平台类型及版本自动选择合适的构建工具版本 (程度有限)
6.2.0更新
新增 重新设计及编写项目文档 (部分完成)
新增 西/法/俄/阿/日/韩/英/繁中等多语言适配
新增 工作路径设置选项增加路径选择/历史记录/默认值智能提示等功能
新增 文件管理器支持任意目录的上一级跳转 (直至 "内部存储" 目录)
新增 文件管理器支持将任意目录快捷设置为工作路径
新增 版本更新忽略及管理已忽略更新功能
新增 文本编辑器支持双指缩放调节字体大小
新增 idHex 选择器 (UiSelector#idHex) (参阅 项目文档 > 选择器)
新增 action 选择器 (UiSelector#action) (参阅 项目文档 > 选择器)
新增 Match 系列选择器 (UiSelector#xxxMatch) (参阅 项目文档 > 选择器)
新增 拾取选择器 (UiSelector#pickup) (参阅 项目文档 > 选择器)
新增 控件探测 (UiObject#detect) (参阅 项目文档 > 控件节点)
新增 控件罗盘 (UiObject#compass) (参阅 项目文档 > 控件节点)
新增 全局等待方法 wait (参阅 项目文档 > 全局对象)
新增 全局缩放方法 cX/cY/cYx (参阅 项目文档 > 全局对象)
新增 全局 App 类型 (参阅 项目文档 > 应用枚举类)
新增 i18n 模块 (基于 banana-i18n 的 JavaScript 多语言方案) (参阅 项目文档 > 国际化)
修复 软件语言切换后可能导致的页面文字闪变及部分页面按钮功能异常
修复 工作路径为一个项目时软件启动后不显示项目工具栏的问题
修复 工作路径可能跟随软件语言切换而自动改变的问题 issue #19
修复 定时任务启动延时显著 (试修) issue #21
修复 JavaScript 模块名被覆盖声明时导致存在依赖关系的内部模块无法正常使用的问题 issue #29
修复 高版本安卓系统点击快速设置面板中相关图标后面板可能无法自动收起的问题 (试修) issue #7
修复 高版本安卓系统可能出现部分页面与通知栏区域重叠的问题
修复 安卓 10 及以上系统无法正常运行有关设置画笔颜色的示例代码的问题
修复 示例代码 "音乐管理器" 更正文件名为 "文件管理器" 并恢复正常功能
修复 文件管理器下拉刷新时可能出现定位漂移的问题
修复 ui 模块作用域绑定错误导致部分基于 UI 的脚本无法访问组件属性的问题
修复 录制脚本后的输入文件名对话框可能因外部区域点击导致已录制内容丢失的问题
修复 文档中部分章节标题超出屏幕宽度时无法自动换行造成内容丢失的问题
修复 文档中的示例代码区域无法正常左右滑动的问题
修复 文档页面下拉刷新时表现异常且无法撤销刷新操作的问题 (试修)
修复 应用初始安装后主页抽屉夜间模式开关联动失效的问题
修复 系统夜间模式开启时应用启动后强制开启夜间模式的问题
修复 夜间模式开启后已设置的主题色可能无法生效的问题
修复 夜间模式下部分设置选项文字与背景色相同而无法辨识的问题
修复 关于页面功能按钮文本长度过大导致文本显示不完全的问题
修复 主页抽屉设置项标题长度过大导致文本与按钮重叠的问题
修复 主页抽屉权限开关在提示消息对话框消失后可能出现状态未同步的问题
修复 Root 权限修改主页抽屉权限开关失败时未继续弹出 ADB 工具对话框的问题
修复 Root 权限显示指针位置在初次使用时提示无权限的问题
修复 图标选择页面的图标元素排版异常
修复 文本编辑器启动时可能因夜间模式设置导致闪屏的问题 (试修)
修复 文本编辑器设置字体大小时可用最大值受限的问题
修复 部分安卓系统脚本运行结束时日志中无法统计运行时长的问题
修复 使用悬浮窗菜单关闭悬浮窗后重启应用时悬浮窗依然开启的问题
修复 布局层次分析时长按列表项可能导致弹出菜单溢出下方屏幕的问题
修复 安卓 7.x 系统在夜间模式关闭时导航栏按钮难以辨识的问题
修复 http.post 等方法可能出现的请求未关闭异常
修复 colors.toString 方法在 Alpha 通道为 0 时其通道信息在结果中丢失的问题
优化 重定向 Auto.js 4.x 版本的公有类以实现尽可能的向下兼容 (程度有限)
优化 合并全部项目模块避免可能的循环引用等问题 (临时移除 inrt 模块)
优化 Gradle 构建配置从 Groovy 迁移到 KTS
优化 Rhino 异常消息增加多语言支持
优化 主页抽屉权限开关仅在开启时弹出提示消息
优化 主页抽屉布局紧贴于状态栏下方避免顶部颜色条的低兼容性
优化 检查更新/下载更新/更新提示功能兼容安卓 7.x 系统
优化 重新设计设置页面 (迁移至 AndroidX)
优化 设置页面支持长按设置选项获取详细信息
优化 夜间模式增加 "跟随系统" 设置选项 (安卓 9 及以上)
优化 应用启动画面适配夜间模式
优化 应用图标增加数字标识以提升多个开源版本共存用户的使用体验
优化 主题色增加更多 Material Design Color (材料设计颜色) 选项
优化 文件管理器/任务面板等列表项图标适当轻量化并适配主题色
优化 主页搜索框的提示文本颜色适配夜间模式
优化 对话框/文本/Fab/AppBar/列表项等部件适配夜间模式
优化 文档/设置/关于/主题色/布局分析等页面及悬浮窗适配夜间模式
优化 页面布局尽可能兼容 RTL (Right-To-Left) 布局
优化 关于页面增加图标动画效果
优化 关于页面版权声明文本自动更新年份信息
优化 应用初始安装后自动决定并设置合适的工作目录
优化 禁用文档页面双指缩放功能避免文档内容显示异常
优化 任务面板列表项按相对路径简化显示任务的名称及路径
优化 文本编辑器按钮文本适当缩写避免文本内容溢出
优化 文本编辑器设置字体大小支持恢复默认值
优化 提升悬浮窗点击响应速度
优化 点击悬浮窗布局分析按钮直接进行布局范围分析
优化 布局分析主题自适应 (悬浮窗跟随应用主题, 快速设置面板跟随系统主题)
优化 布局控件信息列表按可能的使用频率重新排序
优化 布局控件信息点击复制时根据选择器类型自动优化输出格式
优化 使用悬浮窗选择文件时按返回键可返回至上级目录而非直接关闭悬浮窗
优化 客户端模式连接计算机输入地址时支持数字有效性检测及点分符号自动转换
优化 客户端及服务端建立连接后在主页抽屉显示对应设备的 IP 地址
优化 部分全局对象及内置模块增加覆写保护 (参阅 项目文档 > 全局对象 > 覆写保护)
优化 importClass 和 importPackage 支持字符串参数及不定长参数
优化 ui.run 支持出现异常时打印栈追踪信息
优化 ui.R 及 auto.R 可便捷获取 AutoJs6 的资源 ID
优化 app 模块中与操作应用相关的方法支持 App 类型参数及应用别名参数
优化 dialogs 模块中与异步回调相关的方法支持省略预填参数
优化 app.startActivity 等支持 url 选项参数 (参阅 示例代码 > 应用 > 意图)
优化 device 模块获取 IMEI 或硬件序列号失败时返回 null 而非抛出异常
优化 提升 console.show 显示的日志悬浮窗文字亮度以增强内容辨识度
优化 ImageWrapper#saveTo 支持相对路径保存图像文件
优化 重新设计 colors 全局对象并增加 HSV / HSL 等色彩模式支持 (参阅 项目文档 > 颜色)
优化 部分依赖或本地库版本调整
小飞机直链:https://www.666888.best/r?go=WpzVWFwb01zJCVAJGlodHRwczovL3hmandwLjY2Njg4OC5iZXN0P3Rva2VuP 密码:
评论 (0)