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

1. Ringkasan

c7a9160ef7b184c7.png 22e0b52f771c060d.pngS

Selamat datang di codelab Mengintegrasikan Firebase App Distribution SDK di aplikasi Android Anda. Dalam codelab ini, Anda akan menambahkan App Distribution Android SDK ke aplikasi untuk menampilkan pemberitahuan dalam aplikasi kepada penguji saat build baru tersedia untuk didownload. Anda akan mempelajari cara menggunakan konfigurasi dasar dan konfigurasi kustom untuk membuat penguji login guna menerima update. Kemudian, Anda akan mengirim rilis baru ke App Distribution dan memicu pemberitahuan build baru langsung di aplikasi.

Yang akan Anda pelajari

  • Cara menggunakan App Distribution untuk mendistribusikan aplikasi pra-rilis kepada penguji
  • Cara mengintegrasikan App Distribution Android SDK ke dalam aplikasi Anda
  • Cara memberi tahu penguji jika ada build pra-rilis baru yang siap untuk diinstal
  • Cara menyesuaikan SDK agar sesuai dengan kebutuhan pengujian Anda

Hal yang akan Anda perlukan

  • Versi Android Studio terbaru.
  • Kode contoh.
  • Perangkat pengujian dengan Android 4.4+ dan layanan Google Play 9.8 atau yang lebih baru, atau Emulator dengan layanan Google Play 9.8 atau yang lebih baru.
  • Jika menggunakan perangkat, gunakan kabel koneksi.

Bagaimana Anda akan menggunakan tutorial ini?

Hanya membacanya Membacanya dan menyelesaikan latihan

Bagaimana Anda menilai pengalaman membuat aplikasi Android Anda?

Pemula Menengah Mahir

2. Mendapatkan kode contoh

Clone repositori GitHub dari command line.

$ git clone https://github.com/FirebaseExtended/codelab-appdistribution-android.git

Jika belum menginstal git, Anda juga dapat mendownload project contoh dari halaman GitHub-nya atau dengan mengklik link ini.

3. Mengimpor aplikasi awal

Dari Android Studio, pilih direktori codelab-appdistribution-android/start (android_studio_folder.png) dari download kode contoh (File > Open > .../codelab-appdistribution-android/start).

Sekarang Anda akan membuka project awal di Android Studio.

4. Membuat project Firebase console

Menambahkan project Firebase baru

  1. Buka Firebase console.
  2. Pilih Add Project, lalu beri nama project Anda "Firebase Codelab".

Anda tidak perlu mengaktifkan Google Analytics untuk project ini.

  1. Klik Create project.

Menambahkan aplikasi ke Firebase

Daftarkan aplikasi Anda ke Firebase. Gunakan "com.google.firebase.appdistributioncodelab" sebagai nama paket.

Menambahkan file google-services.json ke aplikasi Anda

Setelah menambahkan nama paket dan memilih Daftar, ikuti langkah-langkah berikut untuk menambahkan google-services.json ke aplikasi Anda:

  1. Klik Download google-services.json untuk mendapatkan file konfigurasi Android Firebase Anda.
  2. Salin file google-services.json ke direktori app di project Anda.
  3. Setelah file didownload, Anda dapat memilih Skip langkah berikutnya yang ditampilkan di konsol (yang telah dilakukan untuk Anda dalam project build-android-start).

Memperbarui ID Aplikasi agar cocok dengan aplikasi Firebase Anda

  1. Di menu kiri (Tab Project), pastikan Anda berada di Tampilan "Android", lalu cari tab "Gradle Scripts" dan buka file Gradle modul (level aplikasi) (biasanya app/build.gradle.kts).
  2. Ubah properti applicationId agar cocok dengan ID aplikasi dari aplikasi Firebase Anda. Kolom ini harus "com.google.firebase.appdistributioncodelab"

Menyinkronkan project dengan file Gradle

Untuk memastikan semua dependensi tersedia untuk aplikasi Anda, sinkronkan project dengan file Gradle dengan memilih File > Sync Project with Gradle Files dari toolbar Android Studio.

5. Menyiapkan pemberitahuan build baru dalam aplikasi dengan App Distribution Android SDK

Pada langkah ini, Anda akan menambahkan Firebase App Distribution Android SDK ke aplikasi dan menampilkan pemberitahuan dalam aplikasi kepada penguji saat build baru aplikasi tersedia untuk diinstal. Untuk melakukannya, pastikan Anda telah mengaktifkan Firebase App Testers API untuk project "Firebase Codelab" (di Konsol Google Cloud). Anda harus login dengan akun yang sama dan memilih project yang benar dari menu drop-down di bagian atas.

Mengonfigurasi pemberitahuan dalam aplikasi

App Distribution Android SDK menyediakan dua cara untuk menyiapkan pemberitahuan build dalam aplikasi untuk penguji:

  • Konfigurasi pemberitahuan dasar, yang dilengkapi dengan dialog bawaan untuk ditampilkan kepada penguji.
  • Konfigurasi pemberitahuan lanjutan, yang memungkinkan Anda menyesuaikan antarmuka pengguna (UI).

Kita akan mulai dengan konfigurasi pemberitahuan dasar. Anda dapat menggunakan updateIfNewReleaseAvailable untuk menampilkan dialog pemberitahuan pengaktifan bawaan kepada penguji yang belum mengaktifkan pemberitahuan, lalu memeriksa apakah build baru tersedia. Penguji mengaktifkan pemberitahuan dengan login ke akun yang memiliki akses ke aplikasi di App Distribution. Saat dipanggil, metode tersebut akan menerapkan urutan berikut:

  1. Memeriksa apakah penguji mengaktifkan pemberitahuan. Jika tidak, metode ini akan menampilkan dialog bawaan yang meminta penguji untuk login ke App Distribution dengan Akun Google mereka.

Mengaktifkan pemberitahuan adalah proses satu kali di perangkat pengujian yang tetap ada saat update aplikasi dilakukan. Pemberitahuan tetap aktif di perangkat pengujian hingga aplikasi di-uninstal atau hingga metode signOutTester dipanggil.

  1. Memeriksa build yang baru tersedia agar dapat diinstal oleh penguji.
  2. Menampilkan pemberitahuan bawaan yang meminta penguji untuk mendownload rilis terbaru.
  3. Memeriksa jenis build baru sebelum melanjutkan update:
  4. Jika build barunya merupakan App Bundle (AAB), mengalihkan penguji ke Play Store untuk menyelesaikan proses update.
  5. Jika build baru berupa APK, SDK akan mendownload build baru tersebut di latar belakang dan meminta penguji untuk menginstal build baru ketika download selesai. SDK mengirimkan notifikasi progres download kepada pengguna menggunakan NotificationManager.. Anda dapat menambahkan indikator progres sendiri dengan melampirkan pengendali onProgressUpdate ke Tugas updateIfNewReleaseAvailable.

Anda dapat memanggil updateIfNewReleaseAvailable() kapan saja di aplikasi. Misalnya, Anda dapat memanggil updateIfNewReleaseAvailable() selama metode onResume() MainActivity:

Buka MainActivity.kt, dan buat metode onResume() seperti ini:

MainActivity.kt

override fun onResume() {
    super.onResume()
    checkForUpdate()
}

Sekarang, mari kita implementasikan 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. Buat dan undang penguji untuk mendownload aplikasi Anda

Pada langkah ini, Anda akan mem-build aplikasi dan menguji penerapan dengan mendistribusikan build kepada penguji menggunakan Firebase console.

Mem-build aplikasi

Jika sudah siap untuk mendistribusikan versi pra-rilis aplikasi Anda kepada penguji, bangun APK menggunakan proses normal. Anda harus menandatangani APK dengan kunci debug atau kunci penandatanganan aplikasi.

Mendistribusikan aplikasi Anda kepada penguji

Untuk mendistribusikan aplikasi kepada penguji, upload file APK menggunakan Firebase console:

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

623460c3c8a82ce6.pngS

  1. Klik Mulai

bf503b25066ff4a4.png

  1. Tarik file APK aplikasi ke konsol untuk menguploadnya.
  2. Saat upload selesai, tentukan grup penguji dan masing-masing penguji yang diinginkan untuk menerima build. (Tambahkan email Anda untuk menerima undangan.) Lalu, tambahkan catatan rilis untuk versi build tersebut. Untuk mempelajari lebih lanjut cara membuat grup penguji, lihat Menambahkan dan menghapus penguji.

3343048f0930e84b.png

  1. Klik Distribute agar build tersedia untuk penguji.

2be58fe195928bf9.png

Di Firebase console, Anda kini dapat melihat penguji yang ditambahkan di bagian rilis aplikasi.

9935a41810344c61.png

Karena Anda menyertakan alamat email, Anda akan menerima email dari Firebase App Distribution yang mengundang Anda untuk menguji aplikasi. Sekarang Anda adalah penguji pertama. Ikuti petunjuk di Menyetujui undangan untuk menyiapkan diri sebagai penguji di perangkat pengujian Anda.

Menerima undangan

Anda harus menerima undangan terlebih dahulu untuk mendownload dan menguji rilis.

  1. Di perangkat pengujian Android, buka email yang dikirim dari Firebase App Distribution, lalu ketuk Mulai.
  2. Di aplikasi web penguji Firebase App Distribution yang muncul, login dengan akun Google Anda, lalu ketuk Terima undangan. Sekarang Anda dapat melihat rilis yang Anda terima undangan untuk diuji.

c18cb684f8e82ad6.pngS

Mendownload rilis dari perangkat pengujian

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

5414d9a536f25ece.png

  1. Ketuk Download, lalu instal dan jalankan aplikasi.
  2. Saat aplikasi dimulai, aplikasi akan meminta Anda untuk mengaktifkan pemberitahuan build baru. Ketuk Aktifkan.

b059e09acaa4779f.png

  1. Login dengan akun penguji Anda.

22e0b52f771c060d.png

Anda akan kembali ke aplikasi. Saat berikutnya Anda menjalankan aplikasi, Anda tidak perlu login atau menerima pemberitahuan

c9f33df16a2680d.png

Mendistribusikan update kepada penguji

  1. Perbarui versionName Anda menjadi "1.1" dan versionCode ke 2 dalam file Gradle modul (level aplikasi), biasanya app/build.gradle).
  2. Build APK menggunakan proses normal. Anda harus menandatangani APK dengan kunci debug atau kunci penandatanganan aplikasi.
  3. Upload APK baru ini di Firebase console, tambahkan kembali email Anda sebagai penguji, lalu klik Distribute.

2dfa702edfdce6b8.pngS

Menguji pemberitahuan build

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

987e3d0ba4e56f84.pngS

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

a7c7cd15d60bc764.pngS

  1. Selamat! Anda dapat mengupdate aplikasi dengan pemberitahuan bawaan.

7. Menyesuaikan login penguji

Metode signInTester/signOutTester dan isTesterSignedIn memberi Anda lebih banyak fleksibilitas untuk menyesuaikan pengalaman login penguji, sehingga dapat lebih cocok dengan tampilan dan nuansa aplikasi Anda.

Contoh berikut memeriksa apakah penguji telah login ke akun penguji Firebase App Distribution, sehingga Anda dapat memilih untuk menampilkan UI login hanya untuk penguji yang belum login. Setelah penguji login, Anda dapat memanggil checkForUpdate untuk memeriksa apakah penguji memiliki akses ke build baru.

Mari kita nonaktifkan pemeriksaan update 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 kita implementasikan metode signIn() yang akan membuat pengguna login jika mereka logout, atau logout pengguna jika mereka sudah login.

MainActivity.kt

    private fun signIn() {
        if (isTesterSignedIn()) {
            firebaseAppDistribution.signOutTester()
            configureUpdateButton()
            configureSigninButton()
        } else {
            firebaseAppDistribution.signInTester()
        }
    }

Terakhir, mari kita terapkan metode isTesterSignedIn.

MainActivity.kt

    private fun isTesterSignedIn() : Boolean {
        return firebaseAppDistribution.isTesterSignedIn
    }

Membangun dan menguji penerapan Anda

8. Selamat!

Anda telah membuat "tampilan pemberitahuan dalam aplikasi" aplikasi ke aplikasi menggunakan Firebase App Distribution Android SDK.

Yang telah kita bahas

  • Firebase App Distribution
  • Firebase App Distribution New Alerts Android SDK

Langkah Berikutnya

Pelajari Lebih Lanjut

Ada Pertanyaan?

Laporkan Masalah