Это пет проект, на который я потратил не мало времени. Я хотел сделать приложение, которое бы контролировало твоё времяпровождение в телефоне. По факту это родительский контроль. Дизайн я выбрал интересный для себя, я офрмил всё в стилистике старого терминала с crt эффектом.
Для UI выбрал Jetpack Compose. Язык Kotlin, для бд использовал библиотеку Room. Следовал принципам MVVM и чистой архитектуре. Ещё использовал системные API:
Foreground Service для постоянного мониторинга, WindowManager для построения наложений системного уровня, UsageStatsManagerдля точного анализа времени, проведенного за экраном.
Чтобы добиться атмосферы "Старого монитора", я разработал кастомную модель Modifier.crtEffect, которая: генерирует динамический шум и строки развертки с помощью API Canvas, реализует высокочастотное мерцание с использованием rememberInfiniteTransition, внедряет случайные артефакты "помех" на основе временных меток кадров.
Получилось крайне визуально эффектное приложение, которое помогает людям с зависимостями от соц сетей и родителям.