Перейти к содержимому

Мобильные приложения на Flutter для iOS и Android

Разрабатываем мобильные приложения на Flutter: одна кодовая база работает и на iOS, и на Android, поэтому проект стоит примерно вдвое дешевле двух нативных и выходит быстрее. Публикуем в RuStore, App Store и Google Play. От 1 000 000 ₽ и от 2 месяцев за первую версию. Если задача решается мини-приложением в мессенджере за пятую часть бюджета, скажу об этом сразу — это чаще, чем кажется.

Стоимость
от 1 000 000 ₽
первая версия для обеих платформ сразу
Срок
от 2 месяцев
Фиксируется в договоре

Отвечаю лично, обычно в течение двух рабочих дней. Если задача не моя — скажу сразу.

Когда это нужно

Если узнали свою ситуацию хотя бы в одном пункте — задача решается. Если ни в одном, скажу прямо, что услуга вам не нужна.

  • Клиент пользуется вами каждый день

    Доставка, парк техники, подписка, служба заказов — там, где человек открывает сервис по несколько раз в неделю, иконка на экране телефона окупается. Если реже нескольких раз в год — не окупается, и об этом честнее сказать до сметы.

  • Нужны возможности телефона

    Камера и сканирование, работа без сети, уведомления, геопозиция в фоне, оплата в одно касание. Это то, чего браузер и мини-приложение не дают или дают с ограничениями.

  • Приложение для сотрудников в полях

    Монтажники, курьеры, торговые представители работают там, где связь пропадает. Приложение копит данные локально и отправляет их, когда сеть появится, — веб-версия так не умеет.

  • Нативная разработка не влезла в бюджет

    Две отдельные команды на iOS и Android означают двойную стоимость и разработки, и поддержки. Для малого и среднего бизнеса это чаще всего и есть причина, по которой приложение не появилось.

Почему Flutter

Это основной разбор страницы, а не приписка: выбор технологии здесь определяет и бюджет, и срок, и сколько будет стоить поддержка через три года. Сравнение с нативной разработкой — ниже.

  • Одна кодовая база вместо двух

    Логика, экраны и связь с сервером пишутся один раз и работают на обеих платформах. Нативный проект — это два отдельных приложения, два набора задач и два тестирования каждой правки. Отсюда основная часть разницы в бюджете: на первой версии она обычно близка к двум разам.

  • Поддержка стоит вдвое дешевле

    Экономия на разработке — половина дела; главное начинается потом. Каждая доработка в нативном проекте делается дважды и дважды проверяется, каждая ошибка чинится дважды. За три года содержания разница накапливается больше, чем на самой разработке.

  • Интерфейс одинаковый на обеих платформах

    Flutter рисует интерфейс сам, а не собирает его из системных элементов. Экран выглядит и ведёт себя одинаково на iPhone и на Android — не расходятся ни отступы, ни поведение списков, ни фирменные цвета. В нативной паре это отдельная работа по сведению двух приложений к одному облику.

  • Одна команда на всём жизненном цикле

    Не нужно искать и удерживать двух разных разработчиков и синхронизировать их. Для проекта на 1–2 миллиона это решает: нативная пара часто останавливается не из-за денег, а из-за того, что одна из двух половин осталась без исполнителя.

  • Обновление выходит одновременно

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

  • Всё то же в RuStore

    Приложение публикуется в RuStore, App Store и Google Play из той же сборки. Отдельного проекта под российский магазин не требуется — это ровно та же кодовая база с другой подписью.

Почему мы выбрали Flutter и где он не подойдёт

Сравнение честное: строка, где выигрывает нативная разработка, заполнена всерьёз. Если ваш случай попадает именно в неё, наш вариант вам не подходит, и лучше узнать это здесь.

КритерийFlutter (наш вариант)Нативная пара (Swift + Kotlin)
Бюджет первой версииОт 1 000 000 ₽ на обе платформыОт 2 000 000 ₽: два отдельных проекта
Срок первой версии2–4 месяца4–7 месяцев при параллельной работе двух команд
Стоимость доработокОдна правка — одна реализацияКаждая правка делается и проверяется дважды
Единый облик на iOS и AndroidИз коробки: интерфейс рисуется одинаковоСводится вручную, расхождения всплывают постоянно
Доступ к возможностям телефонаКамера, уведомления, оплата, работа без сети, геопозиция — естьТо же самое
Новая возможность платформы в день выхода iOSПоявляется с задержкой в недели или месяцыДоступна сразу
Тяжёлая графика, обработка видео, дополненная реальностьВозможно, но упирается в потолок производительностиВыигрывает: прямой доступ к системным механизмам
Специфическое оборудование и системные интеграцииНужен нативный слой — стоимость приближается к нативнойШтатная работа

Не берём на Flutter приложения, где основная ценность — тяжёлая графика, обработка видео в реальном времени, дополненная реальность или работа со специфическим оборудованием. В этих случаях нужна нативная разработка, мы её не поставляем и порекомендуем другую команду. Во всех остальных сценариях малого и среднего бизнеса — каталог, заказ, кабинет, задачи для сотрудников, уведомления, оплата — Flutter даёт тот же результат вдвое дешевле.

Что входит в работу

Оплата поэтапная: 50% перед этапом, 50% после подписания акта приёмки этапа. Аванса за весь проект нет.

  1. Обследование и техническое задание

    • Проверяем, нужно ли вам приложение: сколько раз в месяц человек им воспользуется
    • Считаем стоимость альтернатив — мини-приложения и мобильной версии сайта
    • Определяем состав первой версии и то, что откладываем
    • Собираем требования магазинов: что нужно для публикации в RuStore и App Store

    Что остаётся у вас: Техническое задание, оценка, схема решения и расчёт по альтернативам — включая вывод «приложение вам не нужно», если он честный.

  2. Проектирование

    • Кликабельный прототип всех экранов
    • Прорисовываем состояния: нет сети, пустой список, ошибка оплаты, отказ в доступе
    • Согласуем оформление под ваш бренд

    Что остаётся у вас: Кликабельный прототип и макеты экранов.

  3. Разработка

    • Собираем приложение и серверную часть
    • Подключаем уведомления, оплату и работу без сети
    • Показываем сборку на реальном телефоне каждую неделю

    Что остаётся у вас: Доступ к репозиторию с первого дня, тестовые сборки для установки на ваши телефоны.

  4. Публикация и передача

    • Готовим карточки и материалы для RuStore, App Store и Google Play
    • Проводим приложение через проверку магазинов и отвечаем на замечания
    • Передаём документацию, доступы и регламент выпуска обновлений

    Что остаётся у вас: Опубликованное приложение, исходный код, руководства, 14 дней бесплатных доработок.

Что не входит

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

  • Нативная разработка на Swift и Kotlin — не наша компетенция, и мы её не заявляем
  • Учётные записи разработчика в магазинах и их ежегодная оплата — оформляются на вас
  • Продвижение приложения и привлечение первых установок
  • Гарантия прохождения проверки магазина с первого раза: правила меняются, замечания отрабатываем в рамках проекта
  • Хостинг серверной части и платёжный сервис — оформляются на вас и оплачиваются напрямую
  • Сопровождение сверх гарантийных 14 дней — берётся отдельно и по желанию

На чём делаем и почему

Стек выбран так, чтобы вы могли сменить подрядчика без переписывания проекта.

Приложение

  • Flutter
  • Dart

Одна кодовая база на iOS и Android — отсюда и бюджет, и срок, и стоимость поддержки.

Серверная часть

  • Node.js
  • PostgreSQL
  • Docker

Свободные технологии, разворачиваются в российском контуре, без лицензионных платежей.

Магазины

  • RuStore
  • App Store
  • Google Play

Публикация из той же сборки: отдельного проекта под российский магазин не нужно.

Возможности телефона

  • уведомления
  • работа без сети
  • камера
  • геопозиция
  • оплата

Всё, ради чего обычно и делают приложение, доступно без нативного слоя.

Сколько это стоит

Вилка зависит от объёма, а не от того, насколько срочно вам нужно. Точную цену называем после обследования и фиксируем в договоре — до запуска она не меняется.

Классы задач, вилки стоимости, сроки и факторы, влияющие на цену
Класс задачиСтоимостьСрокЧто двигает цену
Первая версия: 5–10 экранов, вход, базовая логика1 000 000 – 2 000 000 ₽2–4 месяцаЧисло экранов, нужна ли работа без сети, сложность связи с вашими системами
Среднее приложение: 20–30 экранов, платежи, интеграции, уведомления2 000 000 – 4 500 000 ₽4–7 месяцевЧисло ролей, платежи и подписки, обмен с учётной системой, требования к отчётности

Проекты дешевле 150 000 ₽ не берём: на таком бюджете не получается ни обследования, ни документации, ни гарантии — а без них работа превращается в лотерею для обеих сторон. Если задача меньше, честнее сказать об этом сразу, чем растянуть её до нужной суммы. Все цены.

Частые вопросы

Вопросы, которые задают до договора. Если вашего здесь нет — спросите, отвечу так же прямо.

Расскажите, что нужно сделать

Достаточно пары предложений о задаче. Если она решается дешевле или другим способом — скажу об этом, даже когда это значит отказаться от заказа.

Отвечаю лично, обычно в течение двух рабочих дней. Если задача не моя — скажу сразу.