Firebase App Distribution — ez a Google szolgáltatása mobilalkalmazások előzetes buildjeinek terjesztésére tesztelők és belső csapatok között anélkül, hogy közzé kellene tenni őket az alkalmazásboltokban. Az App Distribution egységes felületet biztosít APK és IPA feltöltéséhez, tesztelőcsoportok kezeléséhez és visszajelzések gyűjtéséhez. A Firebase Documentation, 2026 szerint a szolgáltatás automatikusan értesíti a tesztelőket az új verziókról e-mailben és push értesítésekkel, a Fastlane-integráció pedig lehetővé teszi a buildek közzétételét közvetlenül a CI/CD csővezetékből kézi műveletek nélkül. Az App Distribution támogatja az Android (AAB/APK) és iOS (IPA) rendszereket, beleértve az ad-hoc és enterprise terjesztést.
Főbb pontok
Firebase App Distribution — ez a Google szolgáltatása mobilalkalmazások megjelenés előtti verzióinak terjesztésére tesztelők és érdekelt felek között. Az alkalmazásboltokban való közzététellel ellentétben az App Distribution lehetővé teszi a buildek azonnali eljuttatását kiválasztott résztvevőknek hosszú felülvizsgálati folyamat nélkül. A szolgáltatás integrálva van a Firebase Crashlytics-szel, ami lehetővé teszi a fejlesztők számára, hogy közvetlenül a tesztelőktől kapjanak összeomlási jelentéseket és javítsák ki a problémákat a nyilvános kiadás előtt.
A béta verziók terjesztésének hagyományos folyamata magában foglalja az APK/IPA kézi elküldését e-mailben, feltöltését harmadik féltől származó fájlszerverekre vagy saját szerver beállítását. Firebase App Distribution megoldja ezeket a problémákat: egységes buildtár a Google Cloudban, automatikus tesztelő-értesítések, központosított hozzáférés-kezelés és beépített visszajelzés a Firebase Crashlyticsen keresztül. A szolgáltatás nélkülözhetetlen a CI/CD-t és rendszeres kiadásokat alkalmazó csapatok számára: egy új build egy perccel a feltöltés után elérhető a tesztelők számára.
Az App Distribution támogatja az összes szabványos buildformátumot mobil platformokhoz. Androidhoz — APK és Android App Bundle (AAB) automatikus APK generálással AAB-ből telepítéskor. iOS-hez — IPA fájlok ad-hoc, development és enterprise terjesztéshez. Minden buildhez kiadási megjegyzések (release notes), verziószám és buildkód tartozik a nyomon követéshez. A feltölthető fájl maximális mérete 500 MB, a buildek tárolási ideje 150 nap.
Buildek feltöltése a Firebase App Distributionba a Firebase Console, CLI (firebase appdistribution:distribute) vagy automatizált eszközök, például Fastlane és Gradle segítségével történik. Feltöltéskor meg kell adni a build verzióját, a kiadási megjegyzéseket és a tesztelők vagy csoportok listáját, akiknek értesítést kell kapniuk. A Firebase automatikusan egyedi azonosítót rendel a buildhez és elérhetővé teszi telepítésre egy hivatkozáson keresztül.
A Firebase Console webes felületet biztosít a buildek feltöltéséhez és verziókezeléshez. A konzolban megjelenik az összes feltöltött build előzménye dátum, verzió, állapot és telepítések száma szerint. A fejlesztő letilthat egy adott verziót, ha kritikus hibát talált — ez blokkolja a verzió telepítésének lehetőségét az összes tesztelő számára. A konzol a telepítések napi grafikonját is mutatja, ami segít nyomon követni a tesztelési aktivitást.
A Firebase CLI lehetővé teszi a buildek egy paranccsal történő feltöltését, ami kényelmes a CI/CD csővezetékekbe való integrációhoz. A distribute parancs elfogadja a fájl elérési útját, a projekt hozzáférési tokenjét, a tesztelőcsoportok listáját és opcionális kiadási megjegyzéseket. Hitelesítéshez Firebase szolgáltatásfiók használatos Firebase App Distribution Admin szerepkörrel. A CLI támogatja az Android és iOS buildeket, automatikusan meghatározva a platformot a fájlkiterjesztés alapján.
# Build feltöltése Firebase CLI-n keresztül
firebase appdistribution:distribute \
app-release.apk \
--app 1:123456789:android:abc123def456 \
--groups "qa-team,product-owners" \
--release-notes "Autorizációs hiba javítva" \
--token "FIREBASE_TOKEN"
Firebase App Distribution rugalmas tesztelőkezelő rendszert biztosít: a résztvevők hozzáadhatók e-mailben, csoportok hozhatók létre szerepkörök vagy projektek szerint, és különböző buildek rendelhetők hozzá különböző csoportokhoz. Új tesztelő hozzáadásakor a rendszer meghívó e-mailt küld neki a telepítési utasításokkal. A tesztelők automatikus értesítéseket kapnak minden új, a csoportjukhoz rendelt buildről.
A csoportok lehetővé teszik a tesztelők funkcionális elv szerinti szervezését. Példák csoportokra: QA csapat (teljes hozzáférés az összes buildhez), Product Owners (hozzáférés a stabil buildekhez), External Testers (korlátozott hozzáférés külső béta tesztelők számára). Egy tesztelő több csoport tagja is lehet. Build feltöltésekor a fejlesztő kiválasztja a célcsoportokat — csak a kiválasztott csoportok tagjai kapnak értesítést, ami kiküszöböli az információs zajt.
Tesztelők programozott hozzáadásához a Firebase App Distribution API használható. Az API lehetővé teszi tesztelők létrehozását, csoportokhoz adását és szükség esetén törlését. Ez kényelmes a belső teszteléskezelő rendszerekkel és hibakövetőkkel való integrációhoz. API-n keresztüli tesztelő hozzáadásakor ő is kap egy meghívó e-mailt az első alkalmazás telepítési hivatkozásával.
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("Tesztelő hozzáadva a csoporthoz")
} catch (error) {
console.error("Hiba:", error)
}
}
addTestersToGroup("tester@example.com", "qa-team")
Android buildek terjesztése a Firebase App Distributionon keresztül két formátumot támogat: APK és Android App Bundle (AAB). AAB feltöltésekor a Firebase automatikusan a tesztelő eszközével kompatibilis APK-t generál a Google Play App Signing segítségével. A tesztelők közvetlen hivatkozáson keresztül telepítik az alkalmazást — nincs szükségük hozzáférésre a Google Play Console-hoz, és nem kell tesztelőként hozzáadni őket a Play Console-hoz. Ez jelentősen leegyszerűsíti a béta tesztelés folyamatát Android esetében.
Az App Distributionon keresztüli telepítéshez a tesztelőknek engedélyezniük kell az ismeretlen forrásból származó telepítést az eszközön. A Firebase automatikusan generál egy hivatkozást, amely egy APK telepítő gombbal rendelkező weboldalra vezet. AAB formátum esetén az eszköznek támogatnia kell a Play Core Library-t és telepítve kell lennie a Google Play Store-nak. A Firebase az AAB használatát ajánlja végleges verziókhoz és az APK-t gyors iterációkhoz.
A Firebase App Distribution Gradle bővítménye lehetővé teszi buildek közvetlen küldését egy Gradle feladatból. A konfiguráció magában foglalja a com.google.firebase.appdistribution bővítmény hozzáadását, a szolgáltatásfiók konfigurálását és a célcsoportok beállítását. A konfiguráció után az assembleDistRelease feladat egy paranccsal felépíti az alkalmazást és feltölti a Firebase App Distributionba.
// 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 "Automatikus build"
}
iOS buildek terjesztése a Firebase App Distributionon keresztül további konfigurációt igényel, mivel az Apple korlátozza az alkalmazások telepítését az App Store-on kívül. iOS-alkalmazások terjesztéséhez az Apple Developer Program ad-hoc vagy enterprise tanúsítványait kell használni. A tesztelőket hozzá kell adni az Apple Developer Portalhoz eszközként az ad-hoc terjesztéshez, vagy enterprise terjesztést kell használniuk eszközkorlátozás nélkül.
Az ad-hoc terjesztéshez össze kell gyűjteni az összes tesztelőeszköz UDID-jét és hozzá kell adni az Apple Developer Portalhoz. A Firebase App Distribution megmutatja a tesztelőknek az UDID megtalálásának utasításait és automatikusan elmenti a regisztrált eszközöket. Az UDID provisioning profile-hoz adása és az IPA felépítése után a tesztelők telepítési hivatkozást kapnak. A Firebase az enterprise tanúsítvány használatát ajánlja nagy számú tesztelővel rendelkező projektekhez, mivel az ad-hoc 100 eszközre korlátozódik fiókonként.
A Fastlane — az ajánlott eszköz iOS-alkalmazások felépítésének automatizálásához. A Lane match kezeli a tanúsítványokat és provisioning profile-okat, a lane sigh pedig IPA-t hoz létre terjesztéshez. A Firebase App Distribution a firebase_app_distribution bővítményen keresztül integrálódik a Fastlane-nel, amely feltölti az IPA-t és értesíti a tesztelőket. A Fastlane támogatja a verziókezelést és a kiadási megjegyzéseket is további bővítményeken keresztül.
# 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 dátuma: #\\{Time.now.strftime
('%Y-%m-%d %H:%M')}"
)
end
A Firebase App Distribution teljes integrációja a CI/CD-vel lehetővé teszi új buildek automatikus közzétételét minden egyes commitnál a tárolóban. A CI csővezeték konfigurálásával a csapat néhány perccel a kód pusholása után azonnali visszajelzést kap a tesztelőktől. Az App Distribution támogatja az összes népszerű CI-rendszert: GitHub Actions, GitLab CI, Jenkins, Bitrise és CircleCI. Minden platformhoz saját konfiguráció szükséges, de az általános elv ugyanaz: felépítés → feltöltés → értesítés.
A GitHub Actions lehetővé teszi az automatikus buildterjesztés konfigurálását a develop ágba pusholáskor vagy pull request létrehozásakor. A workflow magában foglalja a Java/Flutter/Node.js telepítését, az alkalmazás felépítését, a Firebase Service Accounton keresztüli hitelesítést és a Firebase CLI futtatását a distribute paranccsal. A titkok (tokenek, szolgáltatásfiókok) a GitHub Secrets-ben tárolódnak és nem kerülnek nyilvánosságra a build naplókban. iOS esetében további Xcode konfiguráció és Fastlane telepítése szükséges a workflow-ban.
# .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
A Firebase App Distribution integrálódik a Firebase Crashlytics-szel a tesztelőktől származó összeomlási jelentések automatikus gyűjtéséhez. A Crashlytics automatikusan hozzárendeli az összeomlást egy adott buildverzióhoz és eszközhöz, ami segít a probléma gyors lokalizálásában és javításában. A tesztelők képernyőképeket és megjegyzéseket is küldhetnek az App Distribution webes felületén keresztül, és a build telepítése után hivatkozást kapnak a visszajelzési űrlapra.
Gyakran ismételt kérdések
Firebase App Distribution — egy többplatformos szolgáltatás (Android + iOS), ellentétben a TestFlight-tal, amely csak iOS esetében működik. Az App Distribution integrálódik a Crashlytics-szel és a Firebase Analytics-szel is, egységes ökoszisztémát biztosítva a béta teszteléshez mindkét platformon.
A buildek 150 napig tárolódnak a feltöltés pillanatától. Ezen időszak után automatikusan törlődnek. Javasolt rendszeresen feltölteni új buildeket és manuálisan törölni az elavultakat a Firebase Console-on keresztül, hogy a tesztelők ne telepítsenek régi verziókat.
Nincs korlátozás a tesztelők számára a Firebase App Distributionben. Az iOS ad-hoc terjesztésre az Apple 100 eszköz/fiók korlátozása vonatkozik. Android és iOS enterprise terjesztés esetén nincs korlátozás a tesztelők számában.
Igen, az App Distribution támogatja az AAB-t (Android App Bundle). A Firebase automatikusan APK-t generál az AAB-ből minden tesztelőeszközhöz a Google Play App Signing segítségével. Ez különösen kényelmes a Play Store-ban történő közzététel előtti teszteléshez.
Igen, az App Distribution a Firebase ingyenes Spark tervének része. A Spark korlátozásai: legfeljebb 500 tesztelő és 25.000 telepítés havonta projektenként. A Blaze terv eltávolítja ezeket a korlátozásokat és elsőbbségi támogatást ad.
Összefoglalás
Kulcsrakész mobilalkalmazást fejlesztünk
Az IT Sectr 2017 óta készít iOS és Android alkalmazásokat induló vállalkozásoknak és vállalkozásoknak. Tanácsot adunk, és a legjobb megoldást javasoljuk.
Olvassa el is