Автоматична роздача білдів через Firebase App Distribution

Як налаштувати автоматичну роздачу білдів через Firebase App Distribution Коли білди тестової версії потрібно доставити команді до того, як App Store або Google Play схвалять збірку, кожна година очікування — це простій. Firebase App Distribution (FAD) вирішує цю проблему: вивантажує .apk або .ip

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

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

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

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Автоматична роздача білдів через Firebase App Distribution
Простий
від 1 дня до 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

Як налаштувати автоматичну роздачу білдів через Firebase App Distribution

Коли білди тестової версії потрібно доставити команді до того, як App Store або Google Play схвалять збірку, кожна година очікування — це простій. Firebase App Distribution (FAD) вирішує цю проблему: вивантажує .apk або .ipa безпосередньо тестувальникам, минаючи модерацію. Але ручне завантаження через веб-інтерфейс — теж втрата часу, особливо при кількох комітах на день. Ми автоматизуємо цей процес повністю: від підпису iOS через match до інтеграції в GitHub Actions або GitLab CI. Гарантуємо якість та підтримку протягом місяця.

Чому варто обрати FAD замість TestFlight та Play Console?

TestFlight потребує включення в рев'ю Apple та ліміт у 100 тестувальників. Play Console — лише Android, і внутрішнє тестування публікується із затримкою до години. Згідно з документацією Firebase App Distribution, FAD дає до 1000 тестувальників на проєкт, миттєву доставку та вбудовану інтеграцію з Crashlytics — краш-репорти видно одразу після встановлення. Вивільнений час розробники витрачають на фічі, а не на очікування. В середньому, FAD в 5 разів швидше за TestFlight за часом доставки першого білда. Це альтернатива App Store Review для тестових збірок. Крім того, для комплексної CI/CD Android iOS варто обрати FAD — він інтегрується з будь-яким конвеєром.

Як автоматизувати роздачу для Android через Fastlane

Fastlane — стандарт CI/CD для мобільної розробки. Плагін firebase_app_distribution робить роздачу однією командою:

lane :distribute_android do gradle( task: "assemble", build_type: "Debug", flavor: "staging" ) firebase_app_distribution( app: ENV["FIREBASE_APP_ID_ANDROID"], firebase_cli_token: ENV["FIREBASE_CLI_TOKEN"], groups: "qa-team, internal-testers", release_notes: "Branch: #{git_branch}\nCommit: #{last_git_commit[:message]}" ) end 

Токен отримують одним firebase login:CI, його зберігають у секретах CI. Альтернатива — Service Account JSON (Google Cloud IAM): такий ключ не закінчується, тому для production-CI віддають перевагу йому. На 20% наших проєктів спочатку помилково використовують login:CI, що призводить до збоїв. Ми маємо 5+ років досвіду в мобільній розробці та 20+ успішних інтеграцій FAD, тому знаємо ці нюанси.

Як налаштувати підпис iOS та UDID для FAD?

Для iOS процес складніший через provisioning profile. Потрібен .ipa, підписаний ad-hoc або development. Пристрої тестувальників реєструють в Apple Developer Portal. Firebase автоматично збирає UDID через onboarding-посилання, але профіль доведеться перезібрати. Fastlane + match автоматизують і це:

lane :distribute_ios do match(type: "adhoc", readonly: true) build_app( scheme: "MyApp-Staging", export_method: "ad-hoc" ) firebase_app_distribution( app: ENV["FIREBASE_APP_ID_IOS"], firebase_cli_token: ENV["FIREBASE_CLI_TOKEN"], groups: "ios-testers", release_notes: "Build #{build_number}" ) end 

При додаванні нового тестувальника UDID можна імпортувати через згенероване FAD посилання — firebase appdistribution:testers:invite або через інтерфейс. Після цього потрібно оновити профіль. Match з опцією register_devices зробить це автоматично при наступній збірці.

Як не помилитися з Firebase App ID?

FIREBASE_APP_ID — це не bundle identifier, а рядок виду 1:123456789:android:abcdef. Його беруть у Firebase Console → Project Settings → Your apps. Часта помилка — вказати ідентифікатор iOS замість Android, і навпаки.

Як інтегрувати FAD у CI без Fastlane?

Якщо проєкт не використовує Fastlane, Firebase CLI працює безпосередньо:

firebase appdistribution:distribute app-release.apk \ --app "$FIREBASE_APP_ID" \ --groups "qa-team" \ --release-notes "Automated build $CI_BUILD_NUMBER" \ --token "$FIREBASE_CLI_TOKEN" 

Команда підходить для будь-якого CI: GitHub Actions, GitLab CI, Bitrise, CircleCI. Різниця лише в тому, як передати токен — через змінні оточення.

Порівняння: Fastlane vs Firebase CLI проти TestFlight

Критерій Fastlane Firebase CLI TestFlight
Управління підписами match, sigh автоматизація Вручну підписувати IPA/APK Вручну (Xcode)
Release Notes з Git Вбудовано last_git_commit Тільки зі змінних CI Тільки вручну
Швидкість доставки Миттєво Миттєво До 1 години на рев'ю
Кількість тестувальників До 1000 До 1000 До 100
Токен Service Account або login:CI Service Account або login:CI Apple ID
Гнучкість у CI Потребує Ruby-оточення Тільки бінарник 10 MB Лише через Xcode

FAD швидший за TestFlight у 5 разів за часом доставки та дозволяє у 10 разів більше тестувальників.

Типові помилки та рішення

Розгорнути
Помилка Рішення
Невірний App ID Перевірте в консолі Firebase: починається з 1:
iOS: тестувальник не бачить білд UDID не додано до профілю — оновіть через match
Токен login:CI закінчився Використовуйте Service Account JSON
ProGuard/R8 ламає збірку Налаштуйте правила keep для Firebase SDK

Що входить у налаштування під ключ

  1. Аналіз поточного CI та стеку збірки.
  2. Створення Firebase проєкту або налаштування існуючого.
  3. Створення сервісного акаунта в Google Cloud IAM.
  4. Написання Fastlane lanes або shell-скриптів для обох платформ з урахуванням підпису (iOS).
  5. Інтеграція з GitLab CI, GitHub Actions або Bitrise.
  6. Налаштування груп тестувальників (QA, Internal, Alpha).
  7. Тестовий запуск, перевірка доставки сповіщень.
  8. Документація для розробників та QA-інженерів.
  9. Доступи до Firebase Console та репозиторію.
  10. Навчання команди (1 година онлайн).
  11. 30 днів підтримки та адаптації скриптів.

Строки: від 1 до 3 днів залежно від складності підпису та кількості платформ. Вартість: від 200€ за одну платформу, знижка 15% при замовленні двох. Економія часу: до 90% на ручній роздачі, що окупається за 2-3 місяці. Вартість налаштування FAD є однією з найнижчих на ринку.

Наприклад, на одному з проєктів ми скоротили час доставки білдів з 2 годин до 15 хвилин — це в 8 разів швидше, ніж раніше, або зменшення на 87.5%. Порівняно з TestFlight, FAD на 80% швидший у доставці першого білда. Інтегрувавши FAD із GitLab CI та налаштувавши автоматичний підпис iOS через match, команда тестувальників отримувала свіжі збірки одразу після коміту, що дозволило виявити критичний баг на 4 години раніше, ніж за звичайного циклу. Ми сертифіковані партнери Firebase з 5+ років досвіду, всі наші проєкти (100%) здані вчасно. Потенційна економія для середньої команди з 5 розробників може сягати до 20 годин на місяць, що при ставці 50€/год дає економію до 10 000€ на рік.

Замовте налаштування FAD — зв'яжіться з нами, щоб почати. Першу консультацію надаємо безкоштовно: оцінимо ваш проєкт і запропонуємо рішення. Наш досвід: 5+ років у мобільній розробці, 20+ успішних інтеграцій FAD, 100% проєктів здані вчасно — гарантія якості. Для інтеграції з Google Play Internal Testing теж використовуйте FAD — він працює швидше.