安卓手机实现到点自动打卡
目录
起因是8月有一日下班我忘记打卡了。
等我发现时试图回想那日发生了什么,只知道是周一,上班干了啥,下班啥时候走的,全然不记得了。毕竟大脑是有保护机制的,哪个打工人在过去N天之后还记得下班点的事情呢,对吧。
但,扣钱这件事是一直记着的……
于是我痛定思痛,想法子搞了个下班自动打卡的流程。
以上,瞎掰胡扯结束。
基础信息
-
手机系统是 安卓;
-
打卡APP是 钉钉。
-
使用的自动化工具叫 MacroDroid,官网 www.macrodroid.com ,下载平台 Google Play
-
另外视情况还需要 MD辅助应用
设置钉钉
先说钉钉。
添加桌面小工具
在安卓桌面屏幕上添加钉钉的【考勤打卡】工具。
添加完成后,只要在屏幕上点击这个工具,就能自动跳转到钉钉打卡页面。
开启极速打卡
钉钉有个【极速打卡】功能:“打卡页面-设置-极速打卡”,打开下班极速打卡开关,视情况选择起止时长“下班时间~下班后4小时”。
开启功能后,当停留在钉钉的打卡页面时,会自动完成下班打卡。
完成以上两步设置后,只要在下班4小时内,点击主屏幕上的【考勤打卡】小组件,就能完成打卡。
接下来,需要实现的是:如何才能在指定时间点完成自动点击桌面组件,而无需我手动操作呢?
MacroDroid
首先下载安装,没什么好说的。
要怎么介绍这个APP是干啥的呢,大概就是可以利用它,实现在手机上点击/长按等操作,或者调用打开各类软件应用等,这些动作组合起来实现自动化流程,这一整套流程就叫做“宏”。
“宏”的基础功能免费,如果想实现更复杂的自动化,需付费购买。
体验下来,免费功能够用了,多次编辑保存时,会偶尔强制跳转付费购买会员的广告观看七秒。
权限授予
-
给权限,像储存权限等等,需要啥给啥
-
在【无障碍】中开启 MacroDroid ,后续视操作需要,也会陆续开启其他功能。
-
将 MacroDroid 长期保持在后台。这一点视手机品牌不同,相关操作有所区别。把 MacroDroid 加运行入白名单,或者设置允许自启动、允许后台活动等等……
-
涉及Wifi开/关/切换功能,需要下载【MD辅助应用】,相关说明及下载链接在: https://macrodroidforum.com/index.php?threads/macrodroid-helper-apk.1/
场景及处理思路
首先,需要在下班后打卡,以时间点作为触发条件。
其次,我司打卡规则要求设备需连接指定Wifi;而网络又常常不稳定,工作时我会切成自己的流量使用;故还需要判断Wifi是否开启。
第三,在测试中发现,若手机息屏了,MacroDroid 虽完成了点击操作,但屏幕也没法打开,钉钉的自动打卡无法触发。故优先判断屏幕状态。
综合以上,按此思路进行:
- 判断屏幕是否息屏:是,唤醒屏幕再执行下一步;否,执行下一步;
- 判断设备是否未连接Wifi:是,打开wifi,等待自动连接,执行下一步;否,执行下一步;
- 点击桌面上的【考勤打卡】,等待跳转至钉钉打卡页面
- 完成自动打卡,给予提示。
具体配置
这里就不一一记录了,上图。
另外说明几个点:
-
唤醒屏幕后,需要滑动解锁。这一动作在“设备动作 - 界面交互 - 手势”中设置具体的数值。我的获取方法是在设备的【设置-开发人员选项-打开指针位置】 后,录屏记录滑动操作的起止位置像素点。
-
MacroDroid 开启wifi时,会通过【MD辅助应用】再次确认是否开启。这时页面上的弹窗通过“设备动作 - 界面交互 - 点击 - 文本内容 - 匹配‘允许’”进行自动点击。
-
点击【考勤打卡工具】操作实现:通过“设备动作 - 界面交互 - 点击 - 在应用中识别”进行;选取后,会回到主屏幕,按提示手动切换具体页面、点开通知栏通知、点击页面上的相应位置,从而让MacroDroid记录点击位置。
-
最后给了一个完成打卡的提示框:“通知 - 显示对话框”,填写对应文本即可。
最后更新于: 2023 年 9 月 3 日