Threshold

~ screen time management app ~

A screen time management app built with native Android • Track app usage, set timers, and manage your digital habits • All data stays on your device

// Overview

Threshold is a screen time management app built with native Android (Kotlin/XML). Track app usage, set timers, and manage your digital habits—all while keeping your data private and local.

Get it on GitHub

// Features

• Real-time app usage tracking with session details
• Set daily time limits (5-300 minutes) for apps
• Home screen widgets (1x1 and 2x2 sizes)
• Charts and hourly breakdowns
• Filter out apps you don't want to track
• All data stays on your device, no internet required
• Device Admin protection to prevent uninstallation

// Screenshots

Threshold Screenshot 1 Threshold Screenshot 2 Threshold Screenshot 3

// Tech Stack

Language: Kotlin & XML
Framework: Native Android
UI: Material Design 3
Charts: MPAndroidChart
Platform: Android (API 24+)
Target SDK: API 36

// Getting Started

Prerequisites

Android Studio (latest stable version)
• Android device or emulator (API 24+)

Installation

git clone https://github.com/alfahrel/threshold.git cd threshold

Open the project in Android Studio and sync Gradle.

Build APK

# Debug APK ./gradlew assembleDebug # Release APK ./gradlew assembleRelease

The APK will be in app/build/outputs/apk/

// Required Permissions

Usage Access – Track app usage statistics
Accessibility Service – Monitor app activity and enforce timers
Display Over Other Apps – Show timer notifications
Device Administrator – Prevent unauthorized app removal

All permissions are requested on first launch with explanations.

// Contributing

If you'd like to contribute:

• Fork the project
• Open issues for bugs or feature requests
• Submit pull requests
• Follow Kotlin/Android style guidelines

// License

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.

← Back to home