15502
Актуальное по мобильной разработке — Android, iOS, кроссплатформа Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels Сайт: https://tprg.ru/site Другие наши проекты: https://tprg.ru/media
Работа с аудио в Android: опыт реализации DAF — техники терапии заикания
Небольшие заметки о работе с аудио в Android: получение минимальной задержки, работа с аудио сэмплами напрямую, запись аудиоданных с сжатом виде.
Возможно для кого-то это окажется полезным.
Читать далее
Читать: https://habr.com/ru/articles/983882/
@mobi_dev | Другие наши каналы
Анимация смены темы в Compose Multiplatform
Анимация смены темы в Android-версии Telegram на протяжении долгого времени вдохновляет разработчиков на попытки реверс-инжениринга этого красивого трюка: в сети немало подробных гайдов, как сделать подобную анимацию при помощи традиционных XML View и даже Flutter. Но реализаций этой элегантной (хоть и совершенно бесполезной) анимации на Jetpack Compose мне найти так и не удалось, что привело к созданию маленькой библиотеки для анимирования смены темы.
Вера в будущее KMP также подтолкнула меня к тому, чтобы сделать ее из коробки готовой к установке в Compose-Multiplatform проекты, с поддержкой всех основных платформ (Android, iOS, Desktop JVM, Web WASM+JS).
Хотя сама библиотека вышла крайне компактной, ее реализация оказалась довольно нетривиальной на мой субъективный взгляд и может быть интересна каждому, кто изучает Compose или ищет подобные решения для своего проекта.
На старте написания библиотеки сами собой возникли ряд требований, которым она должна была отвечать:
Читать далее
Читать: https://habr.com/ru/articles/983488/
@mobi_dev | Другие наши каналы
Capacitor: от веба к мобильным приложениям. Часть 0. Зачем нужен Capacitor
С Новым годом, Хабр. Меня зовут Илья, я работаю Frontend разработчиком в компании Бастион. Январские выходные в самом разгаре, но уже многие, включая меня, наобещав себе свернуть горы в этом году, находятся в поиске полезной для мозга информации. Тогда присаживайтесь поудобнее, ибо сейчас мы будем разговаривать о такой замечательной технологии для разработки гибридных мобильных приложений, как Capacitor.
Читать далее
Читать: https://habr.com/ru/articles/982990/
@mobi_dev | Другие наши каналы
Сделай удобно: подборка UI/UX-кейсов из цифровых и нецифровых продуктов (#23)
Продолжаю изучать различные UI/UX/CX кейсы в мобильных приложениях, веб-сайтах и в реальном мире. Дизайнерам и менеджерам по продукту, чтобы вдохновиться и добавить в заметки.
Под катом: Revolut, Forest, Airbnb.
Читать далее
Читать: https://habr.com/ru/articles/982852/
@mobi_dev | Другие наши каналы
Fury Messenger: От «семейного чата» до народного мессенджера (или как я перестал спать и начал фиксить баги)
Всем привет! На связи снова тот самый парень, которому «коту делать нечего».
В прошлой статье я рассказывал, как психанул и за три недели на коленке собрал свой собственный мессенджер Fury Messenger — с шифрованием, маскировкой под мусорный трафик и полным отсутствием привязки к номеру телефона. Изначально план был надежен, как швейцарские часы: сделать удобную «болталку» для себя, жены и пары друзей, чтобы никакой DPI не был страшен, а интерфейс радовал глаз киберпанковской эстетикой.
Но что-то пошло не так... В хорошем смысле!
Я совершенно не ожидал, что моя поделка обретет такую любовь и популярность у абсолютно незнакомых мне людей! Хабр, ты — сила. Огромное спасибо всем энтузиастам, кто ломанулся тестировать приложение. Вы не просто качали APK, вы реально помогали: присылали логи, тыкали носом в баги и писали теплые слова, от которых хочется кодить даже в 4 утра.
Именно благодаря вашему мощному фидбеку проект не заглох, а наоборот — оброс мясом. За последнее время я выкатил пачку обновлений (с версии 0.45 до 0.61), и вот во что превратился наш уютный чатик.
Читать далее
Читать: https://habr.com/ru/articles/982344/
@mobi_dev | Другие наши каналы
Firebase — динамическое переключение проектов в iOS приложении
Firebase - динамическое переключение проектов в iOS приложении
В этой статье мы глубоко погрузимся в технические детали работы с Firebase и рассмотрим:
- Как и почему можно использовать Firebase проект без регистрации Bundle ID
- Традиционные способы переключения Firebase конфигураций (compile-time)
- Динамическое переключение проектов во время работы приложения (runtime)
- Практический пример: миграция пользовательских данных между приложениями
- Безопасность и важные моменты
Читать далее
Читать: https://habr.com/ru/articles/982284/
@mobi_dev | Другие наши каналы
Анализ образца готового промта от Claude
Возможно это было уже давно, но я увидел только сегодня.
А именно, когда начинается новый чат в Claude, то там появляются такие подменюшки под окном для чата
Write - Learn - Code - Life Stuff - Claude’s Choice
Кликнул ради интереса последнюю, открылся ещё целый список. И он, кстати, все время меняется.
В общем, это заготовки для начала чата по определённой теме, т.е., образец готового промта. Мне попалась на глаза тема "Узнать об архитектурных концепциях". И поскольку живёшь в мире программирования, то первая мысль об архитектурных паттернах )). Но оказалось, что это именно об архитектуре как строительстве чего-то в реальном, физическом мире.
Тем не менее, интересным оказалось другое. В автоматически начатом чате даётся пример промта, который полезно рассмотреть с точки зрения того, что ИИ учитывает и на что обращает внимание при выполнение запроса.
Читать далее
Читать: https://habr.com/ru/articles/982060/
@mobi_dev | Другие наши каналы
РосНОУ стал новым партнером «Школы 21»
Одним из, безусловно, положительных итогов уходящего года можно считать подписание соглашения о взаимодействии в области информационных технологий и подготовки кадров в ИТ-сфере.
Мероприятие прошло в кампусе «Школа 21. Ярославия» в Ярославле. РосНОУ присоединился к ведущим вузам-партнерам «Школа 21» - РАНХиГС, МГИМО МИД России, Санкт-Петербургскому политехническому университету Петра Великого, Университету науки и технологий МИСИС, Сеченовскому университету, РУДН и ВГИК.
Читать далее
Читать: https://habr.com/ru/articles/981516/
@mobi_dev | Другие наши каналы
Мобильная разработка за неделю #614 (22 — 28 декабря)
Последний дайджест в этому году! От неработающей к тестируемой навигации, тепловизор для разработчика, развитие Swift SDK для Android, инженерия уверенности и многое другое. С наступающим и хороших вам приложений! До встречи в новом году!
🎄Читать
Читать: https://habr.com/ru/articles/981300/
@mobi_dev | Другие наши каналы
«Киловатты красоты: Как в Колумбии электроучет подружили с искусством»
Хабр, привет из солнечной Колумбии!
Меня зовут Павел Галкин, я сооснователь платформы яЭнергетик. В канун Нового года меньше всего хочется грузить вас «серьезным энтерпрайзом».
Зачем ехать в Колумбию разработчику систем энергоучета? Всё просто: пока весь мир внедряет умные счетчики, Латинская Америка живет в реалиях ручного съема показаний. Системы интеллектуального учета (AMI) здесь пока не получили массового распространения, а значит, человеческий фактор остается ключевым звеном.
Я приехал презентовать местным компаниям наше приложение для визуального контроля, призванное автоматизировать и облегчить труд обходчиков. Но в ходе поездки по маленьким городкам мой фокус сместился с софта на «железо» — точнее, на то, как оно выглядит. То, что я увидел на фасадах домов, не позволило мне остаться равнодушным. Колумбийцы превратили скучные щитки учета в уличные галереи.
Немного вечерне-пятничного настроения и ярких красок в вашу ленту!
Читать далее
Читать: https://habr.com/ru/articles/980966/
@mobi_dev | Другие наши каналы
Почему я перешел на Dagger Components (вместо Dagger Android)
Всем привет, меня зовут Анатолий Спитченко, я Android-разработчик в ПСБ. В этой статье расскажу про свои эксперименты с Dagger. Наткнувшись в проекте на огромный модуль Application (11,5 Мб), я стал искать альтернативы обертке Dagger Android. Поэкспериментировал с продвигаемым Google Dagger Hilt, а также с более старым подходом — Dagger Components. Последний, как ни странно, позволяет немного сократить Application и в целом имеет больше плюсов, чем минусов. Подробности под катом.
Читать далее
Читать: https://habr.com/ru/companies/psb/articles/979988/
@mobi_dev | Другие наши каналы
Как найти работу джуну, когда джуны никому не нужны
Если кажется, что вы видите только вакансии для сеньоров и лидов, то вам не кажется. Компании оптимизируют всё, что движется. И джуны в в эту картину вписываются со скрипом.
А всё потому, что джун — это инвестиция. И в него придётся вкладывать ресурсы: время лидов на менторинг и проверку работы, время на адаптацию и онбординг, деньги на зарплату, в конце концов. В условиях текущей экономики бизнес хочет быстрых результатов.
Но не спешите отчаиваться. Работа всё ещё есть, а вот правила игры изменились. Давайте вместе разбираться, что сделать, чтобы всё-таки найти работу и построить карьеру в ИТ.
Читать дальше
Читать: https://habr.com/ru/companies/surfstudio/articles/980538/
@mobi_dev | Другие наши каналы
Инструменты клиентской поддержки: опыт e-commerce брендов
Высококонкурентный рынок в e-commerce не прощает ͏ошибок. 89% клиентов готовы поменять сервис после одного негативного опыта в сервисе. При этом, привлечение нового͏ стоит бизнесу до 25 раз дороже, чем удержание текущего. Поэто͏му важность ка͏чества ͏сервиса становится н͏е вспомогательной, а важнейшей функцией, ͏которая вл͏ияет на ͏удержан͏ие, прибыль и͏ репутацию бренда.
Аналитик студии комплексной разработки цифровых решений CleverPumpkin Алёна Сорокина и эксперты «Сантехника-Онлайн», METRO и Gulliver Group разбирают какие инструменты клиентской поддержки помогают e-commerce продуктам расти и удерживать клиентов.
Читать далее
Читать: https://habr.com/ru/companies/cleverpumpkin/articles/980366/
@mobi_dev | Другие наши каналы
Весь год вы носили футболки и джинсы… Хватит!
Заглядывайте к нам в виртуальную примерочную и выбирайте себе идеальный скин для встречи Нового года.
Осторожно, эти наряды могут наповал сразить ваших коллег…
Реклама
Тепловизор для разработчика: подсвечиваем рекомпозиции прямо в коде
Привет, Хабр! Меня зовут Иван Кузнецов, я Android‑разработчик в Кинопоиске. В прошлой статье я научил Jetpack Compose показывать рекомпозиции в реальном времени, но это был скорее учебный стенд: куча модификаторов, обёрток и примеры, которые нужно готовить вручную.
Я хотел чего‑то более полезного: чтобы IDE сама показывала, какие composable‑функции перерисовываются прямо сейчас, а какие скипаются и какие параметры реально меняются. Нажал Run — и редактор превратился в живую тепловую карту UI.
Ради этого пришлось сделать то, чего нормальные люди обычно избегают: залезть под капот Kotlin Compiler Plugin и научиться внедрять код в промежуточное представление на этапе компиляции, разобраться в битовых масках Compose и поднять TCP‑сервер внутри IntelliJ, чтобы запущенное приложение могло стучаться прямо в IDE.
Так появился Riflesso — плагин, который переносит идею Layout Inspector прямо в редактор кода и делает Compose прозрачным. В этой статье я разберу его архитектуру и покажу, как компилятор, клиентская библиотека и плагин IDE собираются в один инструмент.
Читать далее
Читать: https://habr.com/ru/companies/yandex/articles/978126/
@mobi_dev | Другие наши каналы
Оптимизация и запуск нейронных сетей на React Native: кейс с травой
Во время длинных новогодних выходных я решил заняться новым пет-проектом. Хотелось попробовать что-то интересное, связанное с нейронными сетями, и мне показалась новой для меня идея сделать приложение для распознавания растений, определения вида, возраста и их болезней прямо на мобильном устройстве без сервера, а потом рекомендация того, как лечить, ухаживать и прочее.
В этой статье поговорим о том, что получилось: от выбора моделей до их оптимизации и интеграции в React Native, а также поделюсь своим открытым кодом запуска, обучения и экспортом моделей нейронных сетей в ONNX, и ссылками на датасеты и проекты с нейронными сетями для растений.
Читать далее
Читать: https://habr.com/ru/articles/983598/
@mobi_dev | Другие наши каналы
Сравнение ИИ для участия в контесте по вайбкодигу
Рассказываю, как я делала приложение: "AI тамагочи" с помощью разных ИИ (ChatGPT, Claude, Perplexity и Cursor)
Читать далее
Читать: https://habr.com/ru/articles/983168/
@mobi_dev | Другие наши каналы
FlexMock — мок без морок
Это было интересное приключение.
Сразу оговорюсь: FlexMock не нужен всем подряд. Он вырос из моих собственных задач — когда нужно откуда-то получать разнообразные данные для собеседований, когда фронтенд уже в работе, а бэкенд ещё не готов, или когда нужно быстро собрать демо/прототип и не тратить вечер на мок-сервер.
Это мой первый публичный проект в формате “сделал сам и показываю миру”, без команды и заказа. Ниже расскажу, почему мне захотелось написать такой сервис, как он устроен на уровне идеи и в каких сценариях реально экономит время.
Буду благодарен за конструктивную критику — особенно за идеи, которые помогут сделать инструмент полезнее.
Читать подробнее
Читать: https://habr.com/ru/articles/982894/
@mobi_dev | Другие наши каналы
Flutter, Google, Fuchsia, Zircon, Linux, Starnix, Magma, Microfuchsia, будущее Андроида и других ОС
С момента появления загадочного репозитория на GitHub с описанием «Pink + Purple = Fuchsia» прошло десять лет. За это время медиа-пространство успело пережить несколько циклов хайпа: от «Убийцы Android» до «Мертвого проекта Google».
На календаре январь 2026 года. В магазинах нет коробок с надписью «Fuchsia Phone». Однако, если у вас дома стоит Nest Hub второго поколения, вы уже пользуетесь этой ОС. Если вы разработчик под Android, вы, возможно, уже взаимодействуете с её компонентами через виртуализацию.
Fuchsia не умерла. Она совершила то, что в биологии называется метаморфозом. В этой статье мы отбросим маркетинговую шелуху и разберем архитектуру системы "под микроскопом". Поговорим о том, как Google решает фундаментальные проблемы ядра Linux, что такое Starnix на уровне системных вызовов, зачем нужен FIDL и почему 2024–2025 годы стали переломными для проекта, переведя его из стадии R&D в стадию инфраструктурного фундамента.
Читать далее
Читать: https://habr.com/ru/articles/982666/
@mobi_dev | Другие наши каналы
«Горячие колеса» с BLE
Здравствуй Хабр! В этой статье я хочу поделиться своим опытом модификации популярной машинки в масштабе 1/64. Цель модификации - сделать машинку радиоуправляемой. В качестве пульта управления будет использоваться android телефон. В статье рассмотрим три основных этапа: разработка встраиваемого программного обеспечения для управления приводом поворота колес и ходового мотора, проектирование шасси и приложение для телефона.
Читать далее
Читать: https://habr.com/ru/articles/963138/
@mobi_dev | Другие наши каналы
Как не быть лохом и зарабатывать на вайбкодинге в 2026: гайд по Lovable
Полгода назад я потратил неделю на лендинг для проекта друга. Боролся с CSS Grid, фиксил баги на Safari, делал 15 версий адаптива. Результат? Средненький сайт, который стыдно показать в портфолио.
Сейчас такой же сайт я делаю за 3 минуты. Выглядит лучше. Работает на всех устройствах. С встроенной базой данных и оплатой.
Я не стал хуже разработчиком. Я просто понял: верстка — это не искусство, это рутина, которую AI делает эффективнее. А вот дизайн-мышление — это навык, который AI заменить не может.
Эта статья о том, как
Перестать быть лохом
Читать: https://habr.com/ru/companies/datafeel/articles/982026/
@mobi_dev | Другие наши каналы
Kenbak‑1 в кармане: iOS-эмулятор легендарного компьютера 1971 года
Kenbak-1 не имел ни экрана, ни клавиатуры, ни даже микропроцессора, но это не помешало ему войти в историю, как первый персональный компьютер.
В статье я расскажу о том, как создал уникальный iOS‑эмулятор Kenbak-1, что послужило мотивацией к этому, о деталях реализации, и почему это устройство поможет вам понять фундаментальные принципы работы современной вычислительной техники.
Читать далее
Читать: https://habr.com/ru/articles/981570/
@mobi_dev | Другие наши каналы
Мобильное приложение на 1С «Доходность ОФЗ» (только для Android)
Мобильное приложение, полностью сделанное на 1С: "Доходность ОФЗ" позволяет рассчитать доходность по облигациям федерального займа (ОФЗ), выпускаемые минфином РФ по 2 видам доходности: 1) "Простая доходность к погашению" - это годовая доходность в процентах, которую получит владелец облигации, если купит её по рыночной цене и продержит до погашения. 2) "Эффективная доходность к погашению" - это годовая доходность с учетом реинвестирования полученных купонов. Умеет считать доходность на дистанции, С учетом удержания НФДЛ с купонов и БЕЗ.
Читать далее
Читать: https://habr.com/ru/articles/981358/
@mobi_dev | Другие наши каналы
FlutterPulse: декабрьский дайджест Flutter & Dart
Декабрь — это когда:
- задачи вроде бы закрыты, но TODO всё ещё смотрит укоризненно
х- очется «ещё один маленький рефакторинг» перед Новым годом
- и, конечно, появляется ощущение, что со следующего года всё точно будет ещё лучше ✨
Читать далее
Читать: https://habr.com/ru/articles/981162/
@mobi_dev | Другие наши каналы
Мобильное приложение для SaaS-платформы: не роскошь, а инструмент роста бизнеса
В эпоху гибридной и удалённой работы мобильное приложение для SaaS — это не «приятный бонус», а канал, через который проходят ключевые решения: от утверждения задач и ответов клиентам до работы «в поле». В статье — разбор, почему мобильность становится стандартом эффективности, какие сценарии реально работают в бизнесе и на что обратить внимание при выборе или разработке мобильного приложения.
Читать далее
Читать: https://habr.com/ru/companies/teamly/articles/980116/
@mobi_dev | Другие наши каналы
Perfetto в Android-разработке: когда профайлера уже недостаточно
Perfetto показывает те проблемы с производительностью приложения, которые другой профайлер просто не заметит. И не важно, занят ли процессор системными задачами, когда поток готов работать, или GC блокирует UI на 50 миллисекунд — Perfetto всё подсветит.
Ещё не знаете об этом крутейшем инструменте? Тогда эта статья для вас. Привет! Меня зовут Андрей Гришанов. Расскажу вам, что такое Perfetto и как использовать его максимально эффективно.
Познакомиться с топовым профайлером
Читать: https://habr.com/ru/companies/dododev/articles/977516/
@mobi_dev | Другие наши каналы
Технический гайд по сторис — часть 3: как мы написали свою библиотеку
Привет! Меня зовут Владислав Фальзан, я работаю android-разработчиком в М2. Наша команда мобильной разработки развивает приложение — онлайн-платформу для решения вопросов с недвижимостью. Основные пользователи приложения — физические лица (B2C) и риелторы (B2B2C). Эта статья — технический гайд для android-разработчиков о том, как использовать нашу новую библиотеку по сторис с деталями и нюансами реализации. Из статьи вы поймете: как использовать библиотеку на полную мощность для своих задач и как она устроена изнутри.
Для удобства изучения статьи я решил разбить ее на блоки:
Читать далее
Читать: https://habr.com/ru/companies/m2tech/articles/980424/
@mobi_dev | Другие наши каналы
Тренды в ИТ: 2026
Тренды в ИТ — это не про красивые слова и не про вечные «угрозы» о том, что нас вот-вот заменит ИИ и пора срочно выбирать другую профессию.
Тренды — это про то, как изменится работа с архитектурой и безопасностью в ближайшие годы, как трансформируются подходы к разработке и само мышление инженеров.тМы попросили экспертов ГК «Юзтех» поделиться своим взглядом на ИТ-тренды 2026 года.
3… 2… 1 — поехали. Ждём горячее обсуждение в комментариях.
Читать далее
Читать: https://habr.com/ru/companies/usetech/articles/980110/
@mobi_dev | Другие наши каналы
В Госдуме объяснили, когда стоит ждать блокировки Telegram в России
В Госдуме объяснили, что блокировка Telegram в России возможна после переезда провластных каналов в Max и завершения миграции аудитории СМИ
— Читать дальше «В Госдуме объяснили, когда стоит ждать блокировки Telegram в России»
WebSockets vs HTTP: Как устроена двусторонняя связь в вебе
На заре интернета, когда возможности веба ограничивались просмотром информационных статей, однонаправленного протокола HTTP, посылающего запрос серверу и получающего ответ, было вполне достаточно. А потом пришли приложения со своими push-уведомлениями, мессенджеры для общения, карты для онлайн-навигации — и здесь технологии HTTP уже стало недостаточно. Требовалось двунаправленное соединение, в котором не только клиент мог отправлять запрос, но и сервер мог динамически посылать информацию клиенту для отображения. Так и появились WebSockets.
Сегодня мы разберем, что это за технология, чем WS отличается от WSS, и почему без WebSockets современный веб был бы невыносимо медленным.
Читать далее
Читать: https://habr.com/ru/articles/979614/
@mobi_dev | Другие наши каналы