Кроссплатформенная разработка мобильных приложений
Мы делаем приложения для iOS и Android из одной кодовой базы на React Native: одна команда, один бэкенд, одновременный выход в обоих сторах. Если вашему продукту лучше подойдёт нативная разработка, мы скажем об этом до оценки.
Когда одной кодовой базы достаточно
Кроссплатформенная разработка хорошо работает, когда приложение построено вокруг контента и запросов к серверу. И плохо — когда продукт живёт за счёт сложной графики, постоянной фоновой обработки или самых новых возможностей платформ.
- Вам нужен MVP сразу для iOS и Android, и вы хотите проверить рынок, прежде чем платить за два нативных приложения
- Приложение построено вокруг лент, каталогов, форм, бронирований, профилей и сообщений
- Новые функции должны появляться у пользователей iPhone и Android в один день
- Бюджета хватает на одну команду разработки, а не на две
- Вашей веб-платформе нужно приложение-компаньон с теми же аккаунтами и данными
- У вас есть приложение на React Native от другой команды, которое нужно доделать или обновить
Что входит
Оценка платформы
До оценки проекта мы разбираем функции и говорим, подходит ли React Native. Если критичной части нужен нативный код, показываем, где именно, и какую долю приложения это затрагивает.
Дизайн для обеих платформ
Один дизайн, адаптированный под правила iOS и Android: навигация, жесты, системные диалоги, поведение кнопки «Назад». А не дизайн для iPhone, натянутый на Android.
Разработка на React Native
Общий код для экранов, бизнес-логики и запросов к серверу. Работа идёт спринтами, и каждый заканчивается сборками под обе платформы, которые можно установить и попробовать.
Нативные модули
Там, где общего кода недостаточно — SDK стороннего поставщика, аппаратная функция или фоновая работа, — мы пишем нативные модули на Swift и Kotlin и подключаем их к приложению.
Один бэкенд для обоих приложений
API, база данных, админ-панель и push-уведомления создаются один раз и используются обоими приложениями, а при необходимости и веб-версией. Python или PHP (Laravel) — в зависимости от задачи.
QA, публикация и обновления
Тестирование на реальных iPhone и Android-смартфонах, публикация в App Store и Google Play и обновления после запуска, включая обновление React Native и его библиотек.
Где кроссплатформенная разработка работает, а где нет
Одна кодовая база для iOS и Android обычно обходится заметно дешевле двух нативных приложений и занимает меньше календарного времени, ведь большая часть кода, дизайна и тестирования общая. Такой компромисс оправдан, когда приложение показывает контент, списки и формы и общается с сервером. И не оправдан, когда продукт зависит от насыщенных анимацией интерфейсов, функций на основе камеры, длительной фоновой обработки или API платформ, которые сначала появляются в нативных SDK. К какому типу относится ваш продукт, мы скажем до оценки, а не после первого релиза.
- Подходит: контентные приложения, каталоги, маркетплейсы, сервисы бронирования и услуг
- Подходит: MVP, которые должны быть в обоих сторах с первого дня
- Лучше нативно: сложная графика и анимация, функции на основе камеры
- Лучше нативно: постоянная фоновая работа и новейшие API платформ
Одна команда, один бэкенд, один график релизов
С двумя нативными приложениями вы ведёте две кодовые базы, два набора ошибок и часто две даты релиза. С React Native функция пишется один раз и выходит в обоих сторах одновременно, а за обе платформы отвечают одни и те же люди. Серверная часть тоже общая: один API и одна админ-панель обслуживают оба приложения и при необходимости веб-клиент. Именно так устроено Metacognit.me — приложение для метакогнитивной коррекции и диагностики психотипа: клиент на React Native для iOS и Android и бэкенд на Python.
- Один репозиторий и один набор функций для iOS и Android
- Одновременные релизы в обоих сторах
- Один API и одна админ-панель для обоих приложений и веба
- Меньше людей, которых нужно координировать, и меньше передач работы
Готовность к переходу на нативную разработку, если он понадобится
Кроссплатформенный старт не загоняет вас в угол. Бэкенд и API переживают переход на нативную разработку, клиентский код — нет. Поэтому мы проектируем API так, чтобы будущий нативный или веб-клиент мог использовать его без изменений, а платформенные части изолируем в нативных модулях. Мы делали миграции в обе стороны. Для Quaker, кулинарного приложения компании по доставке еды из Дубая, мы заменили гибридное приложение на устаревших технологиях двумя нативными клиентами, когда различия платформ стали важны для продукта.
- API, рассчитанный на любого будущего клиента — нативного или веб
- Платформенный код изолирован в нативных модулях
- Честный сигнал, когда приложение перерастает общую кодовую базу
- Аккаунты и данные переходят вместе с продуктом, на чём бы ни был написан клиент
Как идёт кроссплатформенный проект
Анализ и оценка
Разбираем функции и интеграции и проверяем, где нужен нативный код. Вы получаете письменное описание объёма работ, рекомендацию — React Native или нативная разработка — и оценку.
Дизайн
Прототип и финальный интерфейс, адаптированные под обе платформы. Вы утверждаете экраны для iOS и Android до начала разработки.
Разработка
Сначала общий код, нативные модули там, где они нужны, бэкенд параллельно. После каждого спринта вы устанавливаете свежие сборки на обе платформы.
Тестирование на устройствах
QA на реальных iPhone и Android-смартфонах с разными экранами и версиями ОС. Вы получаете один проверенный релиз для обоих сторов.
Публикация и поддержка
Публикация в App Store и Google Play под вашими аккаунтами, затем обновления, исправления и обновления фреймворка — столько, сколько вам нужно.
Технологии
Кроссплатформенная разработка
- React Native
- JavaScript
Нативные модули
- Swift (iOS)
- Kotlin (Android)
Бэкенд и API
- Python
- PHP (Laravel)
- MySQL
Форматы сотрудничества
Фиксированный объём
Согласованный список функций, оценка и сроки для обеих платформ. Частый выбор для MVP, который должен выйти в обоих сторах.
Выделенная команда
Одна кроссплатформенная команда постоянно работает над вашим приложением. Подходит продуктам, которые часто выпускают релизы и планируют развитие от спринта к спринту.
Почасовая оплата
Оплата фактически потраченных часов. Подходит для аудита существующего приложения на React Native, обновления фреймворка и небольших функций.
Отзывы
Команда Revol продолжает укреплять возможности клиента в разработке благодаря качественной работе и надёжной поддержке. Они эффективно коммуницируют и хорошо понимают потребности и бизнес клиента.
Tomas
Работа Revol полностью оправдала ожидания и устроила клиента. Свежий подход и готовность всегда быть на связи для поддержки стали ценным преимуществом. Если нужна открытая, клиентоориентированная команда для достижения целей — Revol отличный выбор.
Andrey
Частые вопросы
Заметят ли пользователи, что приложение не нативное?
В сценариях, для которых подходит кроссплатформенная разработка, — нет. Там, где заметили бы, — насыщенные анимацией интерфейсы, функции на основе камеры, длительная фоновая работа — мы рекомендуем нативную разработку, а не обещаем, что общий код справится.
Насколько кроссплатформенная разработка дешевле двух нативных приложений?
Обычно заметно дешевле и быстрее, потому что большая часть кода, дизайна и тестирования общая. Точная разница зависит от того, сколько платформенных функций нужно приложению. Конкретные цифры мы даём в оценке вашего приложения, а не общим процентом.
Можно начать кроссплатформенно, а позже перейти на нативную разработку?
Да, и мы делали такую миграцию в обе стороны. Её стоит планировать заранее: бэкенд и API переживают переход, а клиентский код — нет.
Вы публикуете приложения в сторах?
Да. Мы готовим сборки, страницы в сторах и метаданные, проходим модерацию App Store и Google Play и вносим исправления, которые требует модерация. Приложения публикуются под вашими аккаунтами разработчика.
Как рассчитывается стоимость?
Мы разбиваем приложение на функции, оцениваем каждую в часах и добавляем дизайн, бэкенд, QA и работы по релизу. Затем вы выбираете фиксированный объём, выделенную команду или почасовую работу. Цены мы не публикуем: трудоёмкость слишком сильно отличается от приложения к приложению.
Можете ли вы взять существующее приложение на React Native?
Как правило, да. Мы начинаем с ревью кода: версии React Native и библиотек, нативные модули, процесс сборки. Вы получаете ясную картину состояния приложения и того, что ждёт его в первые месяцы, в том числе нужно ли обновление или частичное переписывание.
Расскажите о своём проекте
Опишите задачу в нескольких строках. В течение одного рабочего дня мы ответим вопросами или первым мнением об объёме работ и стоимости.
Удобнее написать на почту или созвониться?
welcome@revolsource.com
+38 097 662 23 20
Revol Software OÜ, Таллин, Эстония. Наша команда распределена по всему миру.
Присоединяйтесь к нашей команде
Присылайте резюме на career@revolsource.com