Реализация Shorebird для обновлений Flutter-приложения

Когда в Flutter-приложении обнаруживается критический баг, каждые часы ожидания ревью в сторах оборачиваются потерянными пользователями. Мы внедряем Shorebird — решение, которое доставляет обновления Dart-кода напрямую на устройства за минуты, минуя длительные проверки. Наша команда реализует проект под ключ — от интеграции до сопровождения, обеспечивая стабильную работу и возможность быстро реагировать на любые ошибки.

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

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

Реализация 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 — пишите, мы оценим ваш проект и предложим оптимальное решение.

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

Последние работы

  • Разработка мобильного приложения для компании FEEDME
    Разработка мобильного приложения для компании FEEDME
    1010
  • Разработка мобильного приложения для компании XOOMER
    Разработка мобильного приложения для компании XOOMER
    903
  • Разработка мобильного приложения для компании RHL
    Разработка мобильного приложения для компании RHL
    1332
  • Разработка мобильного приложения для компании ZIPPY
    Разработка мобильного приложения для компании ZIPPY
    1180
  • Разработка мобильного приложения для компании Affhome
    Разработка мобильного приложения для компании Affhome
    1107
  • Разработка мобильного приложения для компании FLAVORS
    Разработка мобильного приложения для компании FLAVORS
    714