Parameter dan Kondisi Remote Config

Ketika menggunakan Firebase console, Anda menetapkan satu atau beberapa parameter (key-value pair) dan memberikan nilai default dalam aplikasi untuk parameter tersebut. Anda dapat mengganti nilai default dalam aplikasi dengan menetapkan parameter value untuk sisi layanan menggunakan Firebase console. Kunci parameter dan parameter value berupa string, tetapi parameter value dapat berperan sebagai jenis data lain jika nilai tersebut digunakan dalam aplikasi Anda.

Dengan menggunakan Firebase console, Anda dapat membuat nilai default baru untuk parameter serta nilai bersyarat yang digunakan untuk menargetkan grup instance aplikasi. Setiap kali Anda memperbarui konfigurasi, Firebase console akan membuat dan menerbitkan versi baru dari template Remote Config Anda. Versi yang sebelumnya akan disimpan, sehingga Anda dapat mengambil atau melakukan rollback sesuai kebutuhan.

Panduan ini menjelaskan parameter, kondisi, aturan, nilai bersyarat, dan cara berbagai macam parameter value diprioritaskan pada Server Remote Config dan dalam aplikasi Anda. Panduan ini juga memberikan detail tentang jenis aturan yang digunakan untuk membuat kondisi.

Kondisi, aturan, dan nilai bersyarat

Kondisi digunakan untuk menargetkan grup instance aplikasi. Kondisi dibuat berdasarkan satu atau beberapa aturan yang semuanya harus bernilai true untuk kondisi agar bernilai true untuk instance aplikasi tertentu. Jika nilai untuk aturan tidak ditentukan (misalnya, saat tidak ada nilai yang tersedia), aturan tersebut akan bernilai false.

Misalnya, parameter yang menentukan halaman pembuka aplikasi dapat menampilkan gambar yang berbeda berdasarkan jenis OS menggunakan aturan sederhana if device_os = Android:

Atau, kondisi waktu dapat digunakan untuk mengontrol kapan aplikasi Anda menampilkan item promosi khusus.

Sebuah parameter dapat memiliki beberapa nilai bersyarat yang menggunakan kondisi berbeda, dan parameter dapat memiliki kondisi yang sama dalam satu project.

Prioritas parameter value

Sebuah parameter dapat memiliki beberapa nilai bersyarat yang terkait dengannya. Aturan berikut menentukan nilai mana yang diambil dari Server Remote Config, dan nilai mana yang digunakan dalam instance aplikasi tertentu pada titik waktu tertentu:

Parameter value untuk sisi server diambil berdasarkan daftar prioritas berikut

  1. Pertama, nilai bersyarat diterapkan, jika ada yang memiliki kondisi bernilai true untuk instance aplikasi tertentu. Jika beberapa kondisi bernilai true, kondisi pertama (teratas) yang ditunjukkan dalam UI Firebase console akan diprioritaskan, dan nilai bersyarat yang terkait dengan kondisi tersebut diberikan saat aplikasi mengambil nilai dari layanan. Anda dapat mengubah prioritas kondisi dengan menarik lalu melepas kondisi di tab Kondisi.

  2. Jika tidak ada nilai bersyarat dengan kondisi yang bernilai true, nilai default pada sisi layanan akan diberikan ketika aplikasi mengambil nilai dari layanan. Jika parameter tidak ada pada layanan, atau jika nilai default ditetapkan ke Tidak ada nilai, tidak ada nilai yang akan diberikan untuk parameter tersebut ketika aplikasi mengambil nilai.

Dalam aplikasi Anda, parameter value ditampilkan oleh metode get sesuai dengan daftar prioritas berikut

  1. Jika nilai diambil dari layanan lalu diaktifkan, aplikasi akan menggunakan nilai yang diambil tersebut. Parameter value yang diaktifkan bersifat tetap.
  2. Jika tidak ada nilai yang diambil dari layanan, atau jika nilai yang diambil dari layanan belum diaktifkan, aplikasi akan menggunakan nilai default dalam aplikasi.
  3. Jika nilai default dalam aplikasi tidak ditetapkan, aplikasi akan menggunakan nilai jenis statis (seperti 0 untuk int dan false untuk boolean).

Gambar ini merangkum cara memprioritaskan parameter value di layanan dan aplikasi Anda:

Jenis aturan kondisi

Jenis aturan berikut ini didukung di Firebase console. Fungsi yang setara tersedia di REST API Remote Config, seperti yang dijelaskan dalam referensi ekspresi kondisional.

Jenis aturan Operator Nilai Catatan
Aplikasi == Pilih dari daftar ID Aplikasi untuk aplikasi yang terkait dengan project Firebase Anda. Saat menambahkan aplikasi ke Firebase, Anda harus memasukkan ID paket iOS atau nama paket Android, yang menentukan atribut yang ditunjukkan sebagai ID Aplikasi dalam aturan Remote Config.

Gunakan atribut ini seperti berikut:
  • Untuk iOS: Gunakan CFBundleIdentifier aplikasi. Anda dapat menemukan ID Paket dalam tab Umum untuk target utama aplikasi Anda di Xcode.
  • Untuk Android: Gunakan applicationId aplikasi. Anda dapat menemukan applicationId dalam file build.gradle tingkat aplikasi.
Versi aplikasi sama persis,
berisi,
tidak berisi,
ekspresi reguler
Masukkan nilai untuk menentukan versi spesifik (atau versi terkait) aplikasi Anda. Sebelum menggunakan aturan ini, Anda harus menggunakan aturan ID Aplikasi untuk memilih aplikasi yang terkait dengan project Firebase Anda.

Untuk aplikasi iOS, ini adalah CFBundleVersion aplikasi. Untuk aplikasi Android, ini adalah nama versi aplikasi. Pembandingan string untuk aturan ini peka huruf besar/kecil.

Ketika menggunakan operator sama persis, berisi atau tidak berisi, Anda dapat memberikan daftar nilai yang dipisahkan koma.

Saat menggunakan operator ekspresi reguler, Anda dapat membuat ekspresi reguler dalam format RE2. Ekspresi reguler Anda dapat cocok dengan semua atau sebagian dari string versi target. Anda juga dapat menggunakan tanda ^ dan $ untuk mencocokkan bagian awal, akhir, atau keseluruhan string target.

Jenis OS == iOS
Android
 
Tanggal/Waktu <=, > Tanggal dan waktu yang ditentukan, di zona waktu perangkat atau zona waktu tertentu seperti "(GMT+11) waktu Sydney". Membandingkan waktu saat ini dengan waktu pengambilan perangkat.
Pengguna dalam persentil acak <=, > 0-100

Gunakan kolom ini untuk menerapkan perubahan pada sampel acak dari instance aplikasi (dengan ukuran sampel hingga sekecil 0,0001%), menggunakan operator <= dan > untuk menyegmentasikan pengguna (instance aplikasi) ke dalam grup.

Setiap instance aplikasi secara terus-menerus dipetakan ke seluruh atau sebagian nomor secara acak, sesuai dengan kunci yang ditentukan dalam project tersebut. Aturan akan menggunakan kunci default (ditunjukkan sebagai DEF dalam Firebase console) kecuali jika Anda memilih atau membuat kunci lainnya. Anda dapat menampilkan aturan untuk menggunakan kunci default dengan mengosongkan kolom Acak pengguna menggunakan kunci ini. Anda dapat menggunakan satu kunci di seluruh aturan untuk secara konsisten menangani instance aplikasi yang sama dalam rentang persentase tertentu. Atau, Anda dapat memilih grup baru yang ditetapkan secara acak dari instance aplikasi untuk rentang persentase tertentu dengan membuat kunci baru.

Misalnya, untuk membuat dua kondisi berkaitan yang masing-masing diterapkan pada 5% pengguna aplikasi yang tidak tumpang tindih, Anda dapat memiliki satu kondisi yang mencakup aturan <= 5%, dan kondisi lainnya yang mencakup aturan > 5% dan aturan <= 10%. Agar memungkinkan beberapa pengguna untuk muncul secara acak pada kedua grup, gunakan kunci yang berbeda untuk aturan dalam setiap kondisi.

Pengguna dalam audience == Pilih satu atau beberapa dari daftar audience Google Analytics for Firebase yang telah Anda siapkan untuk project Anda.

Aturan ini memerlukan aturan ID Aplikasi untuk memilih aplikasi yang terkait dengan project Firebase Anda.

Catatan: Karena banyak audience Analytics ditentukan berdasarkan peristiwa atau properti pengguna, yang dapat didasarkan pada tindakan pengguna aplikasi, mungkin perlu waktu beberapa saat agar aturan Pengguna dalam audience dapat berpengaruh terhadap instance aplikasi tertentu.

Perangkat dalam region/negara == Pilih satu atau beberapa region atau negara. Aturan ini bernilai true untuk instance aplikasi tertentu jika instance berada di region atau negara yang terdaftar. Di Android, kode negara berasal dari properti Lokal. Di iOS, kode ini berasal dari properti countryCode.
Bahasa perangkat == Pilih satu atau beberapa bahasa. Aturan ini bernilai true untuk instance aplikasi tertentu jika instance aplikasi tersebut diinstal pada perangkat yang menggunakan salah satu bahasa yang terdaftar.
Properti pengguna Untuk nilai string:
berisi,
does not contain,
sama persis,
ekspresi reguler

Untuk nilai numerik:
=, ≠, >, ≥, <, ≤

Catatan: Di klien yang digunakan, Anda dapat menetapkan hanya nilai string untuk properti pengguna. Untuk kondisi yang menggunakan operator numerik, layanan Remote Config akan mengonversi nilai properti pengguna yang terkait menjadi bilangan bulat/float.
Pilih dari daftar properti pengguna Google Analytics for Firebase yang tersedia. Guna mempelajari cara menggunakan properti pengguna untuk menyesuaikan aplikasi Anda untuk segmen basis pengguna yang sangat spesifik, lihat Remote Config dan properti pengguna.

Untuk mempelajari lebih lanjut mengenai properti pengguna, lihat panduan berikut ini:

Ketika menggunakan operator sama persis, berisi atau tidak berisi, Anda dapat memberikan daftar nilai yang dipisahkan koma.

Saat menggunakan operator ekspresi reguler, Anda dapat membuat ekspresi reguler dalam format RE2. Ekspresi reguler Anda dapat cocok dengan semua atau sebagian dari string versi target. Anda juga dapat menggunakan tanda ^ dan $ untuk mencocokkan bagian awal, akhir, atau keseluruhan string target.

Catatan: Properti pengguna yang dikumpulkan secara otomatis saat ini tidak tersedia ketika membuat kondisi Remote Config.

Mencari parameter dan condition

Anda dapat menelusuri kunci parameter, parameter value, dan kondisi project dari Firebase console menggunakan kotak penelusuran di bagian atas tab Parameter pada Remote Config.

Batasan pada parameter dan kondisi

Dalam sebuah project Firebase, Anda dapat memiliki hingga 2.000 parameter dan 500 kondisi. Panjang kunci parameter maksimal 256 karakter, harus dimulai dengan garis bawah atau karakter huruf Bahasa Inggris (A-Z, a-z), dan juga bisa menyertakan angka. Panjang total string parameter value dalam satu project tidak boleh melebihi 800.000 karakter.

Langkah berikutnya

Untuk mulai mengonfigurasi project Firebase Anda, baca bagian Menyiapkan Project Firebase Remote Config.

Kirim masukan tentang...

Butuh bantuan? Kunjungi halaman dukungan kami.