White-Label, SDK та модульна розробка мобільних застосунків

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

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

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

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

Послуги, які ми пропонуємо
Показано 3 з 3Усі 1735 послуг
Розробка White-Label мобільного додатку
Складний
від 2 тижнів до 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

White-Label мобільні додатки: SDK, модульна архітектура та мультиарендність

White-label — не просто «перекрасити додаток». Це архітектурне рішення, яке потрібно прийняти на старті. Спроба зробити white-label з монолітного додатку постфактум — один з найдорожчих рефакторингів у мобільній розробці.

Що означає «правильна» модульна архітектура для white-label

Ключовий принцип: ні один модуль бізнес-логіки не повинен знати про конкретного клієнта. Конфігурація, кольори, тексти, feature flags — все приходить ззовні через dependency injection, а не хардкодится.

На iOS правильна структура: Swift Packages для кожного домену (AuthKit, PaymentsKit, ProfileKit), окремий AppKit для точки входу, та BrandKit — пакет з темою конкретного клієнта. Основний додаток — тонка оболонка, яка збирає їх разом.

// Неправильно
class PaymentViewController: UIViewController {
    let primaryColor = UIColor(hex: "#FF5722") // хардкод клієнта A
}

// Правильно
class PaymentViewController: UIViewController {
    let theme: AppTheme // інектується при збірці
}

На Android аналог — Gradle multi-module з productFlavors. Кожен flavor збирає додаток для конкретного клієнта: підставляє google-services.json, тему, ресурси. Один репозиторій, кілька артефактів.

Theming: далі колорів та шрифтів

Поверхневий white-label — змінити кольори та логотип. Це займає день. Справжня кастомізація — коли клієнт може відключити модуль, змінити порядок екранів онбордингу, використовувати своїй платіжний провайдер.

У React Native для deep theming: ThemeProvider (React Context) на верхньому рівні, токени дизайну (colors.primary, spacing.md) через theme object, компоненти отримують значення тільки через токени. Для Flutter: ThemeData + ThemeExtension для кастомних токенів за межами Material Design.

Runtime theming (завантаження теми з сервера) — окремий рівень складності. На iOS не обійтись без UIAppearance proxy + manual update для існуючих view; SwiftUI з Environment та @EnvironmentObject для теми спрощує це значно.

Multi-Tenant: один бекенд, різні додатки

Якщо кілька white-label додатків використовують загальний бекенд, потрібна tenant-ідентифікація на рівні API. Варіант 1: X-Tenant-ID header у кожному запиті. Варіант 2: окремі піддомени (clienta.api.example.com). Варіант 3: tenant з JWT-токена після аутентифікації.

На рівні мобільного додатку: tenant ID або зашит у конфігурацію при збірці (через xcconfig / gradle.properties), або визначається динамічно (за bundle ID або через Remote Config). Динамічне визначення потрібно якщо один бінарник обслуговує кількох клієнтів — рідкий, але реальний кейс для enterprise.

SDK: коли white-label це бібліотека

Якщо продукт вбудовується в чужі додатки — це SDK, а не white-label app. Вимоги принципово інші.

iOS SDK через Swift Package Manager: Package.swift описує продукт, target, залежності. Публікується через git tag. Критично: не тягти транзитивні залежності без необхідності — кожна залежність SDK потенційно конфліктує з залежностями хост-додатку.

Android SDK через Maven (Artifactory або GitHub Packages): AAR-артефакт з POM метаданими. api() vs implementation() у gradle — тільки те, що потрібно клієнту, виноси в api(). Все внутрішнє — implementation().

Версіонування SDK через Semantic Versioning — обов'язково. Breaking changes у minor версії — смерть для B2B продукту.

Автоматизація збірки кількох брендів

Для 5+ white-label клієнтів ручна збірка нераціональна. Fastlane з lanes на кожний клієнт та shared методами — базовий варіант. Більш зріла рішення: параметризований CI pipeline, де передаєш CLIENT_ID та отримуєш зібраний IPA/APK/AAB для конкретного бренду.

Codemagic підтримує environment variables per workflow — зручно для multi-brand збірок без складного Fastfile.

Строки: рефакторинг моноліта в multi-tenant архітектуру — 2-3 місяці. Новий white-label додаток з правильною архітектурою з нуля — 3-4 місяці. Розробка мобільного SDK — від 6 тижнів для простого, від 3 місяців для повнофункціонального.