Firebase App Distribution: konsep kunci, distribusi APK dan IPA, dan konfigurasi

Penulis: IT Sectr Diterbitkan: 2026-04-29 Waktu membaca: 8 mnt

Firebase App Distribution — adalah layanan Google untuk mendistribusikan build awal aplikasi seluler di antara penguji dan tim internal tanpa perlu mempublikasikannya di toko aplikasi. App Distribution menyediakan antarmuka terpadu untuk mengunggah APK dan IPA, mengelola grup penguji, dan mengumpulkan umpan balik. Menurut Firebase Documentation, 2026, layanan ini secara otomatis memberi tahu penguji tentang versi baru melalui email dan notifikasi push, dan integrasi Fastlane memungkinkan publikasi build langsung dari pipeline CI/CD tanpa tindakan manual. App Distribution mendukung Android (AAB/APK) dan iOS (IPA), termasuk distribusi ad-hoc dan enterprise.

Poin utama

  • App Distribution — layanan Firebase untuk mendistribusikan versi beta aplikasi di antara penguji tanpa publikasi di Google Play dan App Store.
  • Grup penguji — sistem manajemen akses yang fleksibel: buat grup berdasarkan peran, proyek, atau tahap pengujian dengan izin berbeda untuk build.
  • Notifikasi otomatis — penguji menerima email dan notifikasi push pada setiap build baru dengan tautan instalasi.
  • Fastlane + Gradle — integrasi penuh dengan sistem CI/CD untuk publikasi build otomatis pada setiap commit atau pull request.
  • Umpan balik — penguji dapat mengirim tangkapan layar, log, dan komentar melalui antarmuka bawaan atau Firebase Crashlytics.

Apa itu Firebase App Distribution

Firebase App Distribution — adalah layanan Google untuk mendistribusikan versi pra-rilis aplikasi seluler di antara penguji dan pemangku kepentingan. Tidak seperti publikasi di toko aplikasi, App Distribution memungkinkan pengiriman build secara instan kepada peserta terpilih tanpa proses peninjauan yang panjang. Layanan ini terintegrasi dengan Firebase Crashlytics, memungkinkan pengembang menerima laporan crash langsung dari penguji dan memperbaiki masalah sebelum rilis publik.

Mengapa App Distribution diperlukan

Proses tradisional distribusi versi beta melibatkan pengiriman manual APK/IPA melalui email, unggahan ke server file pihak ketiga, atau menyiapkan server sendiri. Firebase App Distribution memecahkan masalah ini: penyimpanan build terpadu di Google Cloud, notifikasi otomatis penguji, manajemen akses terpusat, dan umpan balik bawaan melalui Firebase Crashlytics. Layanan ini sangat diperlukan untuk tim yang menerapkan CI/CD dan rilis rutin: build baru tersedia bagi penguji satu menit setelah unggahan.

Format build yang didukung

App Distribution mendukung semua format build standar untuk platform seluler. Untuk Android — APK dan Android App Bundle (AAB) dengan pembuatan APK otomatis dari AAB saat instalasi. Untuk iOS — file IPA untuk distribusi ad-hoc, development, dan enterprise. Setiap build disertai catatan rilis (release notes), nomor versi, dan kode build untuk pelacakan. Ukuran maksimum file unggahan adalah 500 MB, masa penyimpanan build — 150 hari.

Mengunggah build dan mengelola versi

Mengunggah build ke Firebase App Distribution dilakukan melalui Firebase Console, CLI (firebase appdistribution:distribute) atau alat otomatis seperti Fastlane dan Gradle. Saat mengunggah, ditentukan versi build, catatan rilis, dan daftar penguji atau grup yang harus menerima notifikasi. Firebase secara otomatis memberikan pengidentifikasi unik pada build dan membuatnya tersedia untuk instalasi melalui tautan.

Manajemen versi melalui Firebase Console

Firebase Console menyediakan antarmuka web untuk mengunggah build dan mengelola versi. Di konsol ditampilkan riwayat semua build yang diunggah dengan tanggal, versi, status, dan jumlah instalasi. Pengembang dapat menonaktifkan versi tertentu jika ditemukan kesalahan kritis — ini akan memblokir kemungkinan instalasi versi untuk semua penguji. Konsol juga menampilkan grafik instalasi per hari, yang membantu melacak aktivitas pengujian.

Unggahan otomatis melalui Firebase CLI

Firebase CLI memungkinkan mengunggah build dengan satu perintah, yang nyaman untuk integrasi ke dalam pipeline CI/CD. Perintah distribute menerima jalur file, token akses proyek, daftar grup penguji, dan catatan rilis opsional. Untuk autentikasi digunakan akun layanan Firebase dengan peran Firebase App Distribution Admin. CLI mendukung build Android dan iOS, secara otomatis menentukan platform berdasarkan ekstensi file.

bash
# Mengunggah build melalui Firebase CLI
firebase appdistribution:distribute \
    app-release.apk \
    --app 1:123456789:android:abc123def456 \
    --groups "qa-team,product-owners" \
    --release-notes "Bug otorisasi diperbaiki" \
    --token "FIREBASE_TOKEN"

Mengelola penguji dan grup

Firebase App Distribution menyediakan sistem manajemen penguji yang fleksibel: peserta dapat ditambahkan melalui email, grup dapat dibuat berdasarkan peran atau proyek, dan build yang berbeda dapat ditetapkan ke grup yang berbeda. Saat penguji baru ditambahkan, sistem mengirimkan email undangan dengan petunjuk instalasi aplikasi. Penguji menerima notifikasi otomatis tentang setiap build baru yang ditetapkan ke grup mereka.

Membuat grup penguji

Grup memungkinkan pengaturan penguji berdasarkan prinsip fungsional. Contoh grup: Tim QA (akses penuh ke semua build), Product Owners (akses ke build stabil), External Testers (akses terbatas untuk penguji beta eksternal). Satu penguji dapat menjadi anggota beberapa grup. Saat mengunggah build, pengembang memilih grup target — hanya anggota grup yang dipilih yang menerima notifikasi, yang menghilangkan kebisingan informasi.

Menambahkan penguji melalui API

Untuk menambahkan penguji secara terprogram, digunakan Firebase App Distribution API. API memungkinkan membuat penguji, menambahkannya ke grup, dan menghapusnya jika perlu. Ini nyaman saat integrasi dengan sistem manajemen pengujian internal dan pelacak bug. Saat penguji ditambahkan melalui API, ia juga menerima email undangan dengan tautan instalasi aplikasi pertama.

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("Penguji ditambahkan ke grup")
    } catch (error) {
        console.error("Kesalahan:", error)
    }
}

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

Mendistribusikan build Android

Mendistribusikan build Android melalui Firebase App Distribution mendukung dua format: APK dan Android App Bundle (AAB). Saat mengunggah AAB, Firebase secara otomatis menghasilkan APK yang kompatibel dengan perangkat penguji, menggunakan Google Play App Signing. Penguji menginstal aplikasi melalui tautan langsung — mereka tidak memerlukan akses ke Google Play Console dan tidak perlu ditambahkan sebagai penguji di Play Console. Ini secara signifikan menyederhanakan proses pengujian beta untuk Android.

Persyaratan untuk build Android

Untuk instalasi melalui App Distribution, penguji harus mengaktifkan instalasi dari sumber tidak dikenal di perangkat. Firebase secara otomatis menghasilkan tautan yang mengarah ke halaman web dengan tombol instalasi APK. Untuk format AAB, perangkat harus mendukung Play Core Library dan memiliki Google Play Store terinstal. Firebase merekomendasikan penggunaan AAB untuk versi final dan APK untuk iterasi cepat.

Konfigurasi Gradle untuk App Distribution

Plugin Firebase App Distribution untuk Gradle memungkinkan pengiriman build langsung dari tugas Gradle. Konfigurasi meliputi penambahan plugin com.google.firebase.appdistribution, konfigurasi akun layanan, dan pengaturan grup target. Setelah konfigurasi, tugas assembleDistRelease akan membangun aplikasi dan mengunggahnya ke Firebase App Distribution dengan satu perintah.

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 otomatis"
}

Mendistribusikan build iOS

Mendistribusikan build iOS melalui Firebase App Distribution memerlukan konfigurasi tambahan, karena Apple membatasi instalasi aplikasi di luar App Store. Untuk mendistribusikan aplikasi iOS, perlu menggunakan sertifikat ad-hoc atau enterprise dari Apple Developer Program. Penguji harus ditambahkan di Apple Developer Portal sebagai perangkat untuk distribusi ad-hoc, atau menggunakan distribusi enterprise tanpa batasan perangkat.

Konfigurasi distribusi ad-hoc

Untuk distribusi ad-hoc, UDID semua perangkat penguji harus dikumpulkan dan ditambahkan ke Apple Developer Portal. Firebase App Distribution menampilkan petunjuk kepada penguji untuk menemukan UDID dan secara otomatis menyimpan perangkat yang terdaftar. Setelah UDID ditambahkan ke provisioning profile dan IPA dibangun, penguji menerima tautan instalasi. Firebase merekomendasikan penggunaan sertifikat enterprise untuk proyek dengan banyak penguji, karena ad-hoc terbatas pada 100 perangkat per akun.

Membangun IPA melalui Fastlane

Fastlane — alat yang direkomendasikan untuk mengotomatisasi pembangunan aplikasi iOS. Lane match mengelola sertifikat dan provisioning profile, dan lane sigh membuat IPA untuk distribusi. Firebase App Distribution terintegrasi dengan Fastlane melalui plugin firebase_app_distribution, yang mengunggah IPA dan memberi tahu penguji. Fastlane juga mendukung manajemen versi dan catatan rilis melalui plugin tambahan.

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

Integrasi dengan CI/CD dan Fastlane

Integrasi penuh Firebase App Distribution dengan CI/CD memungkinkan publikasi build baru secara otomatis pada setiap commit di repositori. Dengan mengonfigurasi pipeline CI, tim menerima umpan balik instan dari penguji dalam beberapa menit setelah push kode. App Distribution mendukung semua sistem CI populer: GitHub Actions, GitLab CI, Jenkins, Bitrise, dan CircleCI. Untuk setiap platform diperlukan konfigurasi sendiri, tetapi prinsip umumnya sama: membangun → mengunggah → memberi tahu.

Konfigurasi melalui GitHub Actions

GitHub Actions memungkinkan konfigurasi distribusi build otomatis saat push ke cabang develop atau pembuatan pull request. Workflow meliputi instalasi Java/Flutter/Node.js, membangun aplikasi, autentikasi melalui Firebase Service Account, dan menjalankan Firebase CLI dengan perintah distribute. Rahasia (token, akun layanan) disimpan di GitHub Secrets dan tidak diungkapkan dalam log build. Untuk iOS, konfigurasi Xcode tambahan dan instalasi Fastlane dalam workflow diperlukan.

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

Mengumpulkan umpan balik

Firebase App Distribution terintegrasi dengan Firebase Crashlytics untuk pengumpulan laporan crash secara otomatis dari penguji. Crashlytics secara otomatis mengaitkan crash dengan versi build dan perangkat tertentu, yang membantu melokalisasi dan memperbaiki masalah dengan cepat. Penguji juga dapat mengirim tangkapan layar dan komentar melalui antarmuka web App Distribution, menerima tautan ke formulir umpan balik setelah instalasi build.

Pertanyaan yang sering diajukan

Apa perbedaan App Distribution dengan TestFlight?

Firebase App Distribution — adalah layanan lintas platform (Android + iOS), tidak seperti TestFlight yang hanya berfungsi untuk iOS. App Distribution juga terintegrasi dengan Crashlytics dan Firebase Analytics, menyediakan ekosistem terpadu untuk pengujian beta di kedua platform.

Berapa lama build disimpan di App Distribution?

Build disimpan 150 hari sejak saat unggahan. Setelah periode tersebut, build akan otomatis dihapus. Disarankan untuk secara teratur mengunggah build baru dan menghapus build usang secara manual melalui Firebase Console agar penguji tidak menginstal versi lama.

Berapa banyak penguji yang dapat ditambahkan?

Tidak ada batasan jumlah penguji di Firebase App Distribution. Untuk distribusi ad-hoc iOS, berlaku batas Apple 100 perangkat per akun. Untuk Android dan distribusi enterprise iOS, tidak ada batasan jumlah penguji.

Bisakah AAB diunggah sebagai pengganti APK untuk Android?

Ya, App Distribution mendukung AAB (Android App Bundle). Firebase secara otomatis menghasilkan APK dari AAB untuk setiap perangkat penguji menggunakan Google Play App Signing. Ini sangat nyaman untuk pengujian sebelum publikasi di Play Store.

Apakah Firebase App Distribution gratis?

Ya, App Distribution termasuk dalam paket gratis Spark Firebase. Batasan Spark: hingga 500 penguji dan 25.000 instalasi per bulan per proyek. Paket Blaze menghilangkan batasan ini dan menambahkan dukungan prioritas.

Ringkasan

  • Firebase App Distribution — layanan untuk mendistribusikan build beta aplikasi seluler dengan dukungan Android (APK/AAB) dan iOS (IPA) tanpa publikasi di toko.
  • Manajemen penguji — sistem grup fleksibel dengan notifikasi email dan push otomatis pada setiap build baru.
  • Unggahan build dilakukan melalui Firebase Console, CLI, plugin Gradle, atau Fastlane dengan notifikasi otomatis ke penguji.
  • Build Android mendukung APK dan AAB dengan pembuatan APK otomatis dari AAB, instalasi melalui tautan langsung tanpa Google Play Console.
  • Build iOS memerlukan sertifikat ad-hoc atau enterprise Apple, dengan dukungan pendaftaran UDID dan Fastlane untuk otomatisasi pembuatan IPA.
  • Integrasi CI/CD — GitHub Actions, GitLab CI, Jenkins, Bitrise dengan Firebase CLI atau Fastlane untuk publikasi otomatis pada setiap push.
  • Gratis hingga 500 penguji dan 25.000 instalasi per bulan, build disimpan 150 hari, terintegrasi dengan Firebase Crashlytics untuk pengumpulan laporan crash.

Kami akan mengembangkan aplikasi seluler turnkey

IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.

Diskusikan proyek

Baca juga