Menerapkan versi aplikasi minimum dengan Remote Config

Seiring berkembangnya aplikasi Anda, rilis baru dapat menyebabkan perubahan yang dapat menyebabkan gangguan pada API backend, menyelesaikan kerentanan keamanan yang kritis, atau mengganti layanan dan model AI yang tidak digunakan lagi. Dalam situasi ini, versi aplikasi yang lebih lama dapat berhenti berfungsi dengan andal atau aman.

Dengan Remote Config, Anda dapat mengontrol persyaratan versi aplikasi secara dinamis dari cloud. Dengan menentukan parameter versi di Remote Config, Anda dapat meminta atau mewajibkan pengguna untuk mengupdate aplikasi mereka tanpa men-deploy infrastruktur server kustom atau merilis update darurat.

Memilih strategi update

Remote Config menyediakan parameter versi untuk dievaluasi di klien, sehingga Anda dapat mengonfigurasi UI update aplikasi untuk salah satu dari dua strategi bergantung pada tingkat keparahan perubahan:

  • Update paksa (pemblokiran): Jika versi aplikasi sebelumnya tidak kompatibel dengan backend Anda atau menimbulkan risiko keamanan, Anda dapat memblokir akses ke aplikasi hingga pengguna melakukan update. Jika versi yang diinstal lebih lama dari versi minimum yang diperlukan, Anda dapat mengonfigurasi aplikasi untuk menampilkan dialog yang tidak dapat ditutup yang mengarahkan pengguna ke app store platform untuk menginstal versi terbaru.
  • Update fleksibel (opsional): Jika update memperkenalkan fitur baru, peningkatan performa, atau perbaikan bug kecil, Anda dapat mengonfigurasi aplikasi untuk menampilkan banner atau dialog yang dapat ditutup yang mendorong pengguna untuk mengupdate sesuai keinginan mereka sambil mengizinkan mereka terus menggunakan aplikasi.

Langkah 1: Konfigurasi parameter di Firebase console

Untuk mengelola versi aplikasi, tentukan parameter di template Remote Config Anda:

  1. Di Firebase console, buka halaman DevOps & Engagement > Remote Config > Parameters.
  2. Klik Add parameter (atau Create configuration jika ini adalah parameter pertama Anda).
  3. Tentukan parameter berikut:
    • minimum_version: String yang mewakili versi aplikasi Anda yang paling awal didukung (misalnya, "2.4.0"). Aplikasi yang menjalankan versi yang lebih lama dari nilai ini akan diblokir hingga diupdate.
    • latest_version (opsional): String yang mewakili versi terbaru aplikasi Anda yang tersedia (misalnya, "2.5.1"). Aplikasi yang menjalankan versi antara minimum_version dan latest_version dapat menampilkan rekomendasi update opsional.
    • update_url (opsional): URL app store tempat pengguna dapat mendownload update (seperti listingan Google Play Store atau Apple App Store Anda).
  4. Opsional: Tambahkan kondisi khusus platform:
    • Karena aplikasi Android dan Apple sering kali menggunakan versi rilis dan URL app store yang berbeda, Anda dapat menambahkan value kondisional untuk setiap platform di parameter yang sama.
    • Klik Tambahkan nilai untuk kondisi > Buat kondisi. Beri nama kondisi (seperti Android App atau iOS App), pilih Aplikasi sebagai aturan penargetan, lalu pilih aplikasi Anda.
    • Tetapkan string versi yang sesuai untuk setiap kondisi platform, dan pertahankan nilai default sebagai pengganti.
  5. Klik Simpan, lalu klik Publikasikan perubahan untuk menerapkan template.

Langkah 2: Terapkan pemeriksaan versi sisi klien

Di klien, periksa versi aplikasi terinstal terhadap parameter Remote Config selama startup:

  1. Tetapkan nilai default dalam aplikasi: Selalu berikan nilai default dalam aplikasi yang aman di app bundle Anda (misalnya, tetapkan minimum_version ke rilis aplikasi awal, seperti "1.0.0"). Konfigurasi penggantian ini memastikan bahwa aplikasi Anda terus beroperasi secara normal jika perangkat offline atau permintaan pengambilan awal gagal. Untuk panduan khusus platform, lihat Mendownload default template Remote Config.
  2. Mengambil dan mengaktifkan Remote Config: Mengambil dan mengaktifkan nilai template terbaru saat aplikasi Anda dimulai.
  3. Bandingkan versi: Ambil string minimum_version dan latest_version yang aktif, lalu bandingkan dengan versi aplikasi yang saat ini diinstal.

  4. Ambil tindakan berdasarkan perbandingan versi:

    • Terapkan update yang diperlukan: Jika current_version lebih awal dari minimum_version, tampilkan pemberitahuan modal layar penuh yang tidak dapat ditutup. Nonaktifkan navigasi ke bagian lain aplikasi dan sediakan tombol yang membuka update_url di app store platform.
    • Minta update opsional: Jika current_version lebih awal dari latest_version, tampilkan dialog atau notifikasi yang dapat ditutup untuk memberi tahu pengguna bahwa update tersedia, dengan opsi Update sekarang atau Nanti.
    • Izinkan akses: Jika tidak, izinkan pengguna melanjutkan ke aplikasi.

Praktik terbaik

  • Menambahkan pemroses real-time: Jika update versi diperlukan karena masalah keamanan atau penurunan UX yang serius, menambahkan pemroses Remote Config real-time ke aplikasi Anda dapat membantu memastikan bahwa perubahan persyaratan versi segera berlaku di perangkat aktif tanpa menunggu pengambilan terjadwal berikutnya atau mulai ulang aplikasi.
  • Uji dengan grup pengujian terbatas: Sebelum menaikkan minimum_version untuk semua pengguna produksi, uji kondisi dengan grup pengujian terbatas atau targetkan penguji internal menggunakan properti pengguna kustom. Pengujian ini memverifikasi bahwa modal pemblokiran ditampilkan dengan benar dan link app store berfungsi dengan baik.
  • Gunakan API update dalam aplikasi platform: Di Android, pertimbangkan untuk mengintegrasikan Update Dalam Aplikasi Google Play bersama dengan pemeriksaan Remote Config Anda untuk memungkinkan pengguna mendownload dan menginstal update tanpa keluar dari aplikasi Anda.
  • Baca checklist produksi: Baca checklist peluncuran Firebase dan checklist produksi AI Logic untuk mendapatkan panduan lebih lanjut tentang cara menyiapkan aplikasi dan fitur AI Anda untuk produksi.