Firebase App Distribution: klíčové pojmy, distribuce APK a IPA a konfigurace

Autor: IT Sectr Publikováno: 2026-04-29 Doba čtení: 8 min

Firebase App Distribution — je služba Google pro distribuci předběžných sestavení mobilních aplikací mezi testery a interní týmy bez nutnosti publikovat je v obchodech s aplikacemi. App Distribution poskytuje jednotné rozhraní pro nahrávání APK a IPA, správu skupin testerů a sběr zpětné vazby. Podle Firebase Documentation, 2026, služba automaticky upozorňuje testery na nové verze e-mailem a push notifikacemi, a integrace Fastlane umožňuje publikovat sestavení přímo z CI/CD pipeline bez ručních akcí. App Distribution podporuje Android (AAB/APK) i iOS (IPA), včetně ad-hoc a enterprise distribuce.

Hlavní body

  • App Distribution — služba Firebase pro distribuci beta verzí aplikací mezi testery bez publikování v Google Play a App Store.
  • Skupiny testerů — flexibilní systém správy přístupu: vytvářejte skupiny podle rolí, projektů nebo fází testování s různými oprávněními pro sestavení.
  • Automatická upozornění — testeři dostávají e-mailová a push upozornění při každém novém sestavení s odkazem na instalaci.
  • Fastlane + Gradle — plná integrace s CI/CD systémy pro automatické publikování sestavení při každém commitu nebo pull requestu.
  • Zpětná vazba — testeři mohou posílat snímky obrazovky, protokoly a komentáře přes vestavěné rozhraní nebo Firebase Crashlytics.

Co je Firebase App Distribution

Firebase App Distribution — je služba Google pro distribuci předvydáních verzí mobilních aplikací mezi testery a zainteresované strany. Na rozdíl od publikování v obchodech s aplikacemi, App Distribution umožňuje okamžité doručení sestavení vybraným účastníkům bez dlouhého procesu recenzování. Služba je integrována s Firebase Crashlytics, což vývojářům umožňuje přijímat zprávy o pádech přímo od testerů a opravovat problémy před veřejným vydáním.

Proč je App Distribution potřeba

Tradiční proces distribuce beta verzí zahrnuje ruční zasílání APK/IPA e-mailem, nahrávání na externí souborové servery nebo nastavení vlastního serveru. Firebase App Distribution řeší tyto problémy: jednotné úložiště sestavení v Google Cloud, automatická upozornění testerů, centralizovaná správa přístupu a vestavěná zpětná vazba přes Firebase Crashlytics. Služba je nepostradatelná pro týmy praktikující CI/CD a pravidelné vydávání: nové sestavení je testerům k dispozici minutu po nahrání.

Podporované formáty sestavení

App Distribution podporuje všechny standardní formáty sestavení pro mobilní platformy. Pro Android — APK a Android App Bundle (AAB) s automatickým generováním APK z AAB při instalaci. Pro iOS — IPA soubory pro ad-hoc, development a enterprise distribuci. Každé sestavení je doprovázeno poznámkami k vydání (release notes), číslem verze a kódem sestavení pro sledování. Maximální velikost nahrávaného souboru je 500 MB, doba uchovávání sestavení je 150 dní.

Nahrávání sestavení a správa verzí

Nahrávání sestavení do Firebase App Distribution probíhá přes Firebase Console, CLI (firebase appdistribution:distribute) nebo automatizované nástroje jako Fastlane a Gradle. Při nahrávání se uvádí verze sestavení, poznámky k vydání a seznam testerů nebo skupin, které by měly dostat upozornění. Firebase automaticky přidělí sestavení jedinečný identifikátor a zpřístupní jej k instalaci přes odkaz.

Správa verzí přes Firebase Console

Firebase Console poskytuje webové rozhraní pro nahrávání sestavení a správu verzí. V konzoli se zobrazuje historie všech nahraných sestavení s datem, verzí, stavem a počtem instalací. Vývojář může deaktivovat konkrétní verzi, pokud je v ní nalezena kritická chyba — tím se zablokuje možnost instalace verze pro všechny testery. Konzole také zobrazuje graf instalací podle dnů, což pomáhá sledovat aktivitu testování.

Automatické nahrávání přes Firebase CLI

Firebase CLI umožňuje nahrávat sestavení jedním příkazem, což je vhodné pro integraci do CI/CD pipeline. Příkaz distribute přijímá cestu k souboru, token přístupu k projektu, seznam skupin testerů a volitelné poznámky k vydání. Pro autentizaci se používá servisní účet Firebase s rolí Firebase App Distribution Admin. CLI podporuje sestavení Android i iOS, automaticky určující platformu podle přípony souboru.

bash
# Nahrání sestavení přes Firebase CLI
firebase appdistribution:distribute \
    app-release.apk \
    --app 1:123456789:android:abc123def456 \
    --groups "qa-team,product-owners" \
    --release-notes "Opravena chyba autorizace" \
    --token "FIREBASE_TOKEN"

Správa testerů a skupin

Firebase App Distribution poskytuje flexibilní systém správy testerů: účastníky lze přidávat e-mailem, vytvářet skupiny podle rolí nebo projektů a přiřazovat různá sestavení různým skupinám. Při přidání nového testera mu systém pošle pozvánku e-mailem s instrukcemi k instalaci aplikace. Testeři dostávají automatická upozornění o každém novém sestavení přiřazeném jejich skupině.

Vytváření skupin testerů

Skupiny umožňují organizovat testery podle funkčního principu. Příklady skupin: QA tým (plný přístup ke všem sestavením), Product Owners (přístup ke stabilním sestavením), External Testers (omezený přístup pro externí beta testery). Jeden tester může být členem více skupin. Při nahrávání sestavení vývojář vybere cílové skupiny — upozornění obdrží pouze členové vybraných skupin, což eliminuje informační šum.

Přidávání testerů přes API

Pro programové přidávání testerů se používá Firebase App Distribution API. API umožňuje vytvářet testery, přidávat je do skupin a v případě potřeby mazat. To je vhodné při integraci s interními systémy pro správu testování a bug trackery. Při přidání testera přes API také obdrží pozvánku e-mailem s odkazem na instalaci první aplikace.

js
const admin = require("firebase-admin")

const serviceAccount = require("./serviceAccountKey.json")
admin.initializeApp({ credential: admin.credential.cert(serviceAccount) })

async function addTestersToGroup(email, groupAlias) {
    try {
        await admin.appDistribution().addTesters(email, [groupAlias])
        console.log("Tester přidán do skupiny")
    } catch (error) {
        console.error("Chyba:", error)
    }
}

addTestersToGroup("tester@example.com", "qa-team")

Distribuce sestavení Android

Distribuce sestavení Android přes Firebase App Distribution podporuje dva formáty: APK a Android App Bundle (AAB). Při nahrávání AAB Firebase automaticky generuje APK kompatibilní se zařízením testera pomocí Google Play App Signing. Testeři instalují aplikaci přes přímý odkaz — nepotřebují přístup do Google Play Console a nemusí být přidáni jako testeři v Play Console. To výrazně zjednodušuje proces beta testování pro Android.

Požadavky na sestavení Android

Pro instalaci přes App Distribution musí testeři povolit instalaci z neznámých zdrojů na zařízení. Firebase automaticky generuje odkaz na webovou stránku s tlačítkem pro instalaci APK. Pro formát AAB musí zařízení podporovat Play Core Library a mít nainstalovaný Google Play Store. Firebase doporučuje používat AAB pro finální verze a APK pro rychlé iterace.

Konfigurace Gradle pro App Distribution

Plugin Firebase App Distribution pro Gradle umožňuje odesílat sestavení přímo z úlohy Gradle. Konfigurace zahrnuje přidání pluginu com.google.firebase.appdistribution, konfiguraci servisního účtu a nastavení cílových skupin. Po konfiguraci bude úloha assembleDistRelease sestavovat aplikaci a nahrávat ji do Firebase App Distribution jedním příkazem.

groovy
// build.gradle (module: app)
plugins {
    id 'com.android.application'
    id 'com.google.firebase.appdistribution'
}

android { // standard config }

firebaseAppDistribution {
    appId "1:123456789:android:abc123def456"
    serviceCredentialsFile "firebase-sa.json"
    groups "qa-team"
    releaseNotes "Automatické sestavení"
}

Distribuce sestavení iOS

Distribuce sestavení iOS přes Firebase App Distribution vyžaduje dodatečnou konfiguraci, protože Apple omezuje instalaci aplikací mimo App Store. Pro distribuci iOS aplikací je nutné použít ad-hoc nebo enterprise certifikáty z Apple Developer Programu. Testeři musí být přidáni do Apple Developer Portal jako zařízení pro ad-hoc distribuci nebo používat enterprise distribuci bez omezení na zařízení.

Konfigurace ad-hoc distribuce

Pro ad-hoc distribuci je třeba shromáždit UDID všech zařízení testerů a přidat je do Apple Developer Portal. Firebase App Distribution zobrazuje testerům instrukce pro nalezení UDID a automaticky ukládá registrovaná zařízení. Po přidání UDID do provisioning profile a sestavení IPA obdrží testeři odkaz na instalaci. Firebase doporučuje používat enterprise certifikát pro projekty s velkým počtem testerů, protože ad-hoc je omezen na 100 zařízení na účet.

Sestavení IPA přes Fastlane

Fastlane — doporučený nástroj pro automatizaci sestavování iOS aplikací. Lane match spravuje certifikáty a provisioning profile, lane sigh vytváří IPA pro distribuci. Firebase App Distribution se integruje s Fastlane přes plugin firebase_app_distribution, který nahraje IPA a upozorní testery. Fastlane také podporuje správu verzí a poznámek k vydání pomocí dalších pluginů.

ruby
# Fastfile
lane :beta do
    match(type: :adhoc)
    gym(scheme: "MyApp", export_method: "ad-hoc")
    firebase_app_distribution(
        app: "1:123456789:ios:abc123def456",
        groups: "qa-team",
        release_notes: "Sestavení z #\{Time.now.strftime
            ('%Y-%m-%d %H:%M')}"
    )
end

Integrace s CI/CD a Fastlane

Plná integrace Firebase App Distribution s CI/CD umožňuje automatické publikování nových sestavení při každém commitu do repozitáře. Nastavením CI pipeline získává tým okamžitou zpětnou vazbu od testerů během několika minut po pushování kódu. App Distribution podporuje všechny populární CI systémy: GitHub Actions, GitLab CI, Jenkins, Bitrise a CircleCI. Pro každou platformu je vyžadována vlastní konfigurace, ale obecný princip je stejný: sestavení → nahrání → upozornění.

Konfigurace přes GitHub Actions

GitHub Actions umožňuje nastavit automatickou distribuci sestavení při pushi do větve develop nebo vytvoření pull requestu. Workflow zahrnuje instalaci Java/Flutter/Node.js, sestavení aplikace, autentizaci přes Firebase Service Account a spuštění Firebase CLI s příkazem distribute. Tajemství (tokeny, servisní účty) jsou uložena v GitHub Secrets a nejsou odhalena v logách sestavení. Pro iOS je navíc vyžadována konfigurace Xcode a instalace Fastlane ve workflow.

yaml
# .github/workflows/distribute.yml
name: Distribute to Firebase
on:
  push: { branches: [ develop ] }
jobs:
  build-and-distribute:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Java
        uses: actions/setup-java@v3
        with: { distribution: "temurin", java-version: "17" }
      - name: Build APK
        run: ./gradlew assembleDebug
      - name: Upload to Firebase
        uses: wzieba/Firebase-Distribution-GitHub-Action@v1
        with:
          appId: "${{ secrets.FIREBASE_APP_ID }}"
          serviceCredentialsFileContent: "${{ secrets.FIREBASE_SA_KEY }}"
          groups: qa-team
          file: app/build/outputs/apk/debug/app-debug.apk

Sběr zpětné vazby

Firebase App Distribution se integruje s Firebase Crashlytics pro automatický sběr zpráv o pádech od testerů. Crashlytics automaticky přiřazuje pád ke konkrétní verzi sestavení a zařízení, což pomáhá rychle lokalizovat a opravit problém. Testeři mohou také posílat snímky obrazovky a komentáře přes webové rozhraní App Distribution a po instalaci sestavení obdrží odkaz na formulář zpětné vazby.

Často kladené otázky

Čím se App Distribution liší od TestFlight?

Firebase App Distribution — je multiplatformní služba (Android + iOS), na rozdíl od TestFlight, který funguje pouze pro iOS. App Distribution se také integruje s Crashlytics a Firebase Analytics a poskytuje jednotný ekosystém pro beta testování na obou platformách.

Jak dlouho se uchovávají sestavení v App Distribution?

Sestavení se uchovávají 150 dní od okamžiku nahrání. Po této lhůtě jsou automaticky smazána. Doporučuje se pravidelně nahrávat nová sestavení a ručně mazat zastaralá přes Firebase Console, aby testeři neinstalovali staré verze.

Kolik testerů lze přidat?

Neexistuje omezení počtu testerů v Firebase App Distribution. Pro iOS ad-hoc distribuci platí Apple limit 100 zařízení na účet. Pro Android a iOS enterprise distribuci neexistují omezení počtu testerů.

Lze nahrát AAB místo APK pro Android?

Ano, App Distribution podporuje AAB (Android App Bundle). Firebase automaticky generuje APK z AAB pro každé zařízení testera pomocí Google Play App Signing. To je obzvláště vhodné pro testování před publikováním v Play Store.

Je Firebase App Distribution zdarma?

Ano, App Distribution je součástí bezplatného Spark plánu Firebase. Omezení Spark: až 500 testerů a 25 000 instalací měsíčně na projekt. Blaze plán tato omezení odstraňuje a přidává prioritní podporu.

Shrnutí

  • Firebase App Distribution — služba pro distribuci beta sestavení mobilních aplikací s podporou Android (APK/AAB) a iOS (IPA) bez publikování v obchodech.
  • Správa testerů — flexibilní systém skupin s automatickými e-mailovými a push upozorněními při každém novém sestavení.
  • Nahrávání sestavení probíhá přes Firebase Console, CLI, Gradle plugin nebo Fastlane s automatickým upozorněním testerů.
  • Sestavení Android podporují APK a AAB s automatickým generováním APK z AAB, instalace přes přímý odkaz bez Google Play Console.
  • Sestavení iOS vyžadují ad-hoc nebo enterprise Apple certifikát, s podporou registrace UDID a Fastlane pro automatizaci sestavování IPA.
  • CI/CD integrace — GitHub Actions, GitLab CI, Jenkins, Bitrise s Firebase CLI nebo Fastlane pro automatické publikování při každém pushi.
  • Zdarma až 500 testerů a 25 000 instalací měsíčně, sestavení uchovávána 150 dní, integrováno s Firebase Crashlytics pro sběr zpráv o pádech.

Vyvineme mobilní aplikaci na klíč

IT Sectr vytváří aplikace pro iOS a Android pro startupy a podniky od roku 2017. Poradíme vám a navrhneme nejlepší řešení.

Prodiskutovat projekt

Přečtěte si také