Реалізація маркетплейсу міні-програм всередині 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

Маркетплейс міні-програм — це не каталог з пошуком. Це система перевірки, дистрибуції, монетизації та контролю версій, вбудована в мобільну додаток. App Store для міні-програм, тільки працює в реальному часі без 24-72 годин ревізії від Apple.

Три шари маркетплейсу

Маркетплейс складається з трьох незалежних підсистем, які команди регулярно плутають та мішають:

Вітрина — UI всередину Super App: каталог, пошук, категорії, персоналізовані рекомендації, історія запусків. Зазвичай це звичайний екран нативної додатка або WebView з окремою міні-програмою-каталогом.

Backend дистрибуції — сервер, який зберігає bundle кожної міні-програми, управляє версіями, видає manifest.json з метаданими та обробляє запити на оновлення. Це CDN + metadata API + версійне сховище.

Система ревізії — портал для розробників, де вони завантажують нові версії, стежать за статусом проверки, отримують фідбек. На стороні адміністрації — черга проверок з інструментами для автоматичного та ручного аналізу.

Як працює завантаження та запуск міні-програми

Користувач тапає на іконку міні-програми. Що відбувається за кулісами:

  1. Контейнер перевіряє локальний кеш: чи є bundle цієї міні-програми, актуальна ли версія
  2. Якщо немає або версія застаріла — запит до CDN за bundle (ZIP з JS/HTML/CSS/ассетами)
  3. Bundle розпаковується в захищену директорію додатка (не в Caches — там система може видалити без попередження, а в Application Support на iOS або getFilesDir() на Android)
  4. Верифікація підпису bundle — SHA-256 хеш, підписаний приватним ключем платформи
  5. Завантаження у WebView, ініціалізація bridge

Крок 4 критично важливий. Без верифікації підпису man-in-the-middle атака може замінити bundle на шкідливий код. Підпис верифікується публічним ключем, вбудованим у бінарник хоста при компіляції.

Час холодного старту (перше завантаження): 1.5–4 секунди залежно від розміру bundle та швидкості з'єднання. Ціль для повторного старту (з кешу): < 800 мс. Для досягнення — паралельна ініціалізація WebView та розпакування bundle, prefetch manifest.json у фоні при кожному запуску Super App.

Версіонування та оновлення

Manifest-файл міні-програми:

{
  "id": "com.vendor.miniapp",
  "version": "2.3.1",
  "minContainerVersion": "4.0",
  "bundleUrl": "https://cdn.superapp.com/bundles/vendor/2.3.1/bundle.zip",
  "bundleHash": "sha256:a3f8...",
  "permissions": ["location.read", "camera"],
  "size": 186432
}

minContainerVersion — найважливіше поле. Якщо міні-програма використовує API, додано у контейнер версії 4.0, користувачі зі старим Super App її не запустять. Контейнер при запуску перевіряє сумісність та показує екран «Оновіть додаток» замість краші.

Стратегія оновлень: background update при кожному запуску Super App. Контейнер у фоні перевіряє manifest всіх встановлених міні-програм та завантажує нові bundle без участі користувача. При наступному відкритті міні-програми — вже нова версія.

Система ревізії: автоматика та ручна перевірка

Автоматичні перевірки при завантаженні нової версії:

  • Статичний аналіз JS-коду: заборонені паттерни (eval, динамічний import з зовнішніх URL, доступ до window.parent)
  • Перевірка маніфесту permissions: запитані права відповідають API-викликам у коді
  • Сканування на відомі уразливості в npm-залежностях (інтеграція зі Snyk або npm audit)
  • Розмір bundle в межах ліміту (зазвичай < 2 MB для main bundle)
  • Мінімальна версія контейнера коректна

Ручна перевірка — для нових міні-програм та для тих, де автоматика знайшла попередження. Команда ревізії отримує чергу задач з результатами автоматичних перевірок, скриншотами (генеруються через headless симулятор), описом від розробника.

Монетизація: платні міні-програми та in-app purchases

Якщо платформа передбачає монетизацію міні-програм, маркетплейс має управляти платіжними відносинами. Два типові сценарії:

Одноразова покупка доступу — користувач платить за розблокування міні-програми. Платіж проходить через Super App (Apple Pay / Google Pay / картка), підтвердження доступу зберігається на backend платформи. Міні-програма при запуску перевіряє токен доступу через bridge.

Комісія з транзакцій всередину міні-програми — міні-програма використовує платіжний API контейнера, платформа бере % з кожної транзакції. Вимагає суворого контролю: міні-програма не повинна мати можливість обійти платіжний bridge та прийняти оплату прямо.

Аналітика для розробників

У портальі розробника має бути аналітика: кількість запусків, retention, crash rate по версіям, середній cold start time. Це стандартне очікування сторонніх розробників — без цих даних вони не можуть оцінити якість свого продукту.

Дані збираємо на стороні контейнера (не передаючи у міні-програму raw event stream), агрегуємо на backend та показуємо через REST API портальу розробника.

Терміни реалізації повного маркетплейсу: від 3 до 7 місяців залежно від вимог до системи ревізії, монетизації та числа платформ. Тільки вітрина + CDN дистрибуція без портальу розробника — від 6 до 10 тижнів.