Strategi pemuatan Firebase Remote Config

Firebase Remote Config menyediakan banyak fleksibilitas terkait cara dan waktu pengambilan nilai baru dari server dan pengaktifannya di aplikasi Anda, sehingga Anda dapat memastikan pengalaman pengguna akhir yang berkualitas dengan mengendalikan waktu dari setiap perubahan konfigurasi yang terlihat. Panduan ini membahas beberapa strategi pemuatan dan pertimbangan utama saat memilih opsi terbaik untuk aplikasi Anda.

Strategi 1: Mengambil dan mengaktifkan saat pemuatan

Dalam strategi ini, aplikasi Anda akan memanggil fetchAndActivate() saat pertama kali dimulai untuk mengambil nilai baru dari Remote Config lalu mengaktifkannya segera setelah pemuatan selesai. Pendekatan sederhana ini optimal untuk perubahan konfigurasi yang tidak menyebabkan perubahan visual dramatis pada UI. Dalam situasi apa pun, perubahan semacam itu sebaiknya dihindari karena UI Anda dapat berubah secara mencolok selagi pengguna menggunakannya.

Strategi 2: Mengaktifkan di belakang layar pemuatan

Sebagai solusi untuk potensi masalah UI yang ditemukan dalam strategi 1, Anda bisa mengandalkan layar pemuatan. Daripada langsung memulai aplikasi, perlihatkan layar pemuatan dan panggil fetchAndActivate di pengendali penyelesaian Anda. Kemudian tepat setelah itu — sekali lagi gunakan callback atau notifikasi — tutup layar pemuatan dan biarkan pengguna mulai berinteraksi dengan aplikasi Anda.

Jika Anda menggunakan strategi ini, sebaiknya tambahkan waktu tunggu ke layar pemuatan. Waktu tunggu satu menit pada Remote Config mungkin terlalu lama untuk memberi pengguna pengalaman yang berkualitas saat memulai aplikasi Anda.

Strategi 3: Memuat nilai baru untuk startup berikutnya

Strategi yang efektif adalah memuat nilai konfigurasi baru untuk diaktifkan saat berikutnya aplikasi dimulai. Dalam strategi ini, saat dimulai, aplikasi Anda akan mengaktifkan nilai yang telah diambil sebelum mencoba mengambil nilai baru, dan beroperasi dengan asumsi bahwa nilai konfigurasi baru mungkin telah diambil, tetapi belum diaktifkan. Urutan operasi untuk strategi ini adalah:

  1. Begitu aplikasi dimulai, segera panggil activateFetched(). Langkah ini akan menerapkan nilai apa pun yang Anda download dari server pada sesi sebelumnya, dan nyaris seketika.
  2. Selagi pengguna berinteraksi dengan aplikasi Anda, mulai panggilan asinkron untuk mengambil nilai baru.
  3. Pada pengendali penyelesaian untuk panggilan ambil, jangan lakukan apa pun. Aplikasi akan mempertahankan nilai yang telah didownload sampai Anda mengaktifkannya saat berikutnya aplikasi dimulai.

Dengan strategi ini, waktu tunggu pengguna berkurang signifikan. Namun, pengguna harus menjalankan aplikasi Anda untuk kedua kalinya agar dapat melihat konfigurasi terbaru. Anda harus menyeimbangkan pertimbangan ini dengan logika aplikasi dan bisnis Anda.

Memuat anti-strategi

Seperti yang telah Anda pahami dari kelebihan dan kelemahan pemuatan yang dibahas di atas, ada beberapa pola penggunaan yang harus dihindari.

  • Jangan mengupdate atau beralih aspek UI saat pengguna sedang menampilkan atau berinteraksi dengan UI tersebut - kecuali jika Anda memiliki alasan teknis atau bisnis yang kuat untuk melakukannya, seperti menghapus opsi yang terkait dengan promosi yang baru saja berakhir.
  • Jangan mengirim permintaan pengambilan secara massal pada satu waktu, karena dapat menyebabkan server menerapkan throttling pada aplikasi Anda. Risiko terjadinya hal ini rendah pada sebagian besar skenario produksi, tetapi dapat menjadi masalah selama pengembangan aktif. Lihat panduan throttling untuk Android dan iOS.

Langkah berikutnya

Ketiga strategi dasar di atas bukanlah daftar lengkap cara memuat nilai konfigurasi. Bergantung pada kebutuhan, Anda dapat menyusun strategi yang jauh lebih canggih seperti update di latar belakang berbasis fungsi yang dijelaskan dalam Menerapkan update secara real time.

Lihat referensi API untuk platform Anda guna mempelajari lebih lanjut panggilan tertentu untuk mengambil dan mengaktifkan nilai konfigurasi.