Разработка приложений на Flutter
Одно приложение для iOS и Android из общей кодовой базы: одна команда, один набор тестов, одновременный релиз в App Store и Google Play. Выбираем между Flutter, React Native и нативной разработкой под задачу.
Стек: Flutter, Dart, Swift / SwiftUI, Kotlin / Compose, Firebase. В опубликованных кейсах: 5 мобильных приложений в кейсах. Услуга «Разработка мобильных приложений» — от 600 000 ₽, срок от 3 месяцев.
Что это и зачем бизнесу
Flutter — фреймворк Google для приложений под iOS и Android из одной кодовой базы на языке Dart. Он не использует системные элементы интерфейса, а рисует экран собственным движком, поэтому приложение выглядит одинаково на обеих платформах и держит плавную анимацию. Код компилируется в машинный, а не исполняется в веб-обёртке.
Для бизнеса это одна команда вместо двух, один набор тестов и одновременный релиз в App Store и Google Play. По нашей оценке, кроссплатформенная разработка обходится примерно на 40% дешевле двух нативных приложений и идёт заметно быстрее.
Но Flutter — не ответ на всё. Мы выбираем между Flutter, React Native и нативной разработкой на Swift и Kotlin по функциям устройства, срокам, бюджету и тому, кто будет поддерживать приложение. В опубликованных мобильных кейсах встречаются и нативные приложения, и React Native — ниже объясняем, что решал стек в каждом из них.
Когда выбираем Flutter
- Нужны iOS и Android сразу, а бюджет рассчитан на одну команду
- Приложение с собственным фирменным интерфейсом, одинаковым на обеих платформах
- Сервисные и B2B-приложения: заказы, личный кабинет, каталог, приложение для сотрудников
- MVP, который нужно быстро проверить на аудитории обеих платформ
Когда советуем другое
- Глубокая работа с устройством: фоновая обработка аудио и видео, AR, сложные сценарии Bluetooth — нативная разработка
- У компании уже есть сильная веб-команда на React — React Native даст общий язык и людей
- Нужен доступ к новым возможностям iOS и Android в день их выхода — нативная разработка
Наш подход
- Сначала выбор стека, потом код. Сравниваем Flutter, React Native и натив по списку функций устройства, срокам, бюджету и будущей поддержке. Решение и его причины фиксируем письменно до старта разработки.
- Архитектура слоями. Интерфейс, состояние и данные разделены: бизнес-логику можно тестировать без устройства, а экран менять без переписывания правил.
- Нативные модули там, где нужно. Биометрия, платежи, push-уведомления, камера подключаются через платформенные каналы на Swift и Kotlin. В команде есть iOS- и Android-разработчики, а не только Flutter.
- Тесты на реальных устройствах. Юнит- и виджет-тесты в конвейере сборки, ручная проверка на устройствах с разными версиями ОС и размерами экранов перед каждым релизом.
- Автоматический выпуск. Сборка, подпись и выкладка в сторы идут через CI. Заказчик получает тестовую версию на телефон на каждой итерации, а не видит приложение впервые на приёмке.
- Бэкенд и аналитика в комплекте. API, админка, push-уведомления и продуктовая аналитика проектируются вместе с приложением, а не догоняют его после публикации.
Из чего собирается решение
- Приложение: Flutter, Dart, BLoC
- Нативные слои: Swift / SwiftUI, Kotlin / Compose
- Сервисы: Firebase, Push-уведомления, Биометрия, WebSocket
- Бэкенд: Node.js, Python / FastAPI, Go, PostgreSQL, Redis
- Выпуск: Fastlane, CI/CD, TestFlight, Google Play Console
Что получает бизнес
- Одна кодовая база. Одна команда, один набор тестов и одновременный релиз на iOS и Android вместо двух параллельных проектов.
- Одинаковый интерфейс. Дизайн не расходится между платформами: Flutter рисует каждый элемент сам и не зависит от системных компонентов.
- Быстрые итерации. Горячая перезагрузка показывает правку интерфейса за секунды, поэтому экран можно доводить вместе с дизайнером, а не по списку замечаний.
- Производительность без веб-обёртки. Компиляция в машинный код и собственный движок отрисовки: плавная прокрутка и анимации на типичных бизнес-сценариях.
Как мы выбирали стек в мобильных проектах
- Банкирро: две трети заявок ушли в приложение (Натив) — Биометрия и офлайн-режим для полисов финансовой защиты: прямой доступ к API устройства важнее общей кодовой базы. Приложения iOS и Android для полисов финансовой защиты: биометрия, офлайн-режим, заявки. 150 000+ установок, 65% заявок в приложении.
- Дело, которое идёт месяцами, клиент наконец видит (Натив) — SwiftUI и Jetpack Compose: вход по SMS и биометрии, push-уведомления, интеграция с Bitrix24. Приложение для клиентов «Мошкова и Партнёры»: этапы банкротства, документы, график платежей, чат с юристом, вход по SMS и биометрии.
- Detmir: маркетплейс, который спрашивает возраст раньше категории (React Native) — React Native и TypeScript — тот же язык, что на сервере Node.js; поиск на Elasticsearch. Приложение маркетплейса детских товаров: подбор подарков по возрасту, поиск по 50 000 позиций. 500 000+ родителей, 2 млн+ заказов, 4,8 в App Store.
- Musicbox: рекомендации, которые угадывают в 95% случаев у пользователей с историей прослушиваний (React Native) — Плеер на React Native, рекомендации на TensorFlow и PyTorch, API на GraphQL. Музыкальный стриминг: 50 млн треков, рекомендации на TensorFlow с точностью 95%, старт трека быстрее 0,5 с, 100 млн+ прослушиваний в месяц.
Кто отвечает за направление
- Камила Рыбакова — Flutter / Android Developer
- Владислав Орлов — iOS Developer
Читать по теме
- Нативная или кроссплатформенная разработка приложения
- Безопасность мобильных приложений: чек-лист OWASP Mobile Top 10
- Мобильное приложение для сотрудников компании: сервис, склад, продажи
- PWA для бизнеса: когда веб-приложение заменит мобильное
- Монетизация мобильного приложения: модели и рынок России
- Продвижение мобильного приложения после разработки
Частые вопросы
Flutter или React Native — что выбрать?
Обе технологии дают одну кодовую базу на iOS и Android. Flutter удобнее, когда нужен собственный фирменный интерфейс и нет веб-команды: он рисует экран сам и выглядит одинаково везде. React Native выгоднее, когда у компании уже есть разработчики на React и TypeScript и важно делить с вебом код и людей.
Сколько стоит приложение на Flutter?
Разработка мобильного приложения — от 600 000 ₽, срок — от 3 месяцев. Кроссплатформенное приложение обычно дешевле двух нативных, потому что пишется и тестируется один раз. Точную смету даём после брифа, когда понятен список экранов, интеграций и функций устройства.
Не будет ли приложение на Flutter медленнее нативного?
На типичных бизнес-сценариях — каталог, формы, личный кабинет, лента — пользователь разницы не заметит: Flutter компилируется в машинный код и отрисовывает интерфейс собственным движком. Для тяжёлых задач с медиа, AR и фоновой работой с устройством рекомендуем нативную разработку.
Можно ли позже перейти с Flutter на нативную разработку?
Да. Сервер и API при этом не меняются, переписывается только клиент. Если бизнес-логика отделена от интерфейса, её правила переносятся по готовым тестам, а не восстанавливаются по памяти.
Публикуете ли вы приложение в App Store и Google Play?
Да, публикация входит в разработку: готовим описание и скриншоты, проходим проверку сторов и настраиваем выпуск обновлений через конвейер сборки.
Услуги на этом стеке
- Разработка мобильных приложений — от 600 000 ₽, от 3 месяцев
- Вайбкод-разработка — После оценки, По составу итерации
Другие технологии
404gen — креативное digital-агентство полного цикла, работаем удалённо по всей России.
Телефон: +7 993 729-59-59 (пн–пт, 10:00–19:00 МСК). WhatsApp: +7 913 141-20-96. Telegram: @aporkulevich. Почта: ap@404gen.ru.