Panduan ini menjelaskan cara mendistribusikan Android App Bundle (AAB) kepada penguji menggunakan Firebase CLI. Alat CLI memungkinkan Anda memilih penguji dan catatan rilis untuk build, lalu mendistribusikan build tersebut dengan sesuai.
App Distribution terintegrasi dengan layanan fitur berbagi aplikasi internal Google Play untuk memproses AAB yang Anda upload dan menyalurkan APK yang dioptimalkan untuk konfigurasi perangkat penguji. Mendistribusikan AAB memungkinkan Anda melakukan hal berikut:
- Menjalankan APK (yang disalurkan oleh Google Play) yang telah dioptimalkan untuk perangkat penguji Anda. 
- Menemukan dan mendebug masalah terkait perangkat. 
- Menguji fitur-fitur app bundle seperti Play Feature Delivery dan Play Asset Delivery 
- Mengurangi ukuran download untuk penguji Anda. 
Izin yang diperlukan
Untuk mengupload AAB ke App Distribution, Anda harus menautkan aplikasi Firebase ke aplikasi di Google Play. Anda harus memiliki tingkat akses yang diperlukan untuk melakukan tindakan ini.
Jika tidak memiliki akses Firebase yang diperlukan, Anda dapat meminta Pemilik project Firebase untuk menetapkan peran yang berlaku melalui setelan IAM Firebase console. Jika Anda memiliki pertanyaan terkait cara mengakses project Firebase, termasuk cara menemukan atau menetapkan Pemilik, pelajari FAQ tentang "izin dan akses ke project Firebase".
Tabel berikut berlaku untuk menautkan aplikasi Firebase ke aplikasi di Google Play, serta mengupload AAB.
| Tindakan di Firebase console | Izin IAM yang diperlukan | Peran IAM yang menyertakan izin yang diperlukan secara default | Peran tambahan yang diperlukan | 
|---|---|---|---|
| Menautkan aplikasi Firebase ke aplikasi di Google Play | firebase.playLinks.update | Salah satu dari peran berikut: | Akses ke akun developer Google Play sebagai Admin | 
| Mengupload AAB ke App Distribution | firebaseappdistro.releases.update | Salah satu dari peran berikut: | –– | 
Sebelum memulai
- Tambahkan Firebase ke project Android jika belum melakukannya. Di akhir alur kerja ini, Anda akan memiliki Aplikasi Android Firebase di project Firebase. - Jika tidak menggunakan produk Firebase lainnya, Anda hanya perlu membuat project dan mendaftarkan aplikasi. Jika Anda memutuskan untuk menggunakan produk tambahan, pastikan untuk menyelesaikan semua langkah di Menambahkan Firebase ke project Android Anda. 
- Untuk membuat link Firebase ke Google Play dan mengupload AAB, pastikan aplikasi Anda memenuhi persyaratan berikut: - Aplikasi di Google Play dan aplikasi Android Firebase terdaftar menggunakan nama paket yang sama. 
- Aplikasi di Google Play disiapkan di dasbor aplikasi dan didistribusikan ke salah satu jalur Google Play (Pengujian internal, Pengujian tertutup, Pengujian terbuka, atau Produksi). 
- Peninjauan aplikasi di Google Play selesai dan aplikasi sudah dipublikasikan. Aplikasi Anda dianggap sudah dipublikasikan jika kolom Status aplikasi menampilkan salah satu status berikut: Pengujian internal (bukan Draf pengujian internal), Pengujian tertutup, Pengujian terbuka, atau Produksi. 
 
- Tautkan Aplikasi Android Firebase ke akun developer Google Play Anda: - Di Firebase console, buka - Project settings , lalu pilih tab Integrations.
- Di kartu Google Play, klik Link. 
 Jika Anda sudah memiliki Aplikasi Android Firebase yang tertaut ke Google Play, klik Manage.
- Ikuti petunjuk di layar untuk mengaktifkan App Distribution dan memilih Aplikasi Android Firebase yang akan ditautkan ke Google Play. 
 - Pelajari lebih lanjut cara menautkan ke Google Play 
Langkah 1. Build aplikasi Anda
Saat sudah siap untuk mendistribusikan versi pra-rilis aplikasi kepada penguji, build AAB Anda (buka dokumentasi Android Studio untuk mendapatkan petunjuk).
Langkah 2. Distribusikan aplikasi kepada penguji
Untuk mendistribusikan aplikasi kepada penguji, upload file aplikasi menggunakan Firebase CLI:
- Instal atau update ke versi terbaru Firebase CLI (sebaiknya download program biner mandiri untuk CLI khusus untuk OS Anda). Pastikan untuk login dan uji apakah Anda dapat mengakses project Anda.
- 
  Jalankan perintah appdistribution:distributeuntuk mengupload aplikasi dan mendistribusikannya kepada penguji. Gunakan parameter berikut untuk mengonfigurasi distribusi:opsi appdistribution:distribute --appWajib diisi: ID Aplikasi Firebase aplikasi Anda. Anda dapat menemukan ID Aplikasi di Firebase console, di halaman Setelan Umum. --app 1:1234567890:android:0a1b2c3d4e5f67890 --tokenToken refresh yang dicetak saat Anda mengautentikasi lingkungan CI dengan Firebase CLI (baca Menggunakan CLI dengan sistem CI untuk informasi selengkapnya). --token "$FIREBASE_TOKEN" --release-notes
 --release-notes-fileCatatan rilis untuk build ini. Anda dapat menentukan catatan rilis secara langsung: --release-notes "Text of release notes" Atau, tentukan lokasi ke file teks biasa: --release-notes-file "/path/to/release-notes.txt" --testers
 --testers-fileAlamat email penguji yang ingin Anda undang. Anda dapat menentukan penguji sebagai daftar alamat email yang dipisahkan koma: --testers "ali@example.com, bri@example.com, cal@example.com" Atau, Anda dapat menentukan lokasi ke file teks biasa yang berisi daftar alamat email yang dipisahkan koma: --testers-file "/path/to/testers.txt" --groups
 --groups-fileGrup penguji yang akan Anda undang (lihat Mengelola penguji). Grup ditentukan menggunakan alias grup , yang dapat Anda cari di Firebase console.Anda dapat menentukan grup sebagai comma separated list: --groups "qa-team, trusted-testers" Atau, Anda dapat menentukan jalur ke file teks biasa yang berisi daftar nama grup yang dipisahkan koma: --groups-file "/path/to/groups.txt" --debugTanda yang dapat Anda sertakan untuk mencetak output log panjang. --test-devices
 --test-devices-fileJenis distribusi berikut adalah bagian dari Fitur beta penguji otomatis. Perangkat pengujian tempat Anda ingin mendistribusikan build (lihat Pengujian otomatis). Anda dapat menentukan penguji sebagai daftar alamat email yang dipisahkan koma: --test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait" Atau, Anda dapat menentukan jalur ke file teks biasa yang berisi daftar perangkat pengujian yang dipisahkan titik koma: --test-devices-file: "/path/to/test-devices.txt" --test-usernameNama pengguna untuk login otomatis yang akan digunakan selama pengujian otomatis. --test-password
 --test-password-fileSandi untuk login otomatis yang akan digunakan selama pengujian otomatis. Atau, Anda dapat menentukan jalur ke file teks biasa yang berisi sandi: --test-password-file: "/path/to/test-password.txt" --test-username-resourceNama resource pada kolom nama pengguna untuk login otomatis yang akan digunakan selama pengujian otomatis. --test-password-resourceNama resource pada kolom sandi untuk login otomatis yang akan digunakan selama pengujian otomatis. --test-non-blockingJalankan pengujian otomatis secara asinkron. Buka Firebase console untuk melihat hasil pengujian otomatis. Contoh: firebase appdistribution:distribute test.aab \ --app 1:1234567890:android:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txtFirebase CLI membuat output link berikut setelah upload rilis. Link ini membantu Anda mengelola program biner dan memastikan bahwa penguji serta developer lain memiliki rilis yang tepat: - firebase_console_uri- Link ke Firebase console yang menampilkan satu rilis. Anda dapat membagikan link ini kepada developer lain di organisasi Anda.
- testing_uri- Link ke rilis dalam pengalaman penguji (aplikasi native Android) yang memungkinkan penguji melihat catatan rilis dan menginstal aplikasi ke perangkat mereka. Penguji memerlukan akses ke rilis untuk menggunakan link.
- binary_download_uri- Link bertanda tangan yang langsung mendownload dan menginstal biner aplikasi (file APK atau AAB). Masa berlaku link akan berakhir setelah satu jam.
 Mengelola penguji dan grupSelain mendistribusikan rilis, Anda juga dapat menggunakan appdistribution:testers:adddanappdistribution:testers:removeuntuk mengundang penguji baru atau menghapus penguji yang sudah ada dari project Firebase Anda.Setelah penguji ditambahkan ke project Firebase, Anda dapat menambahkannya ke rilis individual. Setelah Anda menghapus penguji, mereka tidak akan lagi memiliki akses ke rilis di project Anda. Perlu diperhatikan bahwa penguji yang baru saja dihapus masih dapat mempertahankan akses ke rilis Anda selama jangka waktu tertentu. Contoh: firebase appdistribution:testers:add anothertester@email.com moretesters@email.comfirebase appdistribution:testers:remove anothertester@email.com moretesters@email.comEmail penguji harus dipisahkan dengan spasi. Anda juga dapat memilih penguji menggunakan --file /path/to/testers.txt.Jika Anda memiliki banyak penguji, sebaiknya gunakan grup: Anda dapat menggunakan appdistribution:group:createdanappdistribution:group:deleteuntuk membuat atau menghapus grup di project Firebase Anda.Gunakan --group-aliasuntuk menentukan grup untuk perintahappdistribution:testers:adddanappdistribution:testers:remove.Contoh: firebase appdistribution:group:create "QA team" qa-teamfirebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.comfirebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.comfirebase appdistribution:group:delete qa-team
Setelah didistribusikan, build Anda akan tersedia di dasbor App Distribution di Firebase console selama 150 hari (lima bulan). Saat masa berlaku build akan berakhir dalam 30 hari, notifikasi akhir masa berlakunya akan muncul di konsol dan di daftar build penguji pada perangkat pengujinya.
Penguji yang belum diundang untuk menguji aplikasi akan menerima undangan email untuk memulai, dan penguji yang ada akan menerima notifikasi email bahwa ada versi build baru yang siap diuji (baca panduan penyiapan penguji untuk mengetahui petunjuk cara menginstal aplikasi pengujian). Anda dapat memantau status setiap penguji, apakah mereka sudah menerima undangan dan mendownload aplikasi, di Firebase console.
Penguji memiliki waktu 30 hari untuk menerima undangan pengujian aplikasi sebelum masa berlakunya habis. Saat masa berlaku undangan akan berakhir dalam 5 hari, notifikasi habisnya masa berlaku akan muncul di Firebase console di samping penguji pada rilis. Undangan dapat diperpanjang dengan pengiriman ulang menggunakan menu drop-down pada baris penguji.
Langkah berikutnya
- Terapkan masukan dalam aplikasi untuk memudahkan penguji mengirimkan masukan tentang aplikasi Anda (termasuk screenshot). 
- Pelajari cara menampilkan pemberitahuan dalam aplikasi kepada penguji saat build baru aplikasi sudah tersedia untuk diinstal. 
- Pelajari praktik terbaik untuk mendistribusikan aplikasi Android ke penguji QA menggunakan CI/CD.