TrueTether Shield is a powerful, recovery-focused Android application designed to help individuals overcome gambling addiction. It provides a robust, multi-layered protection system that blocks access to gambling websites and native applications while enforcing healthy boundaries through security guardrails.
TrueTether creates a local VPN tunnel to intercept and filter DNS requests.
-
Trie-Based Engine: Uses a high-performance Trie data structure to match domains and subdomains in
$O(k)$ time. - Reverse Domain Matching: Efficiently blocks entire gambling networks and their subdomains.
- Customizable Blocklist: Initialized with major sportsbooks and gambling platforms (Bet365, FanDuel, DraftKings, etc.).
Beyond web-based blocking, TrueTether actively monitors for the opening of native gambling applications.
- Real-time Detection: Polls the system every 300ms to detect if a blocked app has entered the foreground.
- Auto-Minimize: Automatically forces the device back to the Home Screen if a gambling app is detected, breaking the impulse loop.
Designed to prevent impulsive disabling of protection.
- 48-Hour Cooldown: Requests to stop protection are delayed by 48 hours, providing a vital "cooling off" period.
- Partner Approval: Immediate unlocking is only possible with a unique token generated for an accountability partner.
- ProGuard Hardening: Advanced obfuscation rules prevent users from easily tampering with the application's logic.
A modern, dark-themed UI that tracks your recovery progress and provides a "Panic Button" for when urges strike.
- Language: Kotlin
- UI Framework: Jetpack Compose
- Network: VpnService (Local Interception)
- Security: AndroidX Security (Encrypted storage), UsageStatsManager
- Build System: Gradle 8.11.1 with Kotlin DSL
- Clone the repository:
git clone https://github.com/thatappguy71/TrueTether.git
- Open in Android Studio: Ensure you are using the latest Ladybug or newer version.
- Grant Permissions:
- VPN Access: Required for DNS filtering.
- Usage Access: Required for app monitoring.
- Display Over Other Apps: Required for blocking overlays.
This project is licensed under the MIT License - see the LICENSE file for details.