Рубрика «kotlin»

Я делаю приложение, которое перед открытием выбранных приложений и игр показывает свой экран с коротким заданием. Чтобы это работало, нужно в каждый момент знать, какое приложение на переднем плане, не разряжать батарею и пережить агрессивную экономию энергии у разных производителей. Рассказываю, на чём я спотыкался и как это сейчас устроено.

Что делает приложение

Читать полностью »

DeepSeek Harness (дальше — DSH) у меня работает на компьютере, и там же живут агент, его сессии и история, инструменты, подписки и ключи провайдеров. Чтобы добраться до этих чатов с телефона, я написал DSH Mobile — клиент для Android. Проект неофициальный, к DeepSeek отношения не имеет, код открыт под MIT. С телефона видны чаты всех проектов одним списком; агенту можно поставить задачу, приложить к ней фото или файл, ответить на его вопрос, а когда ответ готов, приходит уведомление.

Читать полностью »

Решил написать свой Telegram на KMP за 30 дней. Что может TDLib и с чем у меня возникли проблемы

Читать полностью »

С чего всё началось

Всё началось с ограничений доступа. Discord заблокировали в 2024 году, YouTube сначала замедлили, а в феврале 2026 года, по сообщениям СМИ, он пропал из национальной системы доменных имён. Telegram деградировал постепенно: сначала перестали работать звонки, потом почти не грузились фото и видео, 10 февраля 2026 года Роскомнадзор официально объявил об ограничении, а в какой-то момент мессенджер вообще перестал загружать чаты и висел на «Подключение…».

Читать полностью »

У меня есть коллекция музыки: FLAC, японские альбомы, которых нет в стримингах обычно, редкие релизы с додзин‑фестивалей. Слушать её хотелось так же удобно, как Spotify: с телефона, с компьютера, с текстами, статистикой и итогами года. А получалось как в 2010-м: файлы копируются руками, плейлисты живут на одном устройстве, а тексты японских песен без чтений иероглифов бесполезны.

Читать полностью »

Я снимаю рилсы с телефоном в руке и хотел суфлёр, который сам прокручивает текст, пока я говорю, причём поверх Instagram, TikTok или системной камеры, а не в собственном рекордере. Самым трудным оказалось не распознавание речи, а микрофон: во время записи видео Android отдаёт его камере.

Читать полностью »

Идея написать собственный мессенджер появилась не от хорошей жизни. У нас была конкретная прикладная потребность: получить полностью независимый инструмент связи, который не завязан на сторонние облачные сервисы, нормально поднимается на скромных серверах и адекватно ведет себя при перебоях со связью.

Читать полностью »

В январе 2025 года, после различных экспериментов с кодом для чатов, я захотел сделать свой красивый «идеальный» чат.

Мне хотелось, чтобы «кнопки выглядели именно так», чтобы при тапе на кнопку был импакт, чтобы форма бабблов сообщений была именно такой формы, чтобы были анимации открытия экрана, и множество других хотелок по чат UI/UX.

Всё это мне хотелось в мессенджере с людьми, а с LLM как и в сотнях других приложений для общения с ИИ‑персонажами. Но в каждом я видел какой‑то изъян, которого не должно было быть в моём приложении.

Читать полностью »

Представьте, перед вами задача — после авторизации пользователя навигировать его на главный экран, или показать snackbar, например, об ошибке.

В Android для таких событий есть специальное название — One‑Time Events, или же просто Effects — события, которые мы отправляем UI из ViewModel и хотим, чтобы они обработались ровно один раз.
И они отличаются от состояния экрана! Состояние существует всегда, а effect отправляется и обрабатывается единожды; в состоянии существуют данные, с которыми user взаимодействует, или которые повторно могут отображаться на экране, когда как effect — совершенно противоположное.

Читать полностью »

Другого подходящего названия в голову не пришло, однако суть и принцип работы ПО, будет ясна всем.

Вообще, идея была — автоматизировать процесс проведения анализа и извлечения всей необходимой информации из вредоносного APK файла. Ряд программ уже существует в компьютерном мире, однако я понял для себя, что нет единого ящика, который бы мог держать в себе все необходимые инструменты и выполнять анализ более качественно и развернуто, ну и, соответственно, работать по цели.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js