1. Tinjauan
Selamat datang di Mengintegrasikan SDK Distribusi Aplikasi Firebase di codelab aplikasi Android Anda. Dalam codelab ini, Anda akan menambahkan App Distribution Android SDK ke aplikasi Anda untuk menampilkan notifikasi dalam aplikasi kepada penguji saat build baru tersedia untuk didownload. Anda akan mempelajari cara menggunakan konfigurasi dasar dan konfigurasi khusus agar penguji Anda masuk untuk menerima pembaruan. Kemudian Anda akan mendorong rilis baru ke App Distribution dan memicu peringatan build baru langsung di aplikasi.
Apa yang akan Anda pelajari
- Cara menggunakan App Distribution untuk mendistribusikan aplikasi pra-rilis ke penguji
- Cara mengintegrasikan App Distribution Android SDK ke dalam aplikasi Anda
- Cara memberi tahu penguji saat ada build pra-rilis baru yang siap diinstal
- Cara menyesuaikan SDK agar sesuai dengan kebutuhan pengujian Anda
Apa yang Anda butuhkan
- Versi Android Studio terbaru.
- Kode sampel.
- Perangkat uji dengan Android 4.4+ dan layanan Google Play 9.8 atau lebih baru, atau Emulator dengan layanan Google Play 9.8 atau lebih baru.
- Jika menggunakan perangkat, kabel koneksi.
Bagaimana Anda akan menggunakan tutorial ini?
Bagaimana Anda menilai pengalaman Anda dalam membuat aplikasi Android?
2. Dapatkan kode contoh
Klon repositori GitHub dari baris perintah.
$ git clone https://github.com/FirebaseExtended/codelab-appdistribution-android.git
Jika Anda belum menginstal git, Anda juga dapat mengunduh proyek sampel dari halaman GitHub atau dengan mengeklik tautan ini .
3. Impor aplikasi awal
Dari Android Studio, pilih direktori codelab-appdistribution-android/start
( ) dari unduhan kode contoh ( File > Open > .../codelab-appdistribution-android/start).
Anda sekarang harus membuka proyek awal di Android Studio.
4. Buat proyek konsol Firebase
Tambahkan proyek Firebase baru
- Buka konsol Firebase .
- Pilih Tambah Proyek , lalu beri nama proyek Anda "Firebase Codelab".
Anda tidak perlu mengaktifkan Google Analytics untuk proyek ini.
- Klik Buat proyek .
Tambahkan aplikasi ke Firebase
Daftarkan aplikasi Anda dengan Firebase . Gunakan "com.google.firebase.appdistributioncodelab" sebagai nama paket.
Tambahkan file google-services.json ke aplikasi Anda
Setelah menambahkan nama paket dan memilih Daftar, ikuti langkah berikut untuk menambahkan google-services.json ke aplikasi Anda:
- Klik Unduh google-services.json untuk mendapatkan file konfigurasi Android Firebase Anda.
- Salin file google-services.json ke direktori
app
di proyek Anda. - Setelah file diunduh, Anda dapat Lewati langkah selanjutnya yang ditampilkan di konsol (mereka sudah dilakukan untuk Anda di proyek build-android-start).
Perbarui ID Aplikasi agar cocok dengan aplikasi Firebase Anda
- Di menu sebelah kiri (Project Tab), pastikan Anda berada di "Android" View dan cari tab "Gradle Scripts" dan buka file Gradle modul (level aplikasi) Anda (biasanya
app/build.gradle.kts
). - Ubah properti
applicationId
agar cocok dengan ID aplikasi aplikasi Firebase Anda. Ini seharusnya "com.google.firebase.appdistributioncodelab"
Sinkronkan proyek Anda dengan file Gradle
Untuk memastikan bahwa semua dependensi tersedia untuk aplikasi Anda, sinkronkan proyek Anda dengan file Gradle dengan memilih File > Sinkronkan Proyek dengan File Gradle dari toolbar Android Studio.
5. Siapkan peringatan build baru dalam aplikasi dengan App Distribution Android SDK
Pada langkah ini, Anda akan menambahkan SDK Android Firebase App Distribution ke aplikasi Anda dan menampilkan notifikasi dalam aplikasi kepada penguji saat build baru aplikasi Anda tersedia untuk diinstal. Untuk melakukannya, pastikan Anda telah mengaktifkan Firebase App Testers API untuk project "Firebase Codelab" (di Google Cloud Console). Anda harus masuk dengan akun yang sama dan memilih proyek yang benar dari menu tarik-turun di bagian atas.
Konfigurasikan lansiran dalam aplikasi
App Distribution Android SDK menyediakan dua cara menyiapkan lansiran build dalam aplikasi untuk penguji Anda:
- Konfigurasi lansiran dasar, yang dilengkapi dengan dialog bawaan untuk ditampilkan kepada penguji.
- Konfigurasi lansiran lanjutan, yang memungkinkan Anda menyesuaikan antarmuka pengguna (UI).
Kami akan mulai dengan konfigurasi peringatan dasar. Anda dapat menggunakan updateIfNewReleaseAvailable
untuk menampilkan dialog peringatan pengaktifan pra-bangun kepada penguji yang belum mengaktifkan peringatan, lalu memeriksa apakah versi baru tersedia. Penguji mengaktifkan peringatan dengan masuk ke akun yang memiliki akses ke aplikasi di App Distribution. Saat dipanggil, metode memberlakukan urutan berikut:
- Memeriksa apakah penguji mengaktifkan peringatan. Jika tidak, metode akan menampilkan dialog bawaan yang meminta penguji masuk ke App Distribution dengan akun Google mereka.
Mengaktifkan lansiran adalah proses satu kali pada perangkat uji yang terus berlanjut selama pembaruan aplikasi Anda. Lansiran tetap diaktifkan di perangkat pengujian hingga aplikasi dihapus instalannya atau hingga metode signOutTester
dipanggil.
- Memeriksa build yang baru tersedia untuk diinstal oleh penguji.
- Menampilkan peringatan bawaan yang meminta penguji untuk mengunduh rilis terbaru.
- Periksa tipe build baru sebelum melanjutkan pembaruan:
- Jika build baru adalah App Bundle (AAB), alihkan penguji ke Play Store untuk menyelesaikan proses update.
- Jika build baru adalah APK, SDK akan mendownload build baru di latar belakang dan meminta penguji untuk menginstal build baru saat download selesai. SDK mengirimkan notifikasi progres unduhan ke pengguna menggunakan
NotificationManager.
Anda dapat menambahkan indikator progres Anda sendiri dengan melampirkan handleronProgressUpdate
ke TugasupdateIfNewReleaseAvailable
.
Anda dapat memanggil updateIfNewReleaseAvailable()
kapan saja di aplikasi Anda. Misalnya, Anda dapat memanggil updateIfNewReleaseAvailable()
selama metode onResume()
dari MainActivity:
Buka MainActivity.kt , dan buat metode onResume()
seperti ini:
MainActivity.kt
override fun onResume() {
super.onResume()
checkForUpdate()
}
Sekarang mari terapkan metode checkForUpdate()
.
MainActivity.kt
private fun checkForUpdate() {
firebaseAppDistribution.updateIfNewReleaseAvailable()
.addOnProgressListener { updateProgress ->
// (Optional) Implement custom progress updates in addition to
// automatic NotificationManager updates.
}
.addOnFailureListener { e ->
if (e is FirebaseAppDistributionException) {
// Handle exception.
}
}
}
6. Bangun dan undang penguji untuk mengunduh aplikasi Anda
Pada langkah ini, Anda mem-build aplikasi dan menguji implementasi dengan mendistribusikan build ke penguji menggunakan Firebase console.
Bangun aplikasi Anda
Saat Anda siap untuk mendistribusikan versi pra-rilis aplikasi Anda ke penguji, buat APK menggunakan proses normal Anda. Anda harus menandatangani APK dengan kunci debug atau kunci penandatanganan aplikasi.
Distribusikan aplikasi Anda ke penguji
Untuk mendistribusikan aplikasi Anda ke penguji, unggah file APK menggunakan konsol Firebase:
- Buka halaman App Distribution di konsol Firebase. Pilih proyek Firebase Anda saat diminta.
- Di halaman Rilis, pilih aplikasi yang ingin Anda distribusikan dari menu drop-down.
- Klik Mulai
- Seret file APK aplikasi Anda ke konsol untuk mengunggahnya.
- Saat unggahan selesai, tentukan grup penguji dan masing-masing penguji yang Anda inginkan untuk menerima build. (Tambahkan email Anda untuk menerima undangan.) Kemudian, tambahkan catatan rilis untuk build. Untuk mempelajari lebih lanjut tentang membuat grup penguji, lihat Menambahkan dan menghapus penguji .
- Klik Distribusikan agar build tersedia untuk penguji.
Di konsol Firebase, Anda sekarang dapat melihat penguji yang Anda tambahkan di bawah rilis aplikasi Anda.
Karena Anda menyertakan alamat email, Anda akan menerima email dari Firebase App Distribution yang mengundang Anda untuk menguji aplikasi. Anda sekarang adalah penguji pertama! Ikuti petunjuk di Terima undangan untuk menyiapkan sebagai penguji di perangkat pengujian Anda.
Menerima undangan
Anda harus terlebih dahulu menerima undangan untuk mengunduh dan menguji rilis.
- Di perangkat pengujian Android Anda, buka email yang dikirim dari Firebase App Distribution dan ketuk Mulai .
- Di aplikasi web penguji Firebase App Distribution yang muncul, masuk dengan akun Google Anda dan ketuk Terima undangan. Sekarang Anda dapat melihat rilis yang diundang untuk diuji.
Unduh rilis dari perangkat uji
Saat membuka aplikasi codelab AppDistribution, Anda dapat melihat bahwa rilis siap untuk didownload.
- Ketuk Unduh , lalu instal dan jalankan aplikasi!
- Saat aplikasi dimulai, Anda diminta untuk mengaktifkan peringatan build baru. Ketuk Nyalakan .
- Masuk dengan akun penguji Anda..
Anda dikembalikan ke aplikasi. Lain kali Anda menjalankan aplikasi, Anda tidak perlu masuk atau menerima peringatan
Distribusikan pembaruan ke penguji Anda
- Perbarui versionName Anda ke "1.1" dan versionCode ke 2 di file Gradle modul (level aplikasi) Anda (biasanya app/build.gradle).
- Bangun APK Anda menggunakan proses normal Anda. Anda harus menandatangani APK dengan kunci debug atau kunci penandatanganan aplikasi.
- Unggah APK baru ini di konsol Firebase Anda, tambahkan lagi email Anda sebagai penguji dan klik Distribusikan .
Uji lansiran build
- Pastikan Anda menutup aplikasi jika terbuka.
- Mulai ulang aplikasi.
- Saat aplikasi dimulai ulang, Anda menerima peringatan Versi Baru Tersedia.
- Untuk menerima versi terbaru, klik Perbarui .
- Jika diminta, pilih opsi untuk mengaktifkan penginstalan dari sumber tidak dikenal.
- Klik Instal (atau Perbarui ) di layar berikutnya.
- Selamat! Anda dapat memperbarui aplikasi Anda dengan peringatan bawaan.
7. Kustomisasi login penguji
Metode signInTester/signOutTester dan isTesterSignedIn memberi Anda lebih banyak fleksibilitas untuk menyesuaikan pengalaman masuk penguji, sehingga dapat lebih cocok dengan tampilan dan nuansa aplikasi Anda.
Contoh berikut memeriksa apakah penguji telah masuk ke akun penguji Firebase App Distribution, sehingga Anda dapat memilih untuk menampilkan UI masuk hanya untuk penguji yang belum masuk. Setelah penguji masuk, Anda dapat panggil checkForUpdate untuk memeriksa apakah penguji memiliki akses ke bangunan baru.
Mari nonaktifkan pemeriksaan pembaruan secara otomatis di onResume dengan mengomentari panggilan checkForUpdate() .
MainActivity.kt
override fun onResume() {
super.onResume()
//checkForupdate()
}
Sebagai gantinya, checkForUpdate() sudah ditambahkan di OnClickListener updatebutton.
Sekarang, mari terapkan metode signIn() kita yang akan memasukkan pengguna jika mereka keluar, atau mengeluarkan pengguna jika mereka sudah masuk.
MainActivity.kt
private fun signIn() {
if (isTesterSignedIn()) {
firebaseAppDistribution.signOutTester()
configureUpdateButton()
configureSigninButton()
} else {
firebaseAppDistribution.signInTester()
}
}
Terakhir, mari terapkan metode isTesterSignedIn .
MainActivity.kt
private fun isTesterSignedIn() : Boolean {
return firebaseAppDistribution.isTesterSignedIn
}
Buat dan uji implementasi Anda
8. Selamat!
Anda telah membuat fitur "in-app alerts display" ke dalam aplikasi menggunakan Firebase App Distribution Android SDK.
Apa yang telah kita bahas
- Distribusi Aplikasi Firebase
- Firebase App Distribution Peringatan Baru Android SDK
Langkah selanjutnya
Belajarlah lagi
Punya pertanyaan?
Laporkan Masalah