Кросплатформна розробка мобільних застосунків
Ми створюємо застосунки для 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 повністю виправдала очікування, і клієнт залишився задоволений. Свіжий підхід і постійна готовність допомогти стали для нас справжньою цінністю. Якщо вам потрібна комунікабельна, клієнтоорієнтована команда для досягнення ваших цілей — сміливо звертайтеся до них.
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