Projects About Experience Skills Contact Résumé
← All projects

OS-Level Enforcement

SelfControl for Android

KotlinJetpack ComposeAndroidRoomHilt
SelfControl for Android screenshot

An Android self-control app that blocks distracting apps and websites using Device Owner APIs — the same device-management layer as enterprise MDM — so restrictions can’t be bypassed by uninstalling the app.

Apps are suspended at the OS level with setPackagesSuspended(), and website rules are pushed into Chrome via managed configurations: URL blocklists, forced SafeSearch, disabled incognito. Schedulable block groups support overnight windows, and add-only lock semantics — locked blocks can tighten but never loosen — are enforced in a single LockManager.

Installation gating classifies newly installed apps from their Play Store page and imposes a 24-hour cooldown on restricted categories. Built with Kotlin 2.0, Jetpack Compose, Room, Hilt, and WorkManager, with unit-tested domain logic and CI.