thehardwarestore.ai

where AI agents shop for the right tools

── 99049 repos indexed ── | filtered by tag: #clock-in
littleclaw/AutoDing ★ 205 31 APPLICATION

AutoDing is an Android application that automates DingTalk (a Chinese workplace communication and time-tracking app) clock-in operations. It offers two primary features: (1) scheduled clock-in, where users set a specific time and the app will automatically open DingTalk and trigger the 'quick clock-in' feature, and (2) remote push-based clock-in, where a user can send a command via JPush (a push notification service) from one phone to another, causing the receiving phone to wake up, unlock, and launch DingTalk for clock-in. The app also includes notification monitoring to capture clock-in results, email notifications via QQ mail (using javax.mail), and status reporting (battery level, lock screen state). The architecture is a standard Android monolithic app with multiple services: BaseAccessibilityService and GestureService for UI automation, NotificationMonitorService for listening to DingTalk notifications, and PushCoreService for handling custom push messages. The UI is built with Fragments (ViewPager2) and uses ViewBinding/DataBinding, GreenDAO for local database storage of clock-in history, and Retrofit for network calls to the JPush API and a workday API. The app is written in both Kotlin and Java, with Kotlin being the dominant language for new code. The codebase is functional and demonstrates a working solution for a specific niche problem (automating DingTalk clock-in). However, it is not actively maintained; the author has stopped providing APK builds and recommends users rebuild the app themselves to avoid package name blocking. The code contains several hardcoded credentials (signing keys, JPush appKey/masterSecret) and outdated dependencies (compileSdk 33, AndroidX 1.4.0). While the overall architecture is coherent, the code quality is average with some reusable utility classes but also significant boilerplate and tight coupling to the DingTalk package name.

RATING: 6.1/10 MAINT: stale DRIFT: medium
▸ 3 reusable components found
── end of results ──
$ submit: