Я делаю приложение, которое перед открытием выбранных приложений и игр показывает свой экран с коротким заданием. Чтобы это работало, нужно в каждый момент знать, какое приложение на переднем плане, не разряжать батарею и пережить агрессивную экономию энергии у разных производителей. Рассказываю, на чём я спотыкался и как это сейчас устроено.
Рубрика «kotlin»
Блокировщик, который нельзя смахнуть: как я следил за чужими приложениями на Android без AccessibilityService
2026-11-07 в 7:38, admin, рубрики: android, foreground_service, kotlin, miui, UsageStatsManagerAndroid-клиент для DeepSeek Harness: как работать с агентом на ПК с телефона без облака и FCM
2026-10-25 в 13:48, admin, рубрики: android, deepseek harness, jetpack compose, kotlin, node.js, qr-код, sse, TailscaleDeepSeek Harness (дальше — DSH) у меня работает на компьютере, и там же живут агент, его сессии и история, инструменты, подписки и ключи провайдеров. Чтобы добраться до этих чатов с телефона, я написал DSH Mobile — клиент для Android. Проект неофициальный, к DeepSeek отношения не имеет, код открыт под MIT. С телефона видны чаты всех проектов одним списком; агенту можно поставить задачу, приложить к ней фото или файл, ответить на его вопрос, а когда ответ готов, приходит уведомление.
Анатомия клиента Telegram на Compose Multiplatform: матрешки TDLib 1.8, стеганография словами и грабли первой альфы
2026-10-18 в 11:29, admin, рубрики: android, compose multiplatform, e2ee, gemini api, kmp, kotlin, open source, TDLib, telegram, криптографияРешил написать свой Telegram на KMP за 30 дней. Что может TDLib и с чем у меня возникли проблемы
NetFix Mobile: как я сделал Android-приложение, которое чинит YouTube, Discord и Telegram на телефоне и ТВ
2026-10-16 в 10:00, admin, рубрики: android, Discord, dpi, jetpack compose, kotlin, telegram, YouTube, обход, прокси, ркнС чего всё началось
Всё началось с ограничений доступа. Discord заблокировали в 2024 году, YouTube сначала замедлили, а в феврале 2026 года, по сообщениям СМИ, он пропал из национальной системы доменных имён. Telegram деградировал постепенно: сначала перестали работать звонки, потом почти не грузились фото и видео, 10 февраля 2026 года Роскомнадзор официально объявил об ограничении, а в какой-то момент мессенджер вообще перестал загружать чаты и висел на «Подключение…».
Я написал свой музыкальный плеер со своим стримингом: Android, Windows, Linux и сервер на Rust
2026-09-29 в 10:30, admin, рубрики: flac, Hi-Res Audio, jetpack compose, kotlin, Rust, self-hosted, tauri, музыкальный плеер, стриминг музыкиУ меня есть коллекция музыки: FLAC, японские альбомы, которых нет в стримингах обычно, редкие релизы с додзин‑фестивалей. Слушать её хотелось так же удобно, как Spotify: с телефона, с компьютера, с текстами, статистикой и итогами года. А получалось как в 2010-м: файлы копируются руками, плейлисты живут на одном устройстве, а тексты японских песен без чтений иероглифов бесполезны.
Оффлайн телесуфлёр поверх Instagram и TikTok: распознавание речи на телефоне, выравнивание по словам
2026-09-28 в 15:57, admin, рубрики: accessibility service, android, kotlin, open source, sherpa-onnx, zipformer, микрофон, офлайн, распознавание речи, телесуфлёрЯ снимаю рилсы с телефоном в руке и хотел суфлёр, который сам прокручивает текст, пока я говорю, причём поверх Instagram, TikTok или системной камеры, а не в собственном рекордере. Самым трудным оказалось не распознавание речи, а микрофон: во время записи видео Android отдаёт его камере.
Как мы вдвоем писали кроссплатформенный мессенджер: Compose Multiplatform, SFU на Go и сжатие трафика
2026-09-23 в 5:14, admin, рубрики: android, compose multiplatform, golang, kotlin, pion, WebRTC, мессенджер, шифрование данныхИдея написать собственный мессенджер появилась не от хорошей жизни. У нас была конкретная прикладная потребность: получить полностью независимый инструмент связи, который не завязан на сторонние облачные сервисы, нормально поднимается на скромных серверах и адекватно ведет себя при перебоях со связью.
Я сделал «идеальный» мессенджер с ИИ и не знаю, что с ним делать
2026-08-08 в 7:16, admin, рубрики: kotlin, UI, дизайн, мессенджерыВ январе 2025 года, после различных экспериментов с кодом для чатов, я захотел сделать свой красивый «идеальный» чат.
Мне хотелось, чтобы «кнопки выглядели именно так», чтобы при тапе на кнопку был импакт, чтобы форма бабблов сообщений была именно такой формы, чтобы были анимации открытия экрана, и множество других хотелок по чат UI/UX.
Всё это мне хотелось в мессенджере с людьми, а с LLM как и в сотнях других приложений для общения с ИИ‑персонажами. Но в каждом я видел какой‑то изъян, которого не должно было быть в моём приложении.
Погружение в One‑Time Events в Android
2026-08-05 в 13:02, admin, рубрики: activity, android, effects, jetpack compose, kotlin, mvvm, One line eventsПредставьте, перед вами задача — после авторизации пользователя навигировать его на главный экран, или показать snackbar, например, об ошибке.
В Android для таких событий есть специальное название — One‑Time Events, или же просто Effects — события, которые мы отправляем UI из ViewModel и хотим, чтобы они обработались ровно один раз.
И они отличаются от состояния экрана! Состояние существует всегда, а effect отправляется и обрабатывается единожды; в состоянии существуют данные, с которыми user взаимодействует, или которые повторно могут отображаться на экране, когда как effect — совершенно противоположное.
Обзор APEX Security — Android Package EXaminer
2026-07-01 в 10:38, admin, рубрики: apk, java, kotlin, python, вредонос, вредоносыДругого подходящего названия в голову не пришло, однако суть и принцип работы ПО, будет ясна всем.
Вообще, идея была — автоматизировать процесс проведения анализа и извлечения всей необходимой информации из вредоносного APK файла. Ряд программ уже существует в компьютерном мире, однако я понял для себя, что нет единого ящика, который бы мог держать в себе все необходимые инструменты и выполнять анализ более качественно и развернуто, ну и, соответственно, работать по цели.
