Firebase App Distribution: concepte cheie, distribuirea APK și IPA și configurarea

Autor: IT Sectr Publicat: 2026-04-29 Timp de citire: 8 min

Firebase App Distribution — este serviciul Google pentru distribuirea build-urilor preliminare ale aplicațiilor mobile între testeri și echipe interne fără a fi nevoie să le publicați în magazinele de aplicații. App Distribution oferă o interfață unică pentru încărcarea APK și IPA, gestionarea grupurilor de testeri și colectarea feedback-ului. Potrivit Firebase Documentation, 2026, serviciul notifică automat testerii despre versiunile noi prin email și notificări push, iar integrarea Fastlane permite publicarea build-urilor direct din pipeline-ul CI/CD fără acțiuni manuale. App Distribution suportă atât Android (AAB/APK), cât și iOS (IPA), inclusiv distribuirea ad-hoc și enterprise.

Principalele puncte

  • App Distribution — serviciu Firebase pentru distribuirea versiunilor beta ale aplicațiilor între testeri fără publicare în Google Play și App Store.
  • Grupuri de testeri — sistem flexibil de gestionare a accesului: creați grupuri pe roluri, proiecte sau etape de testare cu permisiuni diferite pentru build-uri.
  • Notificări automate — testerii primesc email și notificări push la fiecare build nou cu link de instalare.
  • Fastlane + Gradle — integrare completă cu sistemele CI/CD pentru publicarea automată a build-urilor la fiecare commit sau pull request.
  • Feedback — testerii pot trimite capturi de ecran, loguri și comentarii prin interfața integrată sau Firebase Crashlytics.

Ce este Firebase App Distribution

Firebase App Distribution — este serviciul Google pentru distribuirea versiunilor de pre-lansare ale aplicațiilor mobile între testeri și părți interesate. Spre deosebire de publicarea în magazinele de aplicații, App Distribution permite livrarea instantanee a build-urilor către participanții selectați, fără un proces lung de recenzare. Serviciul este integrat cu Firebase Crashlytics, permițând dezvoltatorilor să primească rapoarte de crash direct de la testeri și să rezolve problemele înainte de lansarea publică.

De ce este necesar App Distribution

Procesul tradițional de distribuire a versiunilor beta include trimiterea manuală a APK/IPA prin email, încărcarea pe servere de fișiere terțe sau configurarea propriului server. Firebase App Distribution rezolvă aceste probleme: depozit unic de build-uri în Google Cloud, notificări automate ale testerilor, gestionare centralizată a accesului și feedback integrat prin Firebase Crashlytics. Serviciul este indispensabil pentru echipele care practică CI/CD și lansări regulate: un build nou este disponibil testerilor la un minut după încărcare.

Formate de build suportate

App Distribution suportă toate formatele standard de build pentru platforme mobile. Pentru Android — APK și Android App Bundle (AAB) cu generare automată a APK din AAB la instalare. Pentru iOS — fișiere IPA pentru distribuire ad-hoc, development și enterprise. Fiecare build este însoțit de note de lansare (release notes), număr de versiune și cod de build pentru urmărire. Dimensiunea maximă a fișierului încărcat este de 500 MB, perioada de stocare a build-urilor — 150 de zile.

Încărcarea build-urilor și gestionarea versiunilor

Încărcarea build-urilor în Firebase App Distribution se realizează prin Firebase Console, CLI (firebase appdistribution:distribute) sau instrumente automatizate precum Fastlane și Gradle. La încărcare se specifică versiunea build-ului, notele de lansare și lista testerilor sau grupurilor care trebuie să primească notificarea. Firebase atribuie automat build-ului un identificator unic și îl face disponibil pentru instalare printr-un link.

Gestionarea versiunilor prin Firebase Console

Firebase Console oferă o interfață web pentru încărcarea build-urilor și gestionarea versiunilor. În consolă se afișează istoricul tuturor build-urilor încărcate cu dată, versiune, status și număr de instalări. Dezvoltatorul poate dezactiva o versiune specifică dacă este descoperită o eroare critică — aceasta va bloca posibilitatea de instalare a versiunii pentru toți testerii. Consola arată, de asemenea, un grafic al instalărilor pe zile, ceea ce ajută la urmărirea activității de testare.

Încărcarea automată prin Firebase CLI

Firebase CLI permite încărcarea build-urilor cu o singură comandă, ceea ce este convenabil pentru integrarea în pipeline-uri CI/CD. Comanda distribute primește calea către fișier, token-ul de acces al proiectului, lista grupurilor de testeri și notele de lansare opționale. Pentru autentificare se utilizează un cont de serviciu Firebase cu rolul de Firebase App Distribution Admin. CLI suportă atât build-urile Android, cât și iOS, determinând automat platforma după extensia fișierului.

bash
# Încărcarea build-ului prin Firebase CLI
firebase appdistribution:distribute \
    app-release.apk \
    --app 1:123456789:android:abc123def456 \
    --groups "qa-team,product-owners" \
    --release-notes "Bug de autentificare reparat" \
    --token "FIREBASE_TOKEN"

Gestionarea testerilor și a grupurilor

Firebase App Distribution oferă un sistem flexibil de gestionare a testerilor: puteți adăuga participanți prin email, crea grupuri pe roluri sau proiecte și atribui build-uri diferite unor grupuri diferite. La adăugarea unui nou tester, sistemul îi trimite un email de invitație cu instrucțiuni de instalare a aplicației. testerii primesc notificări automate despre fiecare build nou atribuit grupului lor.

Crearea grupurilor de testeri

Grupurile permit organizarea testerilor pe principiu funcțional. Exemple de grupuri: Echipa QA (acces complet la toate build-urile), Product Owners (acces la build-uri stabile), External Testers (acces limitat pentru testeri beta externi). Un tester poate face parte din mai multe grupuri. La încărcarea unui build, dezvoltatorul selectează grupurile țintă — notificările vor fi primite doar de membrii grupurilor selectate, ceea ce elimină zgomotul informațional.

Adăugarea testerilor prin API

Pentru adăugarea programatică a testerilor se utilizează Firebase App Distribution API. API-ul permite crearea testerilor, adăugarea lor în grupuri și ștergerea la nevoie. Acest lucru este convenabil la integrarea cu sistemele interne de gestionare a testării și bug trackere. La adăugarea unui tester prin API, acesta primește, de asemenea, un email de invitație cu link de instalare a primei aplicații.

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 adăugat în grup")
    } catch (error) {
        console.error("Eroare:", error)
    }
}

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

Distribuirea build-urilor Android

Distribuirea build-urilor Android prin Firebase App Distribution suportă două formate: APK și Android App Bundle (AAB). La încărcarea AAB, Firebase generează automat APK compatibil cu dispozitivul testerului, folosind Google Play App Signing. testerii instalează aplicația printr-un link direct — nu au nevoie de acces la Google Play Console și nu trebuie să fie adăugați ca testeri în Play Console. Acest lucru simplifică considerabil procesul de testare beta pentru Android.

Cerințe pentru build-urile Android

Pentru instalarea prin App Distribution, testerii trebuie să activeze instalarea din surse necunoscute pe dispozitiv. Firebase generează automat un link către o pagină web cu butonul de instalare APK. Pentru formatul AAB, este necesar ca dispozitivul să suporte Play Core Library și să aibă instalat Google Play Store. Firebase recomandă utilizarea AAB pentru versiunile finale și APK pentru iterații rapide.

Configurarea Gradle pentru App Distribution

Pluginul Firebase App Distribution pentru Gradle permite trimiterea build-urilor direct din sarcina Gradle. Configurarea include adăugarea pluginului com.google.firebase.appdistribution, configurarea contului de serviciu și setarea grupurilor țintă. După configurare, sarcina assembleDistRelease va construi aplicația și o va încărca în Firebase App Distribution cu o singură comandă.

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 "Build automat"
}

Distribuirea build-urilor iOS

Distribuirea build-urilor iOS prin Firebase App Distribution necesită o configurare suplimentară, deoarece Apple limitează instalarea aplicațiilor în afara App Store. Pentru distribuirea aplicațiilor iOS este necesar să se utilizeze certificate ad-hoc sau enterprise din programul Apple Developer Program. testerii trebuie să fie adăugați în Apple Developer Portal ca dispozitive pentru distribuirea ad-hoc sau să utilizeze distribuirea enterprise fără limitare de dispozitive.

Configurarea distribuției ad-hoc

Pentru distribuirea ad-hoc, trebuie colectate UDID-urile tuturor dispozitivelor testerilor și adăugate în Apple Developer Portal. Firebase App Distribution arată testerilor instrucțiuni pentru găsirea UDID și salvează automat dispozitivele înregistrate. După adăugarea UDID în provisioning profile și construirea IPA, testerii primesc un link de instalare. Firebase recomandă utilizarea certificatului enterprise pentru proiecte cu un număr mare de testeri, deoarece ad-hoc este limitat la 100 de dispozitive per cont.

Construirea IPA prin Fastlane

Fastlane — instrumentul recomandat pentru automatizarea construirii aplicațiilor iOS. Lane match gestionează certificatele și provisioning profile-urile, iar lane sigh creează IPA pentru distribuire. Firebase App Distribution se integrează cu Fastlane prin pluginul firebase_app_distribution, care încarcă IPA și notifică testerii. Fastlane suportă, de asemenea, gestionarea versiunilor și notelor de lansare prin pluginuri suplimentare.

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: "Build din #\{Time.now.strftime
            ('%Y-%m-%d %H:%M')}"
    )
end

Integrarea cu CI/CD și Fastlane

Integrarea completă a Firebase App Distribution cu CI/CD permite publicarea automată a noilor build-uri la fiecare commit în repozitoriu. Configurând pipeline-ul CI, echipa primește feedback instantaneu de la testeri la câteva minute după push-ul codului. App Distribution suportă toate sistemele CI populare: GitHub Actions, GitLab CI, Jenkins, Bitrise și CircleCI. Pentru fiecare platformă este necesară propria configurare, dar principiul general este același: construire → încărcare → notificare.

Configurarea prin GitHub Actions

GitHub Actions permite configurarea distribuției automate a build-urilor la push în ramura develop sau la crearea unui pull request. Workflow-ul include instalarea Java/Flutter/Node.js, construirea aplicației, autentificarea prin Firebase Service Account și rularea Firebase CLI cu comanda distribute. Secretele (token-uri, conturi de serviciu) sunt stocate în GitHub Secrets și nu sunt dezvăluite în logurile build-ului. Pentru iOS este necesară suplimentar configurarea Xcode și instalarea Fastlane în 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

Colectarea feedback-ului

Firebase App Distribution se integrează cu Firebase Crashlytics pentru colectarea automată a rapoartelor de crash de la testeri. Crashlytics asociază automat crash-ul cu versiunea specifică a build-ului și dispozitivul, ceea ce ajută la localizarea și remedierea rapidă a problemei. testerii pot, de asemenea, trimite capturi de ecran și comentarii prin interfața web App Distribution, primind un link către formularul de feedback după instalarea build-ului.

Întrebări frecvente

Cu ce se deosebește App Distribution de TestFlight?

Firebase App Distribution — este un serviciu cross-platform (Android + iOS), spre deosebire de TestFlight, care funcționează doar pentru iOS. App Distribution se integrează, de asemenea, cu Crashlytics și Firebase Analytics, oferind un ecosistem unitar pentru testarea beta pe ambele platforme.

Cât timp se păstrează build-urile în App Distribution?

Build-urile se păstrează 150 de zile de la momentul încărcării. După această perioadă, ele sunt șterse automat. Se recomandă încărcarea regulată a build-urilor noi și ștergerea manuală a celor învechite prin Firebase Console, pentru ca testerii să nu instaleze versiuni depășite.

Câți testeri se pot adăuga?

Nu există limită pentru numărul de testeri în Firebase App Distribution. Pentru distribuirea ad-hoc iOS se aplică limita Apple de 100 de dispozitive per cont. Pentru Android și distribuirea enterprise iOS nu există limitări privind numărul de testeri.

Se poate încărca AAB în loc de APK pentru Android?

Da, App Distribution suportă AAB (Android App Bundle). Firebase generează automat APK din AAB pentru fiecare dispozitiv al testerului folosind Google Play App Signing. Acest lucru este deosebit de convenabil pentru testarea înainte de publicarea în Play Store.

Este gratuit Firebase App Distribution?

Da, App Distribution face parte din planul gratuit Spark Firebase. Limitările Spark: până la 500 de testeri și 25.000 de instalări pe lună per proiect. Planul Blaze elimină aceste limitări și adaugă suport prioritar.

Rezumat

  • Firebase App Distribution — serviciu pentru distribuirea build-urilor beta ale aplicațiilor mobile cu suport pentru Android (APK/AAB) și iOS (IPA) fără publicare în magazine.
  • Gestionarea testerilor — sistem flexibil de grupuri cu notificări automate prin email și push la fiecare build nou.
  • Încărcarea build-urilor se realizează prin Firebase Console, CLI, pluginul Gradle sau Fastlane cu notificare automată a testerilor.
  • Build-urile Android suportă APK și AAB cu generare automată a APK din AAB, instalare prin link direct fără Google Play Console.
  • Build-urile iOS necesită certificat ad-hoc sau enterprise Apple, cu suport pentru înregistrare UDID și Fastlane pentru automatizarea construirii IPA.
  • Integrare CI/CD — GitHub Actions, GitLab CI, Jenkins, Bitrise cu Firebase CLI sau Fastlane pentru publicare automată la fiecare push.
  • Gratuit până la 500 de testeri și 25.000 de instalări pe lună, build-urile se păstrează 150 de zile, integrat cu Firebase Crashlytics pentru colectarea rapoartelor de crash.

Vom dezvolta o aplicație mobilă la cheie

IT Sectr creează aplicații iOS și Android pentru startup-uri și afaceri din 2017. Vă vom consilia și vă vom propune cea mai bună soluție.

Discutați proiectul

Citiți și