Memulai Firebase Remote Config untuk Unity

Anda dapat menggunakan Firebase Remote Config untuk menetapkan parameter dalam aplikasi dan mengupdate value-nya di cloud, agar Anda dapat memodifikasi tampilan dan perilaku aplikasi tanpa mendistribusikan update aplikasi.

Library Remote Config digunakan untuk menyimpan parameter value default dalam aplikasi, mengambil parameter value terbaru dari backend Remote Config, dan mengontrol kapan nilai yang diambil akan tersedia untuk aplikasi Anda. Untuk mempelajari lebih lanjut, baca artikel Strategi pemuatan Remote Config.

Menambahkan Remote Config ke aplikasi Anda

Sebelum dapat menggunakan Remote Config, Anda perlu:

  • Mendaftarkan project Unity Anda dan mengonfigurasikannya untuk menggunakan Firebase.

    • Jika project Unity Anda telah menggunakan Firebase, berarti project tersebut telah terdaftar dan dikonfigurasikan untuk Firebase.

    • Jika belum memiliki project Unity, Anda dapat mendownload aplikasi contoh.

  • Menambahkan Firebase Unity SDK (khususnya, FirebaseRemoteConfig.unitypackage) ke project Unity Anda.

Perlu diperhatikan bahwa menambahkan Firebase ke project Unity Anda melibatkan tugas di Firebase console dan di project Unity yang terbuka (misalnya, Anda mendownload file konfigurasi Firebase dari konsol, lalu memindahkannya ke project Unity).

Menetapkan parameter value default dalam aplikasi

Anda dapat menyetel parameter value default dalam objek Remote Config, yang akan digunakan jika tidak ada nilai lain yang diambil dari backend. Melalui tindakan ini, aplikasi Anda dapat berperilaku seperti yang diinginkan sebelum terhubung dengan backend Remote Config.

Untuk melakukannya, buatlah kamus string, dan isi dengan key-value pair yang mewakili default yang ingin Anda tambahkan. (Properti yang bukan string akan dikonversi ke jenis properti saat SetDefaults dipanggil.)

System.Collections.Generic.Dictionary defaults =
  new System.Collections.Generic.Dictionary();

// These are the values that are used if we haven't fetched data from the
// backend yet, or if we ask for values that the backend doesn't have:
defaults.Add("propertyname_string", "default local string");
defaults.Add("propertyname_int", 1);
defaults.Add("propertyname_float", 1.0);
defaults.Add("propertyname_bool", false);

Firebase.RemoteConfig.FirebaseRemoteConfig.SetDefaults(defaults);

Mendapatkan parameter value yang akan digunakan dalam aplikasi

Sekarang Anda bisa mendapatkan parameter value dari objek Remote Config. Jika Anda menetapkan nilai di backend Remote Config, mengambilnya, lalu mengaktifkannya, nilai tersebut akan tersedia untuk aplikasi Anda. Jika tidak, Anda akan mendapatkan parameter value dalam aplikasi yang terkonfigurasi menggunakan SetDefaults().

Untuk mendapatkan nilai ini, gunakan GetValue(), yang menyediakan kunci parameter sebagai argumen. Tindakan ini menampilkan ConfigValue, yang memiliki properti untuk mengonversi nilai ke dalam berbagai jenis dasar.

Menghubungkan aplikasi di Firebase console

Di Firebase console, tambahkan aplikasi Anda ke project Firebase.

Menetapkan parameter value

  1. Buka project Anda di Firebase console.
  2. Pilih Remote Config dari menu untuk melihat dasbor Remote Config.
  3. Tetapkan parameter dengan nama yang sama dengan parameter yang Anda tetapkan dalam aplikasi. Untuk setiap parameter, Anda dapat menetapkan nilai default (yang pada akhirnya akan mengganti nilai default dalam aplikasi) dan Anda juga dapat menetapkan nilai kondisional. Untuk mempelajari lebih lanjut, baca artikel parameter dan kondisi Remote Config.

Mengambil dan mengaktifkan nilai (jika perlu)

Untuk mengambil parameter value dari backend Remote Config, panggil metode FetchAsync(). Setiap nilai yang Anda tetapkan pada backend akan diambil dan disimpan dalam cache di objek Remote Config.

Nilai yang diambil melalui FetchAsync() akan disimpan ke dalam cache secara lokal saat pengambilan selesai, tetapi tidak akan tersedia sampai ActivateFetched() dipanggil. Karena FetchAsync() tidak berjalan secara bersamaan, Anda dapat memastikan bahwa nilai yang baru tidak akan diterapkan di tengah-tengah penghitungan, atau pada waktu lain yang dapat menyebabkan masalah atau perilaku aneh.

(Opsional) Mengaktifkan mode developer

Untuk mengaktifkan mode developer, yang dapat digunakan untuk menonaktifkan throttling selama tahap pengembangan, Anda dapat menggunakan properti FirebaseRemoteConfig.Setting, sehingga akan menetapkan ConfigSettings baru dengan IsDeveloperMode ditetapkan ke true.