Referensi ekspresi kondisional Remote Config

Halaman ini berisi informasi referensi untuk membuat ekspresi kondisional menggunakan REST API Remote Config atau Firebase console. Untuk mengetahui informasi lebih lanjut tentang cara menyiapkan dan menggunakan REST API, baca Menggunakan REST API Remote Config.

Elemen yang digunakan untuk membuat condition

REST API Remote Config mendukung elemen yang sama dengan yang dapat Anda gunakan untuk membuat condition saat mengonfigurasi layanan Remote Config dengan menggunakan Firebase Console:

Elemen Deskripsi
&&

Digunakan untuk membuat elemen logika "and" jika menggunakan lebih dari satu elemen untuk sebuah condition. Jika sebuah elemen digunakan dalam sintaks REST tanpa && , elemen tersebut diperlakukan sebagai condition.

Catatan: sebuah spasi perlu diselipkan ke sebelum dan sesudah ampersand. Sebagai contoh: element1 && element2.

app.version Mengevaluasi ke TRUE atau FALSE berdasarkan versi aplikasi.
app.id Elemen yang didasarkan pada Firebase App ID aplikasi
app.audiences Elemen yang melakukan evaluasi ke TRUE atau FALSE berdasarkan kehadiran atau ketidakhadiran pengguna pada satu atau beberapa audience Firebase Analytics.
device.country Elemen yang didasarkan pada wilayah/negara tempat perangkat berada, dengan menggunakan standar ISO 3166-1 alpha-2 (misalnya, AS atau Inggris). Mengevaluasi ke TRUE ketika sebuah negara cocok dengan kode negara yang diharapkan.
device.dateTime Elemen yang didasarkan pada waktu pengambilan terakhir yang dilakukan perangkat. Elemen ini menggunakan format tanggal ISO dengan opsi untuk menentukan zona waktu tetap; misalnya, dateTime('2017-03-22T13:39:44', 'America/Los_Angeles').
device.language Elemen yang didasarkan pada bahasa yang dipilih pada perangkat. Bahasa ini diwakili dengan menggunakan tag Bahasa IETF, seperti es-ES, pt-BR, atau en-US. Mengevaluasi ke TRUE ketika sebuah negara cocok dengan kode bahasa yang diharapkan.
device.os Elemen yang didasarkan pada sistem operasi yang digunakan pada perangkat (iOS atau Android). Mengevaluasi ke TRUE ketika jenis OS perangkat sesuai dengan yang diharapkan.
app.userProperty Elemen yang melakukan evaluasi ke TRUE atau FALSE berdasarkan nilai numerik atau string dari Properti Pengguna Firebase Analytics.
percent Mengevaluasi ke TRUE berdasarkan kesertaan pengguna dalam persentil fraksional acak (dengan ukuran sampel sekecil 0,000001%).

Condition berelemen tunggal terdiri dari 3 kolom:

  1. name yang bisa ditetapkan secara sembarang (maksimal 100 karakter)
  2. Ekspresi kondisional yang mengevaluasi ke TRUE atau FALSE, terdiri dari elemen yang ditunjukkan di atas.
  3. (Opsional) tagColor, yang dapat berupa "BLUE", "BROWN", "CYAN", "DEEP_ORANGE", "GREEN", "INDIGO", "LIME", "ORANGE", "PINK", "PURPLE", atau "TEAL". Tulisan warna peka huruf kapital dan hanya memengaruhi penampilan condition di Firebase console.

Operator yang didukung

Misalnya, app.version.notContains([123, 456]) menampilkan TRUE jika versi aplikasi sebenarnya adalah 123 atau 492, tetapi menampilkan FALSE jika versi aplikasi sebenarnya adalah 999.
Elemen Operator yang didukung Deskripsi
app.audiences .inAtLeastOne([...]) Mengembalikan TRUE jika audience yang sebenarnya cocok dengan setidaknya 1 nama audience di dalam daftar.
Misalnya:


app.audiences.inAtLeastOne(['Audience 1', 'Audience 2'])

app.audiences .notInAtLeastOne([...]) Mengembalikan TRUE jika audience yang sebenarnya tidak cocok dengan satu pun nama audience di dalam daftar.
app.audiences .inAll([...]) Mengembalikan TRUE jika audience yang sebenarnya adalah anggota dari setiap nama audience di dalam daftar.
app.audiences .notInAll([...]) Mengembalikan TRUE jika audience yang sebenarnya bukanlah anggota audience mana pun di dalam daftar.
app.userProperty <, <=, ==, >=, > Menampilkan TRUE jika properti pengguna sebenarnya cocok secara numerik dengan perbandingan yang ditentukan operator.
app.userProperty .contains([...]) Menampilkan TRUE jika salah satu dari nilai target adalah substring dari properti pengguna sebenarnya.
app.userProperty .notContains([...]) Menampilkan TRUE jika tidak satu pun dari nilai target yang merupakan substring dari properti pengguna sebenarnya.
app.userProperty .exactlyMatches([...]) Menampilkan TRUE jika properti pengguna sebenarnya sama persis (peka huruf besar-kecil) dengan sembarang nilai target dalam daftar.
app.userProperty .matches([...]) Menampilkan TRUE jika sembarang ekspresi reguler target dalam daftar cocok dengan substring atau keseluruhan nilai sebenarnya. Untuk memaksa pencocokan seluruh string, tuliskan awalan "^" dan beri akhiran "$". Menggunakan sintaks RE2.
app.id == Menampilkan TRUE jika nilai yang ditentukan sesuai dengan ID Aplikasi dari aplikasi.
app.version .contains([...]) MenampilkanTRUE jika salah satu nilai target adalah substring dari versi aplikasi sebenarnya — misalnya, "a" dan "bc" adalah substring dari "abc".
app.version .notContains([...]) Menampilkan TRUE jika tidak ada satu pun dari nilai target yang merupakan substring dari versi aplikasi sebenarnya.
app.version .exactlyMatches([...]) Menampilkan TRUE jika versi aplikasi sebenarnya sama persis dengan sembarang nilai target dalam daftar.
app.version .matches([...]) Menampilkan TRUE jika sembarang ekspresi reguler target dalam daftar cocok dengan substring atau keseluruhan nilai sebenarnya. Untuk memaksakan pencocokan seluruh string, tuliskan ekspresi reguler dengan awalan "^" dan akhiran "$". Menggunakan sintaks RE2.
device.country in [...] Menampilkan TRUE jika negara perangkat (ditentukan menggunakan alamat IP perangkat saat ini di Android, atau properti countryCode di iOS) cocok dengan nilai yang ditentukan dalam daftar. Contoh penggunaan: device.country in ['gb', 'us'].
device.dateTime <=, > Membandingkan waktu saat ini dengan waktu target kondisi dan mengevaluasi ke TRUE atau FALSE berdasarkan operator. Contoh penggunaan: dateTime < dateTime('2017-03-22T13:39:44').
device.language in [...] Menampilkan TRUE jika ada bahasa aplikasi yang cocok dengan bahasa dalam daftar. Contoh penggunaan: device.language in ['en-UK', 'en-US'].
device.os ==, != Mengembalikan TRUE jika sistem operasi perangkat dan nilai pada kolom memiliki perbandingan yang sesuai dengan operator.
percent <=, > Mengembalikan TRUE jika nilai di kolom percent dibandingkan dengan nilai yang diberikan secara acak cocok dengan operator.
app.predictions .inAtLeastOne([...]) Mengembalikan TRUE jika ID profil risiko prediksi target yang disebutkan telah diprediksi. Saat ini, kondisi ini hanya mendukung penargetan satu ID profil risiko prediksi. Contoh penggunaan: app.predictions.inAtLeastOne(['pred']) ; mengembalikan TRUE jika 'pred' diprediksi.

Parameter dengan string kosong dan tidak ada nilai

Saat Anda membuat atau mengedit parameter value di console web Remote Config, Anda memiliki opsi untuk menetapkan parameter value ke nilai string, (string kosong), atau Tidak ada nilai (hal ini membuat nilai yang digunakan adalah nilai default dalam aplikasi, bukan nilai dalam template Remote Config).

Saat Anda menggunakan API Remote Config untuk mendapatkan template Remote Config untuk project dalam format JSON, Tidak ada nilai akan ditunjukkan seperti gambar di bawah ini:

"myCondition" : {
  "useInAppDefault" : true
},

Demikian pula, (string kosong) akan ditunjukkan seperti di bawah ini:

"myCondition" : {
  "value" : ""
},

Kirim masukan tentang...

Butuh bantuan? Kunjungi halaman dukungan kami.