Мобильная разработка
13.9K subscribers
859 photos
238 videos
2.96K links
Актуальное по мобильной разработке — Android, iOS, кроссплатформа

Разместить рекламу: @tproger_sales_bot
Правила общения: https://tprg.ru/rules
Другие каналы: @tproger_channels
Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/oVBP
Download Telegram
[Перевод] Используйте простейшие рабочие решения

Занимаясь проектированием систем ПО, идите самым простым путём из возможных.

Причём эту рекомендацию можно применять на удивление широко. Я искренне верю, что так можно делать всегда. Эта техника подходит для исправления багов, обслуживания имеющихся систем и проектирования новых.

Многие инженеры, продумывая дизайн системы, представляют себе некий её «идеал»: что-то стройное, практически бесконечно масштабируемое, удобно распространяемое и так далее. Я же считаю, что это абсолютно ошибочный подход к проектированию ПО. Напротив, нужно вложить всё это время в глубокий анализ имеющейся системы, а затем реализовать простейшее рабочее решение.
Читать далее

Читать: https://habr.com/ru/companies/ruvds/articles/949970/

@mobi_dev | Другие наши каналы
💯3👍2
Как требование к навигации повлияло на архитектуру мобильного приложени

Привет! Меня зовут Никита и я Android-разработчик. Сегодня я хочу рассказать, как нам вместе с командой Nexign удалось реализовать сборку бизнес-сценариев в приложении для регистрации новых клиентов с особыми требованиями по навигации.
Читать далее

Читать: https://habr.com/ru/companies/nexign/articles/951176/

@mobi_dev | Другие наши каналы
🔥4
Мобильная разработка за неделю #604 (22 — 28 сентября)

В этом выпуске рассуждения о месте Rust в iOS и MAX в Android, погружение в JNI и опыт Shopify с React Native, архитектурный сдвиг оффлайна, быстрый старт в CI, мобильный рынок Турции, продукты для бумеров и многое другое. Заходите!
Читать далее

Читать: https://habr.com/ru/articles/951358/

@mobi_dev | Другие наши каналы
Массивы в Swift

Привет, Хабр! В прошлой статье мы поговорили о строках в Swift - об их особенностях, внутреннем устройстве и подводных камнях. И я подумал: ведь строки это по сути - коллекции. А какая главная и самая популярная коллекция в Swift? Конечно же, массивы. Их используют повсюду. Но вы когда-нибудь задумывались, как они устроены внутри? Давайте погрузимся внутрь массивов и посмотрим, что они из себя представляют.
Читать далее

Читать: https://habr.com/ru/articles/951398/

@mobi_dev | Другие наши каналы
🔥4👍2🤨2
Верификация разработчиков Android по паспорту

Отображение публикации в ленте:
Текст в ленте: 25 августа 2025 года компания Google объявила о «новом уровне безопасности для сертифицированных устройств Android». Для защиты против вредоносного ПО принято решение ввести обязательную верификацию разработчиков, которые подписывают Android-приложения (здесь и далее имеются в виду приложения для сертифицированных устройств с предустановленными программами Google, производители таких устройств перечислены здесь).

В данный момент все все APK-файлы в Android должны быть подписаны цифровой подписью с помощью сертификата, прежде чем будут установлены на устройство или обновлены. В будущем, что
Читать далее

Читать: https://habr.com/ru/companies/globalsign/articles/951460/

@mobi_dev | Другие наши каналы
ИИ-поиск в 2ГИС: как учим нейросети понимать настроение, фото и смыслы

Поиск — одна из ключевых функций в 2ГИС. Он помогает миллионам пользователей каждый день находить нужные места в городе. Долгое время мы опирались на классические методы: морфологию, справочник организаций, геопозицию и популярность объектов. Это позволяло покрывать множество сценариев, но со временем стало понятно — этого недостаточно.

Пользователи хотят искать так, как думают: по настроению, по смыслу, или вообще без слов — по фотографии блюда или интерьера. Мы решили переосмыслить подход к поиску. В этой статье рассказываем, как мы решали три задачи:

1. как понять атмосферу заведения и добавили новый атрибут «вайб-фильтры»;

2. как находить похожие места по изображениям и сделали поиск по фото.

3. как дать пользователю возможность искать «по смыслу» и реализовали ИИ-поиск.
Читать далее

Читать: https://habr.com/ru/companies/2gis/articles/951008/

@mobi_dev | Другие наши каналы
Android
Новые правила Google могут «убить» сторонние Android-магазины, включая RuStore
Google с 2026 года требует у Android-разработчиков ключи подписи и документы, что может уничтожить RuStore, F-Droid и другие магазины

— Читать дальше «Новые правила Google могут «убить» сторонние Android-магазины, включая RuStore»
😁6🌚2
Можно ли сделать мобильный интерфейс без человека.  Эксперимент с ИИ

Сегодня много говорят о том, что ИИ уже может полностью генерировать интерфейсы и сокращать процесс ревью. В Surf мы проверили это на практике: поручили ИИ вёрстку UI-компонентов и замерили эффект.
Читать о генерёнке в UI

Читать: https://habr.com/ru/companies/surfstudio/articles/951660/

@mobi_dev | Другие наши каналы
🔥42
Книга: «Kotlin Multiplatform на практике»

Привет, Хаброжители! Хотите писать код один раз и запускать его на Android и iOS, сохранив нативное качество и производительность?

В этой книге вы освоите все шаги разработки полнофункциональных кросс-платформенных приложений с помощью Kotlin Multiplatform SDK — от создания проекта с нуля до миграции существующих нативных решений. Подробные инструкции, архитектурные подходы и реальные примеры помогут уверенно работать с общими модулями, многопоточностью, сетевым слоем, хранением данных и Compose Multiplatform для iOS.

Особое внимание уделено использованию нативного и общего кода в кросс-платформенном приложении, применению expect/actual, тестированию с Kotest, оптимизации разработки с помощью KSP, плагинов компилятора и ИИ-ассистентов. Вы узнаете, как создавать и публиковать собственные KMP-библиотеки, а также получите краткий справочник по Kotlin и Swift, чтобы уверенно ориентироваться в обеих экосистемах.
Читать далее

Читать: https://habr.com/ru/companies/piter/articles/948590/

@mobi_dev | Другие наши каналы
🙈2👍1
Укрощаем Android UI-тесты на Compose: как Page Object спас нас от рутины

Привет, Хабр! Вы когда-нибудь тратили слишком много драгоценного времени на поиск нужного testTag в иерархии Compose Screen? А потом ещё полдня чинили тесты после каждого чиха в UI? Или, может быть, несколько недель ждали, пока в дизайн-систему добавят недостающий тег или семантику, чтобы вообще начать писать свой UI-тест? Если вы хоть на один вопрос ответили «Да», эта статья для вас. Давайте навсегда покончим с этой рутиной и займемся более креативными задачами!

Цель статьи — НЕ представить очередной фреймворк написания UI-тестов для приложений на Android, а упростить их написание с помощью всем знакомого Page Object. Мы будем прятать рутину поиска нужных компонентов и одновременно повышать устойчивость тестов к изменениям. Всё для того, чтобы тесты стали удобнее, надёжнее и проще поддерживались.

Меня зовут Дмитрий Омельченко, я Android-разработчик в Райффайзенбанке. Несколько лет назад мы с командой начали внедрять автоматизацию тестирования в приложение online-банка, и за это реализовали несколько интересных решений, об одном из которых хочу вам рассказать.
Читать далее

Читать: https://habr.com/ru/companies/raiffeisenbank/articles/950474/

@mobi_dev | Другие наши каналы
👍2😐21
Apple
Mac OS 7 (1991) портировали на x86 без исходников — ИИ справился всего за 3 дня
Разработчица с помощью ИИ за 3 дня портировала Mac OS 7 на x86 без исходников: система запускается в QEMU с рабочим Finder и GUI

— Читать дальше «Mac OS 7 (1991) портировали на x86 без исходников — ИИ справился всего за 3 дня»
Мессенджер
Max блокирует доступ через сторонние клиенты: как это повлияет на пользователей и что делать
Центр безопасности мессенджера Max начал блокировать доступ через неофициальные клиенты (mod-приложения). Объясняем, кого затронула операция, почему платформа закрывает моды, как вернуть доступ и что делать компаниям и пользователям, чтобы не потерять связь и не подвергнуться риску утечки данных.

— Читать дальше «Max блокирует доступ через сторонние клиенты: как это повлияет на пользователей и что делать»
👍1😱1🌚1
Погружаемся в недра Retrofit

Думаю, многие задумывались о том, что происходит с функциями в интерфейсе Retrofit сервиса, когда мы помечаем их ключевым словом suspend? У некоторых даже есть заблуждение, что для сетевых запросов в таком случае используется корутиновский Dispatchers.IO. Спойлер — это не совсем так.

В этой статье мы как раз разберёмся, как всё работает на самом деле.
Читать далее

Читать: https://habr.com/ru/companies/alfa/articles/947908/

@mobi_dev | Другие наши каналы
🔥1
Отделяем мух от Kotlett. Динамические обновления без релизов и BDUI

Привет, Хабр! Меня зовут Александр Наумов, я руковожу разработкой мобильной платформы в VK Tech и Mail. В VK занимаюсь мобилками уже более десяти лет, и в этой статье я поделюсь с вами нашей внутренней кухней: как мы ищем инженерные решения, какого класса задачи мы решаем. Хочу поделиться нашей новой разработкой, которая, как мне кажется, может быть полезна сообществу.
Читать далее

Читать: https://habr.com/ru/companies/vktech/articles/950588/

@mobi_dev | Другие наши каналы
🔥2
Flutter-дайджест сентября

Привет, друзья! 🌐

Сентябрь оказался по-настоящему горячим месяцем для Flutter-разработчиков — громкие релизы, свежие статьи на Хабре, видеоразборы с YouTube и целая россыпь полезных пакетов. На нашем канале FlutterPulse мы собрали всё самое интересное в одном месте, чтобы вы ничего не пропустили.
Читать далее

Читать: https://habr.com/ru/articles/952832/

@mobi_dev | Другие наши каналы
5
Игра
Space Invaders «с нуля» — Часть 1, создаём окно
Старт серии по созданию клона Space Invaders на C++: настраиваем окно и контекст OpenGL 3.3 с GLFW и GLEW, собираем проект и запускаем первый «красный» кадр.

— Читать дальше «Space Invaders «с нуля» — Часть 1, создаём окно»
[Перевод] Компенсация сетевой задержки: как зародилась технология rollback netcode

Как сообщил мне GPT5, технология компенсации сетевой задержки в играх, также известная как «откат сетевого кода» (rollback netcode) впервые была применена в игре «Super Street Fighter II Turbo HD Remix» (2008). Но это не так: именно такой механизм я реализовал в «Pathway to Glory» (Nokia N-Gage, 2004) и «Warhammer 20K: Squad Command (PSP, NDS, 2007)». В этой статье кратко рассказано, как данная технология работает...
Читать далее

Читать: https://habr.com/ru/articles/952872/

@mobi_dev | Другие наши каналы
👍2
Как инженерная боль вдохновила на создание мобильного приложения — клиента Modbus TCP

Практические сложности настройки устройств Modbus TCP/RTU в промышленной среде и легкое решение через мобильное приложение.
Читать далее

Читать: https://habr.com/ru/articles/952972/

@mobi_dev | Другие наши каналы
Внедрение пуш-уведомлений в React Native: от Firebase до кастомных модулей

Привет, Хабр! Меня зовут Георгий, и я тимлид команды платформы в компании Купер. Мы специализируемся на разработке IT-приложений для маркетинга и бизнеса, включая кроссплатформенные мобильные решения на базе React Native. В этой статье я хочу поделиться опытом работы с пуш-уведомлениями. Расскажу, с чего мы начинали, какие проблемы встретили и к чему пришли на текущий момент. Все примеры возьму из свежего проекта, исходники которого доступны на GitHub — ссылку оставлю в конце.
Читать далее

Читать: https://habr.com/ru/companies/kuper/articles/952680/

@mobi_dev | Другие наши каналы
4
Как я писал свою звонилку для видеозвонков

Я написал свою альтернативу звонкам в WhatsApp и Telegram — полноценный Android-клиент на WebRTC с поддержкой P2P-аудио и видео, STUN/TURN, сигналингом и собственным UI.
Забудьте про “корпоративные мессенджеры”: проект JOPA Call (👉 «Just One Peer App») работает напрямую, без лишних посредников.

Реализовано: peer-to-peer соединения, fallback через TURN, мини-preview окна камеры, управление потоками и адаптивное видео.
Макс и его «супераппы» могут курить в сторонке — теперь у меня есть свой звонок-клиент, который не зависит от гигантов.
Читать далее

Читать: https://habr.com/ru/articles/953222/

@mobi_dev | Другие наши каналы
🔥9😁94
Построение KMP SDK: инсайты и подводные камни из нашего опыта

Вот и время для заключительной статьи этого цикла. В предыдущих статьях мы рассмотрели нашу мотивацию, всю техническую информацию и поделились инсайтами при создании масштабируемого бизнес-решения в виде кроссплатформенного SDK. В этой небольшой статье хотелось уделить внимание иным аспектам, таким как адаптация процессов команды KMP и смежных команд, которые являются заказчиками, немного поговорить про подходы к тестированию и контролю качества, CI/CD и т.д.

Кратко напомним про контекст и продукт: Instories — мобильный видеоредактор для маркетологов, SMM-специалистов и блогеров. Контекст проекта: желание получить ряд SDK (мы называем их Kit-ами, по сути это разные сборки SDK для разных продуктов, со своими ресурсами, фичами и дизайн системой) для наших уже существующих приложений, которые содержали бы в себе коробочные фичи (и бизнес-логику, и UI), готовые к подключению, а также были бы легко расширяемыми и переиспользуемыми для разных приложений компании.
Читать далее

Читать: https://habr.com/ru/articles/953286/

@mobi_dev | Другие наши каналы