从0到1,教你如何使用Tasker+Autojs实现自动打卡功能

简介: 从0到1,教你如何使用Tasker+Autojs实现自动打卡功能

你是否有上下班总会忘记打卡或者迟到的困扰,这篇文章将带你感受一下自动化工具+JS的魅力

首先声明:本文章不针对任何第三方软件,文章中的脚本只做学习,不做商用,侵删

准备工作:


安卓手机或模拟器,最好使用模拟器(推荐夜神模拟器安卓7的64位),因为手机条件会比较苛刻(需要root,和谷歌三件套)

Auto.js软件,或者其衍生产品AutoX.js

Tasker,中文站,原网站

需要自动执行的软件,我用的是 *人薪事

首先,咱们熟悉一下Auto.js的调试,官方文档已经写的很清楚了,我主要概述一下抓取组件调试的过程

以AutoX.js为例,VScode安装Auto.js-VSCodeExt-Fixed插件,按住ctrl+shift+p,输入auto即可进入插件的工具菜单,选择 ‘开启服务’,复制右下角服务ip及端口,就可以等待移动端连接了


1.png1.png


如果是用手机连接,需要开启:开发者工具>USB调试,模拟器则直接打开AutoXjs侧边栏的连接电脑,输入之前复制的服务ip及端口,开启调试模式


1.png1.png


打开悬浮窗,用于应用控件的抓取


1.png1.png


以Tasker为例,点击悬浮窗的 ‘布局分析’ ,选择布局范围分析,AutoXjs会将当前页面中的可操作控件列举出来,此时通过js代码进行事件操作即可实现自动化控制


1.png1.png1.png


以搜索框为例,我们实现一个 模拟搜索 的诉求

1.png


根据官方文档,我们可以简单实现该功能

const appName = "Tasker",
  getSearchBtn = () => desc("搜索 Tasker"), //搜索按钮,desc文本查找控件
  getSearchInput = () => id("filter_text"), //输入框
  startSearchBtn = () => id("search"), //开始查询按钮
  str = "打卡";
console.log("launchApp:" + appName, launchApp(appName)); //打开Tasker app
console.log("getSearchBtn", getElem(getSearchBtn()).click()); //点击搜索按钮
console.log("getSearchInput", getElem(getSearchInput()).setText(str)); //输入关键字
console.log("startSearchBtn", getElem(startSearchBtn()).click()); //点击开始搜索按钮
function getElem(ele) {
  return ele.findOne();
}

效果如下:

1.png

接着,咱们照葫芦画瓢,参照文档使用模拟动作实现操控其他软件的功能,比如每次执行脚本时,都会自动在打卡软件中打卡(源码放在结尾)


image.png


AutoX.js已经帮助我们实现了半自动打卡,距离我们的目标又近了一步


下面我们需要使用Tasker配合AutoX.js达到触发某(些)条件时打卡即可


打开tasker,新建任务test


1.gif


在任务编辑中新建系统操作>发送意图,这里我新建了一个android.intent.action.tasker的广播,用于和AutoX交互


1.png1.png1.png


我们在AutoX中新建一个脚本触发事件,当有应用触发android.intent.action.tasker时,执行这个打卡脚本


1.png1.png1.png1.png


然后我们在Tasker中运行这个任务用来触发AutoX执行脚本


至此,使用Tasker连接AutoX这块已经完成,接下来就是触发任务的条件了

既然是自动打卡,肯定与时间地点有关系。所以,我们在Tasker的配置文件中新建配置,配置时间,和地点(需要谷歌三件套),并选择任务,当达到特定时间地点时,Tasker就会触发打卡脚本


1.png


写在最后:


使用Tasker+Autojs实现打卡固然好用,但是其对手机要求较高,如果你的手机恰好root,并装了谷歌三件套,使用起来会比较方便。其他同学推荐使用安卓模拟器实现。


源码:myCode: 一些小案例 - Gitee.com


相关文章
|
Android开发
autojs无Root访问data目录实现
牙叔教程 简单易懂
2823 0
|
Android开发
Autox.js 脚本开发环境搭建,从案例到打包apk(详细流程)
Autox.js 脚本开发环境搭建,从案例到打包apk(详细流程)
3368 0
AutoJs4.1.0实战---部局范围次分析(带图)
AutoJs4.1.0实战---部局范围次分析(带图)
241 0
|
Oracle Ubuntu Java
Ubuntu安装JDK
一. Ubuntu 安装JDK的两种方式 1. 通过apt安装. 2. 通过官网下载安装包安装. 这里推荐第1种,因为可以通过 apt-get upgrade 方式方便获得jdk的升级 二. 通过apt安装(jdk有很多版本, 这里介绍两种: openjdk和oracle的JDK) 1.
71309 4
|
Docker 容器 数据格式
Docker 修改镜像源地址
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34173549/article/details/80417198 我的Docker 版本为 1.
42290 0
识图点击脚本,图片识别连点器,自动点击精灵【autojs】
主脚本实现基于模板匹配的自动点击功能,包含UI界面和参数配置。增强版提供了多目标识别和
|
7月前
|
移动开发 JavaScript API
HarmonyOS Next 简单上手元服务开发
本文介绍了 HarmonyOS Next 中元服务的开发流程与关键特性。元服务是一种轻量级应用程序形态,支持免安装、秒开直达,适用于听音乐、打车等场景,大幅提升服务获取效率。文章详细讲解了元服务的开发旅程,包括在 AGC 平台上新建项目、修改名称与图标、新增卡片等内容,并提供了代码示例,如 AtomicServiceTabs 的 tab 切换和标题设置、AtomicServiceNavigation 的路由管理等。此外,还探讨了 AtomicServiceWeb 的使用方法,涵盖鸿蒙页面与 h5 页面的数据传递及方法调用。
455 20
HarmonyOS Next 简单上手元服务开发
|
IDE 开发工具 iOS开发
Pandas如何在PyCharm中进行安装?
【7月更文挑战第4天】Pandas如何在PyCharm中进行安装?
3715 61
|
机器学习/深度学习 计算机视觉
【YOLOv10改进-卷积Conv】SCConv :即插即用的空间和通道重建卷积
YOLOv10专栏介绍了将Swin Transformer应用于目标检测的创新。Swin Transformer采用分层窗口结构,解决了视觉任务中的尺度变化问题,提供线性复杂度的效率提升。在图像分类、目标检测和语义分割任务中表现出色,超越先前最佳模型。YOLOv10结合Swin Transformer,利用其局部注意力机制和层次化设计,提升了检测性能。提供的代码片段展示了Swin Transformer模块,包括窗口划分、注意力计算和相对位置偏置。更多信息可在相关博客文章中找到。
|
安全 Java Shell
Android13 adb input 调试命令使用和源码解析
Android13 adb input 调试命令使用和源码解析
1926 1