Introduction
GKD (short for custom screen clicking) is an Android app that automatically interacts with UI elements using the system Accessibility Service. It lets users define or subscribe to rules that match specific on-screen nodes and perform clicks — primarily for dismissing ads, closing popups, and skipping splash screens.
What GKD Does
- Auto-dismisses app startup ads and interstitial popups
- Matches UI nodes using an advanced CSS-like selector language
- Supports community-shared rule subscriptions for popular apps
- Logs all matched and triggered rules for debugging
- Provides a visual snapshot inspector to build new selectors
Architecture Overview
GKD runs as an Android Accessibility Service that receives a stream of window change events. When a new window state matches a subscribed rule selector, it performs the defined action (tap, back, or custom gesture). The selector engine supports attribute matching, parent/child traversal, and logical combinators. Rules are distributed as JSON subscriptions that update automatically.
Self-Hosting & Configuration
- Install the APK and grant Accessibility Service permission
- Import community rule subscriptions via URL
- Use the built-in snapshot tool to capture UI trees for writing custom rules
- Configure per-app rule activation and exclusion lists
- Set global cooldowns and rate limits to prevent over-triggering
Key Features
- Advanced selector syntax with CSS-like node matching and traversal
- Subscription-based rule distribution with auto-update
- Built-in snapshot debugger for inspecting accessibility node trees
- Kotlin Multiplatform selector engine compiled to WebAssembly for web tools
- Minimal battery impact through event-driven architecture
Comparison with Similar Tools
- Tasker — general automation; GKD is specialized for UI-element clicking
- Auto.js — JavaScript scripting; GKD uses declarative selectors instead
- Shizuku — provides system API access; GKD focuses on Accessibility-based clicking
- MacroDroid — macro recording; GKD matches semantic UI tree nodes
- TouchTask — gesture automation; GKD targets specific node attributes
FAQ
Q: Does GKD require root access? A: No, it uses the standard Android Accessibility Service API which does not need root.
Q: How do I write custom rules? A: Use the built-in snapshot tool to capture a screen, inspect the node tree, then write a selector matching the target node attributes.
Q: Will it drain my battery? A: Impact is minimal because it only activates on accessibility events rather than polling.
Q: Can rules be shared with others? A: Yes, rules are packaged as JSON subscription files hosted on any URL.