Реалізація Shorebird для оновлень Flutter-застосунку

Реалізація Shorebird для оновлень Flutter-застосунку Уявіть: ви випустили критичний баг у Flutter-застосунку. App Store review триває 48 годин. Користувачі падають із крашами, а ви не можете швидко випустити фікс. Shorebird вирішує цю проблему за хвилини — без повторного рев'ю. Ми впровадили Shor

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

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

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Реалізація Shorebird для оновлень Flutter-застосунку
Середній
~2-3 дні

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

Часті запитання

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

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Реалізація Shorebird для оновлень Flutter-застосунку

Уявіть: ви випустили критичний баг у Flutter-застосунку. App Store review триває 48 годин. Користувачі падають із крашами, а ви не можете швидко випустити фікс. Shorebird вирішує цю проблему за хвилини — без повторного рев'ю. Ми впровадили Shorebird у 15+ проєктах, деякі з яких обробляють понад 50 000 MAU, і гарантуємо стабільність.

Flutter не має аналога React Native CodePush — до появи Shorebird. Dart-код компілюється в нативні інструкції, які не можна просто замінити JS-бандлом. Shorebird вирішив це через власний Dart runtime з підтримкою патчів: зміни в Dart-коді упаковуються в компактний diff (10–100 КБ) і завантажуються на пристрій без проходження Store Review.

Як Shorebird оновлює Dart-код без re-review?

Shorebird вбудовує модифіковану Dart VM у застосунок. При запуску VM перевіряє наявність патча на серверах Shorebird. Якщо є — завантажує та застосовує. Патч містить лише змінені Dart-об'єкти, не весь бандл. Це принципово відрізняється від CodePush: тут змінюється скомпільований Dart-код, а не інтерпретований JS.

Що можна і не можна оновити через Shorebird

Доступно для оновлення:

  • Весь Dart/Flutter код
  • Dart-залежності (pub packages), якщо вони pure Dart

Недоступно:

  • Нативні плагіни (platform channels із Kotlin/Swift кодом)
  • Assets (зображення, шрифти) — поки не підтримується
  • Зміни в AndroidManifest.xml / Info.plist

Чому Shorebird кращий за CodePush?

Shorebird перевершує CodePush за розміром патча в 10 разів — замість цілого JS-бандла (1–5 MB) ви відправляєте diff (10–100 KB). Крім того, Shorebird працює на рівні Dart VM, що дає більш глибоку інтеграцію з Flutter-екосистемою. На відміну від CodePush, Shorebird не потребує підтримки інтерпретатора — патчі накладаються на скомпільований код.

Критерій Shorebird CodePush Стандартне оновлення через Store
Розмір патча 10–100 KB 1–5 MB Весь бандл (30–100 MB)
Час доставки Секунди Хвилини Години (review)
Підтримка Flutter Так Ні Так
Необхідність рев'ю Ні Ні Так

Додаткова таблиця часу та витрат:

Метод Час до користувачів Вартість підтримки
Shorebird 1–2 секунди Мінімальна (патчі)
CodePush 1–5 хвилин Середня (бандли)
Store update 24–72 години Висока (повний реліз)

Встановлення та перший реліз

# Встановлення CLI curl --proto '=https' --tlsv1.2 https://raw.githubusercontent.com/shorebirdtech/shorebird/main/install.sh -sSf | bash # Ініціалізація в проєкті shorebird init # Перший реліз (повна збірка + завантаження в Shorebird) shorebird release android shorebird release ios 

Після shorebird init у проєкті з'являється shorebird.yaml з app_id. Цей файл комітиться в репозиторій.

Реліз через Shorebird — це повноцінна збірка застосунку. Завантажувати в Play Store / App Store потрібно саме цей артефакт — він містить Shorebird runtime.

Створення патча

# Патч для Android shorebird patch android --release-version 1.2.3+42 # Патч для iOS shorebird patch ios --release-version 1.2.3+42 

--release-version — версія, до якої застосовується патч. Користувачі з версією 1.2.3+42 отримають патч автоматично при наступному запуску.

CI/CD інтеграція

# .github/workflows/shorebird-patch.yml name: Shorebird Patch on: push: branches: [hotfix/*] jobs: patch: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: subosito/flutter-action@v2 with: flutter-version: '3.x' - uses: shorebirdtech/setup-shorebird@v1 with: cache: true - name: Create patch run: | shorebird patch android \ --release-version ${{ inputs.release_version }} env: SHOREBIRD_TOKEN: ${{ secrets.SHOREBIRD_TOKEN }} 

SHOREBIRD_TOKEN створюється через shorebird login:ci — аналогічно Fastlane firebase login:ci.

Моніторинг та rollback

Shorebird Console показує статистику патчів: відсоток пристроїв, що отримали патч, crash rate після застосування. Відкат: shorebird patch rollback android --patch-number 5 — Shorebird перестає віддавати патч новим пристроям, вже оновлені пристрої отримають попередню версію при наступному запуску.

Що входить у роботу

Ми виконуємо повний цикл впровадження Shorebird:

  • Аудит Flutter-залежностей на сумісність (нативні компоненти, assets)
  • Інтеграція Shorebird SDK та налаштування shorebird.yaml
  • Перший реліз через Shorebird (замість стандартного flutter build)
  • Налаштування CI/CD для автоматичних патчів
  • Тестування доставки патча на пристроях
  • Моніторинг та rollback-процедури
  • Документація та навчання команди

Наш досвід: 5 років на ринку Flutter-розробки, 50+ реалізованих проєктів, сертифіковані Flutter-розробники. Гарантуємо стабільну роботу Shorebird у production.

Терміни та вартість

Термін впровадження — від 2 до 3 днів залежно від складності проєкту. Вартість розраховується індивідуально після аудиту — зв'яжіться з нами для оцінки. Ми також пропонуємо пост-релізну підтримку та консультації з оптимізації патчів.

Для застосунків із дуже суворими вимогами до безпеки (фінансові, медичні) потрібно перевірити політику платформи: згідно з App Store Review Guidelines Section 3.3.2, завантаження виконуваного коду через інтерпретатор заборонено, але Shorebird апелює до того, що патчі — це не новий код, а зміна існуючого. Ми допомагаємо узгодити це питання з рев'юерами.

Отримайте консультацію щодо Shorebird — пишіть, ми оцінимо ваш проєкт і запропонуємо оптимальне рішення.