Кроссплатформенная разработка приложений
Разрабатываем кроссплатформенные приложения на Flutter и React Native: из одного кода получаем приложения для iOS и Android. Обычно это дешевле и быстрее, чем два нативных приложения. Берём на себя дизайн, программирование и публикацию в App Store и Google Play.
Как ведём разработку на Flutter и React Native
01
Что такое кроссплатформенная разработка
Кроссплатформенная разработка — это создание приложения для iOS и Android на общей кодовой базе, а не двух отдельных приложений, как при нативной разработке. Из одного проекта собирают версии для обеих систем, а доступ к камере, геолокации, push-уведомлениям и другим функциям смартфона дают готовые плагины или нативные модули на Swift и Kotlin. Кроссплатформенные приложения разрабатываем на Flutter и React Native.
02
Преимущества и ограничения
Кроссплатформенная разработка подходит для интернет-магазинов, сервисов доставки, онлайн-записи, программ лояльности, личных кабинетов клиентов и других сервисов.
Преимущества
- общий код для iOS и Android, поэтому разработка обычно дешевле и быстрее, чем создание двух нативных приложений;
- версии для iPhone и Android-смартфонов можно выпустить одновременно и с одинаковыми функциями;
- исправления и новые функции вносим в общий код, поэтому после обновления в App Store и Google Play изменения появляются в обеих версиях;
- камеру, геолокацию и push-уведомления подключаем через готовые модули, общие для iOS и Android.
Ограничения
Если для функции смартфона нет готового модуля, её программируем отдельно для iOS и для Android. Чаще всего так бывает с виджетами на экране смартфона, новыми возможностями iOS и Android сразу после их выхода и подключением специального оборудования.
Когда нужна нативная разработка
Нативную разработку для iOS или для Android предлагаем, если приложение:
- обрабатывает видео с камеры в реальном времени, например накладывает фильтры или распознаёт объекты;
- показывает сложную 3D-графику или анимацию;
- подключается к платёжным терминалам, сканерам или другому оборудованию через библиотеки производителя;
- должно постоянно работать в свёрнутом виде, например вести трек тренировки;
- нужно только для одной платформы.
03
Flutter или React Native
Обе технологии подходят для большинства приложений, но по-разному строят интерфейс. Какую выбрать, предлагаем после брифа: это зависит от дизайна и функций приложения, а также от того, на чём сделан ваш сайт.
Разработка на Flutter
Flutter — технология Google с открытым кодом, приложения на ней пишут на языке Dart. Flutter строит интерфейс из собственных элементов, а не из стандартных компонентов iOS и Android, поэтому приложение выглядит одинаково на обеих платформах. Flutter предлагаем, если нужен нестандартный дизайн в стиле бренда или сложная анимация.
Разработка на React Native
React Native — технология Meta с открытым кодом, приложения на ней пишут на JavaScript или TypeScript. React Native использует стандартные элементы интерфейса iOS и Android, поэтому кнопки, прокрутка и поля ввода ведут себя привычно для владельцев iPhone и Android-смартфонов. React Native предлагаем, если важен привычный для каждой платформы интерфейс или ваш сайт сделан на React (библиотеке для веб-интерфейсов): часть кода сайта, например обмен данными с сервером, можно использовать в приложении.
04
Как ведём разработку на Flutter и React Native
Кроссплатформенное приложение проектируем, программируем, тестируем и публикуем для iOS и Android.
Дизайн для двух платформ
Создаём один дизайн приложения в стиле вашего бренда: прототип и макеты экранов, общие для iPhone и Android-смартфонов, поэтому приложение выглядит одинаково на обеих платформах.
Общий код и нативные модули
Приложение программируем на Flutter или React Native: из одного кода получаются версии для iOS и Android. Если для функции смартфона нет готового модуля, эту функцию дописываем на Swift для iPhone и на Kotlin для Android.
Подключение к сайту и серверу
Если у вас есть сайт, приложение получает данные через его API. Когда API нет, добавляем его на сайт. Если сайта нет или его нельзя доработать, разрабатываем серверную часть на Laravel или Django для хранения содержимого приложения, управления им и обмена данными с вашими внутренними системами или сервисами.
Тестирование на iOS и Android
Каждую версию тестируем на нескольких моделях iPhone и Android-смартфонов с разными размерами экрана и версиями системы: проверяем экраны, оплату, push-уведомления, камеру и геолокацию. До публикации вы устанавливаете тестовые версии на свои смартфоны через TestFlight и закрытое тестирование Google Play.
Публикация в двух магазинах
Выпускаем приложение в App Store и Google Play на ваших аккаунтах разработчика и сопровождаем проверку Apple и Google.
05
Стоимость кроссплатформенной разработки
Стоимость кроссплатформенного приложения зависит от объёма работ. Помимо общих факторов со страницы о разработке мобильных приложений, для кроссплатформенного приложения важны:
Одна или обе платформы на старте. Под каждую платформу приложение дорабатываем с учётом её особенностей и правил магазина, тестируем на смартфонах этой платформы и публикуем в App Store или Google Play, поэтому запуск сразу на iOS и Android увеличивает объём работ
Интерфейс под каждую платформу. Если экраны на iOS и Android должны выглядеть по правилам своей платформы, а не по общему дизайну, часть элементов проектируем и программируем в двух вариантах, поэтому объём работ растёт
Функции без готовых модулей. Каждую такую функцию программируем и тестируем отдельно для iOS и для Android, поэтому объём работ растёт
Версия для планшетов. На большом экране элементы располагаются иначе, поэтому экраны для iPad и Android-планшетов дополнительно проектируем, программируем и тестируем
Перевод действующего приложения. Если приложение уже работает на Swift или Kotlin, его экраны и логику создаём заново на Flutter или React Native, поэтому объём работ зависит от размера действующего приложения
Предварительную стоимость называем после брифа.
Обсудить задачу06
Вопросы о кроссплатформенной разработке
01Чем кроссплатформенное приложение отличается от гибридного?
Гибридное приложение — это веб-страницы внутри программы-оболочки (WebView), которую устанавливают из App Store и Google Play. Приложения на Flutter и React Native строят интерфейс без веб-страниц, поэтому обычно работают быстрее и плавнее. Такие приложения тоже иногда называют гибридными, но правильно — кроссплатформенными.
02Насколько кроссплатформенное приложение дешевле двух нативных?
Дешевле обходится программирование: экраны и функции пишут в одном коде для iOS и Android, а не в двух разных. Прототип, дизайн, серверная часть и тестирование нужны в обоих случаях, поэтому общая экономия меньше, чем на программировании. Разницу для вашего проекта считаем после брифа.
03Можно ли опубликовать приложение сначала только в App Store или только в Google Play?
Да. Из общего кода можно выпустить сначала одну версию, а вторую — позже. Для неё в основном останутся тестирование и публикация. Если в приложении есть функции без готовых модулей, их программируем для второй платформы отдельно.
04Можно ли доработать приложение на Flutter или React Native, которое делала другая команда?
Да. Понадобятся исходный код приложения и доступ к вашим аккаунтам разработчика в App Store и Google Play. Если дорабатываем и серверную часть, нужен её код. Изучаем код и предлагаем, что выгоднее: доработать текущую версию, переписать отдельные части или разработать приложение заново.
05Можно ли потом перейти на нативную разработку?
Да. Приложения для iOS и Android программируем заново, а серверную часть и API используем прежние. Дизайн при необходимости адаптируем под руководства Apple и Google по интерфейсам.
06Можно ли перевести наше нативное приложение на Flutter или React Native?
Да. Изучаем код вашего приложения и предлагаем план перехода. Новую версию на Flutter или React Native выпускаем как обновление того же приложения в App Store и Google Play, поэтому оценки и отзывы сохраняются. Понадобится доступ к вашим аккаунтам разработчика.
07Сколько времени занимает кроссплатформенная разработка?
Длительность зависит от тех же факторов, что и стоимость, от скорости согласования этапов с вами и от проверки Apple и Google. Срок нашей работы называем вместе с оценкой стоимости. Чтобы приложение появилось в магазинах раньше, предлагаем сначала выпустить версию только с основными функциями, а остальные добавлять в обновлениях.
08Есть ли техподдержка после запуска?
Да. Обеспечиваем техподдержку после запуска: реагируем на обращения в течение часа, а критические сбои устраняем и в нерабочее время, если это входит в тариф. Обновляем Flutter или React Native и сторонние модули под новые версии iOS и Android и правила App Store и Google Play, исправляем ошибки и развиваем функции. Подробнее — «техподдержка мобильных приложений».
07
Заказать кроссплатформенное приложение
Почему RIVERIT доверяют кроссплатформенную разработку:
Больше 100 проектов с 2015 года
Среди них сайты, порталы и мобильные приложения для бизнеса
Flutter и React Native в одной команде
Разрабатываем на обеих технологиях, поэтому предлагаем ту, которая лучше подходит для дизайна и функций вашего приложения. Серверную часть при необходимости делаем на Laravel или Django
Погружение в бизнес клиента
Изучаем рынок, бизнес-процессы и конкурентов и строим путь пользователя, чтобы кроссплатформенное приложение приносило прибыль
Управляемое ИИ-производство
Архитектуру задаёт фреймворк, а каждое изменение проверяют тесты
Связка с сайтом и сервером
Сопровождаем сайты и администрируем серверы, поэтому приложение на Flutter или React Native работает с ними как одна система
Менеджер на проекте
За ход работ и согласование этапов с вами отвечает выделенный менеджер
Чтобы заказать кроссплатформенное приложение или доработку действующего, опишите задачу в форме ниже. После брифа порекомендуем Flutter, React Native или нативную разработку. Для действующего приложения предложим план доработок.
Обсудить задачуУслуги направления
Мобильные приложения
08Контакты
Расскажите
о задаче
Опишите проект или проблему с сайтом. Мы свяжемся с вами в рабочее время, уточним детали и подготовим предложение с этапами, сроками и стоимостью.
- 01Свяжемся с вами
- 02Обсудим задачу
- 03Подготовим предложение













