移动端(APP)自动化脚本工具详细列举(autojs、easyclick、hamibot、ctrljs ...)

简介: 移动端(APP)自动化脚本工具详细列举(autojs、easyclick、hamibot、ctrljs ...)

一、简介

  • App 自动化脚本工具分为 需连接PC无需连接PC 方式
    需连接 PC:也就是写好的自动化脚本,需要将手机连接到电脑,运行脚本才能生效,这种通常用来做自动化测试,例如 appiumairtestYyds.Auto
    无需连接PC:这种一般都是 App,什么意思?就是写好的脚本,需要跑在一个能解析这个脚本的 App 上,通常这样的自动化 App 都有支持一种到多种的脚本语言。这样就不需要连接 PC,能实现一些自动化的脚本工具,到哪都能随时执行。
  • 如果是一些不需要抓取分析页面数据的自动化任务,可以使用 按键精灵触动精灵 等软件代替,支持中文写自动化脚本。
  • 自动化必备姿势点:
  • 什么是 无障碍模式
    无障碍服务(AccessibilityService),是 Google 推出为了帮助残障用户使用 Android 设备和应用而推出的比较特殊的 service。通过无障碍服务,开发者可提供界面增强功能,来协助残障用户或可能暂时无法与设备进行全面互动的用户完成操作。
  • 图色查找 vs 节点(控件)查找
    基于节点查找元素,可兼容所有机型,只要元素的对象是安卓原生 app 就行;但是如果元素的对象不是原生安卓,比如 Unity3D 的游戏,那节点查找可能就失效了(如果 UI 控件不支持),那么此时就需要改为“图色查找”,所以最好是两者都有。
  • root vs 免root
    设备是否开启 root 权限,是移动 APP 风控策略中最基础的参数,免root 是必须的,否者 app 首次启动的时候,就会进入灰名单,严格监控。
  • 打包 与 不打包
    打包的好处在于,一是可以商业化,二是可以脱离 PC 独立运行。
  • 所以理想的软件,需要具备:
    免root图色&节点都支持可打包。也就是 easyclick > 按键 = auto.js = airtest ...,但是现在 autojs、easyclick 都收费了,所以如果要做游戏自动化,那么必须要支持图色,如果只是普通 App 应用,节点查找就够了。

二、无需连接 PC

  • Auto.js】重点:只支持Android,不支持iOS;可以将脚本打包成apkJavaScript编写。Auto.js是一款基于JavaScript编写的安卓自动化脚本引擎,它提供了一系列API接口,可以方便地实现屏幕点击、滑动、输入、截图、音量控制等操作。使用它可以快速地完成一些重复性、繁琐的任务,例如刷微信步数、自动签到、抢红包等。可以直接在手机上运行脚本,无需连接PC,无需root权限的JavaScript自动化软件。由于原作者不再维护Auto.js项目,目前常见的两个分支:AutoX.jsAuto.js Pro
  • 因为多用在黑灰产,被某些资本警告,导致该工具无法对某些应用进行操作 ( 例如:微信、支付宝、抖音 等 )。4.1 版本是免费版的最后一个版本,可以在所有 app 上进行操作。
  • AutoX.js 是在 Auto.js 4.1.1 版本基础上 fork 而来,可操作所有软件,并拥有大量 autojs pro 的功能;开源的,文档地址
  • Auto.js Pro 是原作者在 autojs 上提供了一个付费的工具,拥有更强大的功能,但是同样无法操作某些软件;商业化版本,闭源的,文档地址
  • Auto.js 各版本之间的区别
  • 优势:
    通过无障碍服务,实现对元素行为的控制,设备无需 root,基于节点查找元素,而非图色,执行速度快,能打包。
    劣势:
    新版本收费,因有很多人把 auto.js 用于黑产,所以对 auto.js 进行控制,无法对淘宝、微信的主流APP 进行操控,不支持图色查找。
  • EasyClick
    附:EasyClick 和 Auto.js 区别
    重点:支持 AndroidiOSiOS 无需越狱也能运行;适合游戏自动化、公办自动化、自动化测试等;JavaJavaScript 编写,也支持混写。
    EasyClick 是一个基于 Xposed 框架的安卓自动化工具,它可以帮助用户实现一些简单的自动化操作,例如屏幕上的点击、滑动等。相比 Auto.jsEasyClick 的学习曲线更低,适合初学者使用。
    优势:
    支持无障碍服务,所以也免 root,可基于节点查找元素,可基于图色查找元素,能打包。
    劣势:
    无论企业还是个人版本在打包时都要收费了,开发工具必须是 IntelliJ IDEA,功能很强大,但是功能多也容易卡,新产品社区不成熟,遇到问题可能需要独立搞定。
  • Hamibot
    重点:只支持 Android,不支持 iOS;可以将脚本打包成 apkJavaScript 编写。
    Hamibot 是一款 Android 平台 JavaScript 自动化工具,无需 root,也可以无需编程基础,在脚本市场内安装脚本即可运行,但是需要注册账号使用。
    类似 autojs 的自动化工具,可以通过浏览器远程控制。适用于安卓系统的自动化工具,能全自动操控任意 APP
    Hamibot 连接手机:https://www.i3zh.com/22556.html
  • 冰狐智能辅助
    重点:只支持 Android,不支持 iOS;可以将脚本打包成 apkJavaScript 编写。
    冰狐智能辅助是一个让不懂编程的菜鸟在极短时间内、以最小成本实现各种APP辅助(自动化)功能的开发平台。可以创建自动化工具、智能辅助、效率工具、小应用。譬如:自动签到、网络推广、批量处理、机器人、自动化测试、自动化运营,自动回复、抓取APP(抖音)数据等等。
    类似 Autojs,比 autojs 简单,功能还强大。
  • Ctrl.js
    重点:只支持 Android,不支持 iOS;可以将脚本打包成 apkJavaScript 编写。
    Ctrl.js 是基于 js 语法规则的自动化控制编程语言。Ctrl.js 支持 web 可视化编程,控件可自由组合拖拽,只需少量 js 代码即可一键生成安卓程序(APK)。Ctrl.js 自带IDE 在线编辑工具,是集编程、打包、云控为一体的语言平台,进入“在线开发环境”即可一栈完成。
    类似 auto.js
  • AiBote
    重点:支持 AndroidWindowsBrowser 三大平台;JavaScriptPython 编写。
    AiBote 详细简介,框架免费开源、支持打包 exe 和界面开发。
    Windows xpath 元素定位算法支持 支持 Windows 应用、.NETWPFQtJavaElectron 客户端程序和 ieedgechrome 浏览器。
    Android 支持原生 APPH5 界面,元素定位 速度是 appium 十倍,无线远程自动化操作多台安卓设备。
  • 其他还有 AutomateItAutomateTasker

三、需连接 PC

  • 【Yyds.Auto】
    重点:只支持 Android,不支持 iOS;不可以将脚本打包成 apk,支持云机;Python 编写。
    与其它同类软件不一样,该软件注重使用 root 并发挥 root 的强大稳定的功效,可作为三方插件被其它 app 轻易调用,具有生产力的自动化软件,不依赖无障碍,实现如点击,滑动,截图,图片识别, busybox 等功能, 并且使用为手机端极致优化的高性能神经网络的 ncnn 作为 ai 引擎, 内置前沿 yolopaddle ocr 模型, 智能触手可及!
    Yyds.Auto 本身还是一个 auto.js 插件,如果仅使用 auto.js,可以方便地调用某些函数,比如无视权限提示进行截图或 OCR,以及不依赖无障碍实现控件识别等,给你雪碧一样的清凉体验! 与其它插件不一样的是,Yyds.Auto 核心逻辑不加载到 auto.js,所有功能都是跨进程调用,所以需要先激活下引擎~
    优势:
    软件支持 root非root 方式 支持图色与控件定位,简洁高效。
    劣势:
    没有简便的 ui 设计,不支持无障碍,不支持打包。
  • appium、airtest
    不写了,这两都一样,写了脚本连接 PC 测试,不支持打包。
相关文章
|
18天前
|
敏捷开发
【sgCreatePinyin】自定义小工具:敏捷开发→自动化生成拼音字段名称(字段名生成工具)
【sgCreatePinyin】自定义小工具:敏捷开发→自动化生成拼音字段名称(字段名生成工具)
|
30天前
|
jenkins 持续交付
Jenkins自动化部署脚本
Jenkins自动化部署脚本
30 0
|
1月前
|
jenkins 测试技术 持续交付
现代软件测试中的自动化工具与挑战
随着软件开发领域的不断发展,自动化测试工具在测试过程中扮演着越来越重要的角色。本文将探讨现代软件测试中自动化工具的应用及面临的挑战,旨在帮助开发人员和测试人员更好地理解和应对自动化测试中的问题。
|
2天前
|
算法 安全 Linux
Ansible自动化工具copy复制用法
Ansible 中的 copy 模块用于将文件或目录从本地计算机或远程主机复制到远程主机上的特定位置。它是一个功能强大的模块,可用于各种文件传输任务. ### 作用 将配置文件复制到远程服务器 将应用程序部署到远程服务器 将日志文件从远程服务器复制到本地计算机 备份和恢复文件和目录
Ansible自动化工具copy复制用法
|
3天前
|
存储 运维 Shell
Ansible自动化运维工具安装和基本使用
Ansible 是一款无代理的IT自动化工具,通过SSH连接目标主机执行配置管理、应用部署和云端管理任务。它使用YAML编写的Playbook定义任务,核心组件包括Playbook、模块、主机清单、变量等。Ansible的优势在于易用、功能强大、无须在目标主机安装额外软件,并且开源。安装过程涉及配置网络源、yum安装和SSH密钥设置。通过定义主机清单和使用模块进行通信测试,确保连接成功。
Ansible自动化运维工具安装和基本使用
|
4天前
|
Linux Shell Android开发
自动化脚本之GPIO/LED相关适用于Android/Linux
自动化脚本之GPIO/LED相关适用于Android/Linux
13 0
|
18天前
|
JSON 测试技术 持续交付
自动化测试与脚本编写:Python实践指南
【4月更文挑战第9天】本文探讨了Python在自动化测试中的应用,强调其作为热门选择的原因。Python拥有丰富的测试框架(如unittest、pytest、nose)以支持自动化测试,简化测试用例的编写与维护。示例展示了使用unittest进行单元测试的基本步骤。此外,Python还适用于集成测试、系统测试等,提供模拟外部系统行为的工具。在脚本编写实践中,Python的灵活语法和强大库(如os、shutil、sqlite3、json)助力执行复杂测试任务。同时,Python支持并发、分布式执行及与Jenkins、Travis CI等持续集成工具的集成,提升测试效率和质量。
|
18天前
|
敏捷开发
【sgCreateTableData】自定义小工具:敏捷开发→自动化生成表格数据数组[基于el-table]
【sgCreateTableData】自定义小工具:敏捷开发→自动化生成表格数据数组[基于el-table]
|
26天前
|
Java 测试技术 API
软件测试中的自动化工具与策略
软件测试是确保软件质量的重要环节,而自动化测试工具和策略的应用在提高测试效率和准确性方面发挥着重要作用。本文将介绍几种常见的自动化测试工具,并探讨在软件测试中应用自动化测试的最佳实践和策略。
|
28天前
|
Web App开发 Java 测试技术
深入理解与应用软件自动化测试工具Selenium
随着软件开发的快速发展,软件测试在保证产品质量方面发挥着越来越重要的作用。其中,自动化测试以其效率高、成本低的特点受到了广大开发者的欢迎。本文主要介绍了自动化测试工具Selenium的基本概念、原理以及在实际开发中的应用,旨在帮助读者更好地理解和使用Selenium进行高效的自动化测试。
22 4

热门文章

最新文章