Розробка Super App архітектури мобільного додатку

TRUETECH займається розробкою, підтримкою та обслуговуванням мобільних додатків iOS, Android, PWA. Маємо великий досвід та експертизу для публікації мобільних додатків до популярних маркетів Google Play, App Store, Amazon, AppGallery та інші.

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1735 послуг
Розробка Super App архітектури мобільного додатку
Складний
від 1 тижня до 3 місяців
Часті запитання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    792
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    671
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1097
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    969
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    914
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    495

Розробка архітектури Super App

Super App — це додаток, всередині якого знаходяться інші додатки. WeChat, Grab, Gojek, Kaspi — різні реалізації однієї ідеї: користувач не переключається між додатками, все відбувається в одній платформі. Для бізнесу це означає контроль власника платформи над маркетплейсом міні-програм, де партнери публікують свої сервіси.

Архітектурно super app — це набагато більше, ніж просто «велика додаток з вкладками». Це платформа з системою запуску ізольованих міні-програм, спільним контекстом автентифікації, нативними bridge API та механізмом розповсюджування міні-програм.

Шари архітектури

Host Application (оболонка). Відповідає за: автентифікацію та управління сеансом, навігацію верхнього рівня (панель вкладок, home feed), каталог міні-програм, управління життєвим циклом міні-програм (запуск, пауза, знищення), спільні сервіси (платежі, геолокація, push, камера) через єдиний Bridge API.

Mini Program Runtime. Ізольоване середовище виконання для кожної міні-програми. На iOS — WKWebView з обмеженим JS API або нативний контейнер для compile-time плагінів. На Android — WebView з WebViewClient + addJavascriptInterface або DexClassLoader для нативних плагінів. Кожна міні-програма працює у власному WebView/контейнері з ізольованим localStorage та cookies.

Bridge API. Міні-програми не мають прямого доступу до нативних API. Усі виклики проходять через Bridge: MiniApp.bridge.call("payment.pay", { amount: 100 }, callback). Bridge перекладає виклик у нативний код хоста. Хост вирішує, дозволити виклик (перевірка дозволів міні-програми), виконати та повернути результат. Це критична точка безпеки.

Sandbox та ізоляція

Кожна міні-програма отримує від хоста тільки те, що він явно дозволяє:

  • Токен доступу для власного бекенду (не master token хоста)
  • Дозвіл на конкретні Bridge API (платежі тільки якщо партнер пройшов верифікацію)
  • Ізольоване сховище (ключі з префіксом mini_program_id)
  • Обмежений мережевий доступ через WebView content policy — тільки whitelisted домени міні-програми

Content Security Policy в WebView: на Android встановіть WebSettings.setAllowUniversalAccessFromFileURLs(false) та строгі CSP заголовки. На iOS WKWebView з WKContentRuleList блокує XHR до неавторизованих доменів.

Міні-програми не можуть: отримувати доступ до даних інших міні-програм, читати токени хоста, виконувати нативний код поза Bridge API.

Управління життєвим циклом міні-програм

Міні-програми переходять через стани: downloadedlaunchedactivepauseddestroyed. Хост управляє цим так, як ОС управляє додатками.

Кеширування та оновлення. Міні-програма — це zip-архів (JS/HTML/CSS + маніфест з версією). Перший запуск: завантаження з CDN → валідація підпису → розпакування в filesDir. Подальші запуски: перевірка версії → якщо доступне оновлення, фонове завантаження нового архіву → наступний запуск відкриває нову версію. Користувачі не чекають завантаження при повторному відкритті. Інвалідація кешу за semver: мажорна версія міні-програми вимагає негайного оновлення, мінорна оновлюється у фоні.

Управління пам'яттю. Утримуйте не більше 3 активних WebView одночасно (налаштовується). Відкриття 4-го запускає очистку найменш недавно використаного (LRU). WKWebView на iOS споживає значну кількість пам'яті при рендерингу важких міні-програм — моніторте через os_proc_available_memory(), проактивно очищайте при applicationDidReceiveMemoryWarning.

Авторизація: SSO в межах Super App

Користувач автентифікується з хостом один раз. Міні-програма отримує short-lived токен доступу для власного бекенду через Bridge API: bridge.call("auth.getToken", { scope: "mini_program_x" }, callback). Хост видає токен з обмеженою областю, дійсний 15 хвилин. Міні-програма обмінює його на власний JWT на своєму бекенді. Хост ніколи не ділиться master token.

Платежі через Bridge

Payment Bridge — найбільш чутливий компонент. Міні-програма викликає bridge.call("payment.requestPay", { orderId, amount, currency }) → хост показує нативний UI підтвердження платежу (не WebView!) → користувач підтверджує біометрією → хост обробляє платіж через свою платіжну систему → повертає результат міні-програмі. Міні-програма ніколи не бачить дані платежу користувача.

Приклад. Fintech super app: хост побудований на Flutter (навігація, автентифікація, платежі через Stripe), 15 міні-програм (кредити, страховка, оплата комунальних послуг, інвестиції) — змішування нативних плагінів та WebView програм. Bridge API: 40+ методів. Маркетплейс міні-програм з модерацією: партнер завантажує zip → CI запускає security scan (статичний аналіз JS через ESLint security rules, валідація маніфесту) → ручна модерація → публікація. Час запуску кешованої міні-програми: 200–400 мс.

Технологічний стек

Шар Android iOS
Host shell Jetpack Compose + Hilt SwiftUI + Combine
Mini program runtime WebView (WebKit) + DexClassLoader WKWebView + compile-time плагіни
Bridge JavascriptInterface + MethodChannel WKScriptMessageHandler
Storage Room + EncryptedSharedPreferences CoreData + Keychain
Payments Stripe SDK / native Stripe SDK / Apple Pay

Часові рамки

Етап Орієнтовна тривалість
Host shell + Bridge API + перша міні-програма 4–6 місяців
Маркетплейс міні-програм + управління життєвим циклом +2–4 місяці
Повноцінна платформа з Partner SDK 10–18 місяців загалом

Ціна розраховується індивідуально. Super App — це платформенний продукт, що вимагає команди з досвідом у нативній розробці, безпеці та DevOps.