UsageAlert is an Android application that monitors monthly mobile data usage, compares it with the "expected usage" based on elapsed time, and notifies you of overuse.
- Real-time Monitoring: Displays status by comparing current monthly mobile data usage against expected usage for the elapsed time.
- Status Determination Algorithm:
elapsedTimeRatio = Elapsed time since billing day / Total time in monthexpectedUsage = max(Monthly limit × elapsedTimeRatio, Minimum expected usage)usageRate = Current usage / expectedUsage- Status Results:
RED: usageRate >= 1.0 (Overused)YELLOW: usageRate >= 0.8 (Warning)NORMAL: Otherwise (Normal)
- Daily Periodic Report: Sends notifications at a scheduled time with current usage status.
- Flexible Settings: Easily update monthly limit (GB), billing cycle day, and report time anytime.
- Kusa Theme: Eye-friendly design based on "Kusa" (grass green) colors.
(Place screenshots here)
- Language: Kotlin
- UI: Jetpack Compose
- Data Persistence: Jetpack DataStore (Preferences)
- Background Tasks: WorkManager
- Data Access: NetworkStatsManager (UsageStats)
- Architecture: MVVM
- Open the project in Android Studio.
- Run on an Android device or emulator.
- After launching, enable "Usage Access Permission" (can be accessed via the on-screen prompt).
- For Android 13 or higher, notification permissions are also required.