本项目是基于 MVVM + Jetpack 设计模式和组件进行开发,主要通过无障碍服务来实现钉钉自动打卡功能,目前只适用于 MIUI 系统
(点击跳转下载安装包)-
在用户授予相关权限并设置了考勤时间及锁屏密码后,该 APP 将会在指定时间自动唤醒屏幕并解锁,并启动钉钉进行打卡,然后息屏直到下一个打卡时间
-
当今天所有打卡时间已过,自动停止前台服务,直到第二天凌晨将再次启动前台服务进行定时打卡
-
周末默认不启动定时打卡前台服务,此时如有需要可通自行启动服务,支持通过快捷方式启动
-
通过 PowerManager 唤醒屏幕
-
使用 MMKV 库存储手机解锁密码及考勤数据
-
通过 AccessibilityService 模拟用户操作进行自动化解锁和打卡
-
通过 DevicePolicyManager 息屏
-
通过用户给予 自启动权限 + 启用无障碍服务 的方式进行保活
-
Lifecycle: Create a UI that automatically responds to lifecycle events.
-
LiveData: Build data objects that notify views when the underlying database changes.
-
Retrofit2: Type-safe HTTP client for Android and Java by Square, Inc.
-
OkHttp: An HTTP+HTTP/2 client for Android and Java applications.
⭐ 项目框架参考了优秀博主 却把清梅嗅 的 MVVM-Architecture 并对其部分代码进行了引用.
-
Email: ziwen.lan@foxmail.com