Halaman ini berisi informasi referensi untuk membuat ekspresi bersyarat menggunakan API backend Remote Config atau konsol Firebase. Untuk informasi selengkapnya tentang penyiapan dan penggunaan API backend, lihat Memodifikasi Remote Config secara terprogram .
Elemen yang digunakan untuk membuat kondisi
REST API Remote Config mendukung elemen yang sama yang dapat Anda gunakan untuk membuat kondisi saat mengonfigurasi Remote Config menggunakan Firebase Console:
Elemen | Keterangan |
---|---|
&& | Digunakan untuk membuat elemen "dan" yang logis jika menggunakan lebih dari satu elemen untuk suatu kondisi. Jika suatu elemen digunakan dalam sintaks REST tanpa Catatan: diperlukan spasi sebelum dan sesudah ampersand. Misalnya: |
app.build | Mengevaluasi ke Catatan: Hanya tersedia di perangkat Apple dan Android. Untuk Apple, gunakan nilai CFBundleVersion dan untuk Android, gunakan nilai versionCode . |
app.version | Dinilai Catatan: Untuk perangkat Android gunakan nilai versionName , dan untuk perangkat Apple gunakan nilai CFBundleShortVersionString . |
app.id | Elemen berdasarkan ID Aplikasi Firebase aplikasi |
app.audiences | Elemen yang dinilai TRUE atau FALSE berdasarkan ada tidaknya pengguna di satu atau beberapa audiens Firebase Analytics . |
app.firstOpenTimestamp | Elemen berdasarkan saat pertama kali pengguna meluncurkan aplikasi, diperoleh dari peristiwa first_open Google Analytics. Menggunakan format tanggal ISO dengan opsi untuk menentukan zona waktu tetap; misalnya, app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') . Jika tidak ada zona waktu yang ditentukan, GMT akan digunakan. |
app.userProperty | Elemen yang dievaluasi menjadi TRUE atau FALSE berdasarkan nilai numerik atau string dari Properti Pengguna Firebase Analytics . |
app.operatingSystemAndVersion | Elemen yang didasarkan pada sistem operasi tempat aplikasi berjalan. Catatan: Hanya tersedia untuk aplikasi Web. |
app.browserAndVersion | Elemen berdasarkan browser tempat aplikasi berjalan. Dinilai Catatan: Hanya tersedia untuk aplikasi Web. |
app.firebaseInstallationId | Elemen berdasarkan ID pemasangan perangkat tertentu. TRUE ketika ID penginstalan cocok dengan salah satu ID penginstalan yang ditentukan. |
device.country | Elemen berdasarkan kawasan/negara tempat perangkat berada, menggunakan standar ISO 3166-1 alpha-2 (misalnya, AS atau Inggris Raya). TRUE ketika sebuah negara cocok dengan kode negara yang diharapkan. |
device.dateTime | Elemen berdasarkan waktu pengambilan terakhir yang dilakukan perangkat. Menggunakan format tanggal ISO dengan opsi untuk menentukan zona waktu tetap; misalnya, dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') . |
device.language | Elemen berdasarkan bahasa yang dipilih pada perangkat. Bahasa diwakili menggunakan tag Bahasa IETF seperti es-ES, pt-BR, atau en-US. Mengevaluasi menjadi TRUE ketika bahasa cocok dengan kode bahasa yang diharapkan. |
device.os | Elemen berdasarkan sistem operasi yang digunakan pada perangkat (Apple atau Android). TRUE ketika OS perangkat adalah tipe yang diharapkan. |
percent | Dievaluasi menjadi TRUE berdasarkan penyertaan pengguna dalam persentase fraksional yang ditetapkan secara acak (dengan ukuran sampel sekecil 0,000001%). |
Kondisi elemen tunggal berisi tiga bidang:
-
name
yang ditentukan secara sewenang-wenang (hingga 100 karakter) - Ekspresi bersyarat yang bernilai
TRUE
atauFALSE
, terdiri dari elemen yang ditunjukkan di atas. - (Opsional)
tagColor
, yang dapat berupa "BLUE
", "BROWN
", "DEEP_ORANGE
CYAN
, "GREEN
", "INDIGO
", "LIME
", "ORANGE
", "PINK
", "PURPLE
", atau "TEAL
". Warna tidak peka huruf besar/kecil, dan hanya memengaruhi cara kondisi ditampilkan di Firebase console.
Operator yang didukung
Elemen | Operator yang didukung | Keterangan |
---|---|---|
app.audiences | .inAtLeastOne([...]) | Mengembalikan TRUE jika audiens sebenarnya cocok dengan setidaknya satu nama audiens dalam daftar.Sebagai contoh: app.audiences.inAtLeastOne(['Audience 1', 'Audience 2']) |
app.audiences | .notInAtLeastOne([...]) | Mengembalikan TRUE jika audiens sebenarnya tidak cocok dengan setidaknya satu nama audiens dalam daftar. |
app.audiences | .inAll([...]) | Mengembalikan TRUE jika audiens yang sebenarnya adalah anggota dari setiap nama audiens dalam daftar. |
app.audiences | .notInAll([...]) | Mengembalikan TRUE jika audiens yang sebenarnya bukan anggota audiens mana pun dalam daftar. |
app.firstOpenTimestamp | <=, > | Membandingkan waktu kejadian first_open dengan waktu yang ditentukan dalam kondisi dan mengembalikan TRUE atau FALSE berdasarkan operator.Penggunaan sampel: app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') .Untuk menentukan rentang: app.firstOpenTimestamp >= ('2022-11-01T00:00:00') && app.firstOpenTimestamp < ('2022-12-01T00:00:00') Jika tidak ada zona waktu yang ditentukan, GMT digunakan. |
app.userProperty | < , <= , == , != , >= , > | Mengembalikan TRUE jika properti pengguna sebenarnya secara numerik dibandingkan dengan nilai yang ditentukan dengan cara yang sesuai dengan operator. |
app.userProperty | .contains([...]) | Mengembalikan TRUE jika salah satu nilai target adalah substring dari properti pengguna yang sebenarnya. |
app.userProperty | .notContains([...]) | Mengembalikan TRUE jika tidak ada nilai target yang merupakan substring dari properti pengguna yang sebenarnya. |
app.userProperty | .exactlyMatches([...]) | Mengembalikan TRUE jika properti pengguna sebenarnya sama persis (peka huruf besar/kecil) salah satu nilai target dalam daftar. |
app.userProperty | .matches([...]) | Mengembalikan TRUE jika ekspresi reguler target apa pun dalam daftar cocok dengan substring, atau keseluruhan, nilai aktual. Untuk memaksakan pencocokan seluruh string, awali ekspresi reguler dengan "^" dan akhiri dengan "$". Menggunakan sintaks RE2 . |
app.id | == | Mengembalikan TRUE jika nilai yang ditentukan cocok dengan ID Aplikasi aplikasi. |
app.build | < , <= , == , != , >= , > | Mengembalikan TRUE jika build aplikasi sebenarnya secara numerik dibandingkan dengan nilai yang ditentukan dengan cara yang cocok dengan operator. |
app.build | .contains([...]) | Mengembalikan TRUE jika salah satu nilai target adalah substring dari build aplikasi yang sebenarnya—misalnya, "a" dan "bc" adalah substring dari "abc". |
app.build | .notContains([...]) | Mengembalikan TRUE jika tidak ada nilai target yang merupakan substring dari build aplikasi yang sebenarnya. | Misalnya, app.build | .exactlyMatches([...]) | Mengembalikan TRUE jika build aplikasi sebenarnya sama persis dengan salah satu nilai target dalam daftar. |
app.build | .matches([...]) | Mengembalikan TRUE jika ekspresi reguler target apa pun dalam daftar cocok dengan substring, atau keseluruhan, nilai aktual. Untuk memaksakan pencocokan seluruh string, awali ekspresi reguler dengan "^" dan akhiri dengan "$". Menggunakan sintaks RE2 . |
app.version | < , <= , == , != , >= , > | Mengembalikan TRUE jika versi aplikasi sebenarnya secara numerik dibandingkan dengan nilai yang ditentukan dengan cara yang sesuai dengan operator. |
app.version | .contains([...]) | Mengembalikan TRUE jika salah satu nilai target adalah substring dari versi aplikasi sebenarnya—misalnya, "a" dan "bc" adalah substring dari "abc". |
app.version | .notContains([...]) | Mengembalikan TRUE jika tidak ada nilai target yang merupakan substring dari versi aplikasi sebenarnya. | Misalnya,
app.version | .exactlyMatches([...]) | Mengembalikan TRUE jika versi aplikasi sebenarnya sama persis dengan salah satu nilai target dalam daftar. |
app.version | .matches([...]) | Mengembalikan TRUE jika ekspresi reguler target apa pun dalam daftar cocok dengan substring, atau keseluruhan, nilai aktual. Untuk memaksakan pencocokan seluruh string, awali ekspresi reguler dengan "^" dan akhiri dengan "$". Menggunakan sintaks RE2 . |
app.operatingSystemAndVersion | .inOne([...]) | Mengembalikan TRUE jika OS dan versi cocok dengan salah satu nilai target dalam daftar.Sebagai contoh: app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')]) |
app.browserAndVersion | .inOne([...]) | Mengembalikan TRUE jika browser dan versi cocok dengan salah satu nilai target dalam daftar.Sebagai contoh: app.browserAndVersion.inOne([browserName('Chrome').anyVersion]) |
app.firebaseInstallationId | in [...] | Mengembalikan TRUE jika id instalasi cocok dengan yang ditentukan dalam daftar. Contoh penggunaan: app.firebaseInstallationId in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7'] |
device.country | in [...] | Mengembalikan TRUE jika negara perangkat cocok dengan yang ditentukan dalam daftar. Contoh penggunaan: device.country in ['gb', 'us'] . Kode negara perangkat ditentukan menggunakan alamat IP perangkat dalam permintaan atau kode negara yang ditentukan oleh Firebase Analytics (jika data Analytics dibagikan dengan Firebase). |
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 [...] | Mengembalikan TRUE jika salah satu bahasa aplikasi cocok dengan bahasa dalam daftar. Contoh penggunaan: device.language in ['en-UK', 'en-US'] . |
device.os | == , != | Mengembalikan TRUE jika sistem operasi perangkat dibandingkan dengan nilai dalam bidang yang cocok dengan operator. |
percent | <= , > | Mengembalikan TRUE jika nilai dalam bidang percent dibandingkan dengan nilai yang ditetapkan secara acak cocok dengan operator. |