Beri tahu penguji tentang rilis aplikasi baru Anda dengan Firebase App Distribution Android SDK - Codelab

1. Tinjauan

c7a9160ef7b184c7.png22e0b52f771c060d.png

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?

Membacanya saja Baca dan selesaikan latihannya

Bagaimana Anda menilai pengalaman Anda dalam membuat aplikasi Android?

Pemula Intermediat Ahli

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 ( android_studio_folder.png ) 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

  1. Buka konsol Firebase .
  2. Pilih Tambah Proyek , lalu beri nama proyek Anda "Firebase Codelab".

Anda tidak perlu mengaktifkan Google Analytics untuk proyek ini.

  1. 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:

  1. Klik Unduh google-services.json untuk mendapatkan file konfigurasi Android Firebase Anda.
  2. Salin file google-services.json ke direktori app di proyek Anda.
  3. 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

  1. 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 ).
  2. 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:

  1. 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.

  1. Memeriksa build yang baru tersedia untuk diinstal oleh penguji.
  2. Menampilkan peringatan bawaan yang meminta penguji untuk mengunduh rilis terbaru.
  3. Periksa tipe build baru sebelum melanjutkan pembaruan:
  4. Jika build baru adalah App Bundle (AAB), alihkan penguji ke Play Store untuk menyelesaikan proses update.
  5. 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 handler onProgressUpdate ke Tugas updateIfNewReleaseAvailable .

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:

  1. Buka halaman App Distribution di konsol Firebase. Pilih proyek Firebase Anda saat diminta.
  2. Di halaman Rilis, pilih aplikasi yang ingin Anda distribusikan dari menu drop-down.

623460c3c8a82ce6.png

  1. Klik Mulai

bf503b25066ff4a4.png

  1. Seret file APK aplikasi Anda ke konsol untuk mengunggahnya.
  2. 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 .

3343048f0930e84b.png

  1. Klik Distribusikan agar build tersedia untuk penguji.

2be58fe195928bf9.png

Di konsol Firebase, Anda sekarang dapat melihat penguji yang Anda tambahkan di bawah rilis aplikasi Anda.

9935a41810344c61.png

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.

  1. Di perangkat pengujian Android Anda, buka email yang dikirim dari Firebase App Distribution dan ketuk Mulai .
  2. 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.

c18cb684f8e82ad6.png

Unduh rilis dari perangkat uji

Saat membuka aplikasi codelab AppDistribution, Anda dapat melihat bahwa rilis siap untuk didownload.

5414d9a536f25ece.png

  1. Ketuk Unduh , lalu instal dan jalankan aplikasi!
  2. Saat aplikasi dimulai, Anda diminta untuk mengaktifkan peringatan build baru. Ketuk Nyalakan .

b059e09acaa4779f.png

  1. Masuk dengan akun penguji Anda..

22e0b52f771c060d.png

Anda dikembalikan ke aplikasi. Lain kali Anda menjalankan aplikasi, Anda tidak perlu masuk atau menerima peringatan

c9f33df16a2680d.png

Distribusikan pembaruan ke penguji Anda

  1. Perbarui versionName Anda ke "1.1" dan versionCode ke 2 di file Gradle modul (level aplikasi) Anda (biasanya app/build.gradle).
  2. Bangun APK Anda menggunakan proses normal Anda. Anda harus menandatangani APK dengan kunci debug atau kunci penandatanganan aplikasi.
  3. Unggah APK baru ini di konsol Firebase Anda, tambahkan lagi email Anda sebagai penguji dan klik Distribusikan .

2dfa702edfdce6b8.png

Uji lansiran build

  1. Pastikan Anda menutup aplikasi jika terbuka.
  2. Mulai ulang aplikasi.
  3. Saat aplikasi dimulai ulang, Anda menerima peringatan Versi Baru Tersedia.

987e3d0ba4e56f84.png

  1. Untuk menerima versi terbaru, klik Perbarui .
  2. Jika diminta, pilih opsi untuk mengaktifkan penginstalan dari sumber tidak dikenal.
  3. Klik Instal (atau Perbarui ) di layar berikutnya.

a7c7cd15d60bc764.png

  1. 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