Halaman ini berisi informasi referensi untuk membuat ekspresi kondisional menggunakan API backend Remote Config atau Firebase console. Untuk mengetahui informasi selengkapnya tentang cara menyiapkan dan menggunakan API backend, lihat Mengubah Remote Config secara terprogram.
Elemen yang digunakan untuk membuat kondisi
Remote Config REST API mendukung elemen yang sama dengan yang dapat Anda gunakan untuk membuat kondisi saat mengonfigurasi Remote Config menggunakan Firebase Console:
Elemen | Deskripsi |
---|---|
&& |
Digunakan untuk membuat elemen logika "and" jika menggunakan lebih dari satu elemen untuk sebuah kondisi. Jika sebuah elemen digunakan dalam sintaks REST tanpa
Catatan: sebuah spasi perlu diselipkan ke sebelum dan sesudah ampersand. Contoh:
|
app.build |
Bernilai Catatan: Hanya tersedia di perangkat Apple dan Android. Untuk Apple, gunakan nilai CFBundleVersion dan untuk Android, gunakan nilai versionCode. |
app.version |
Bernilai Catatan: Untuk perangkat Android, gunakan nilai versionName, dan untuk perangkat Apple, gunakan nilai CFBundleShortVersionString. |
app.id |
Elemen yang didasarkan pada Firebase App ID aplikasi |
app.audiences |
Elemen yang bernilai TRUE atau FALSE berdasarkan
kehadiran atau ketidakhadiran pengguna pada satu atau beberapa
audience Firebase Analytics. |
app.firstOpenTimestamp |
Elemen yang didasarkan pada kali pertama pengguna membuka aplikasi, yang diperoleh dari
peristiwa first_open Google Analytics. Elemen ini menggunakan
format tanggal ISO dengan opsi untuk menentukan zona waktu tetap; misalnya,
app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') .
Jika zona waktu tidak ditentukan, GMT akan digunakan.
|
app.userProperty |
Elemen yang bernilai TRUE atau FALSE berdasarkan
nilai numerik atau string dari
Properti Pengguna Firebase Analytics. |
app.operatingSystemAndVersion |
Elemen yang didasarkan pada sistem operasi tempat aplikasi berjalan.
Bernilai Catatan: Hanya tersedia untuk aplikasi Web. |
app.browserAndVersion |
Elemen yang didasarkan pada browser tempat aplikasi berjalan.
Bernilai Catatan: Hanya tersedia untuk aplikasi Web. |
app.firebaseInstallationId |
Elemen yang didasarkan pada ID penginstalan perangkat tertentu.
Bernilai TRUE jika ID penginstalan
cocok dengan salah satu ID penginstalan yang ditentukan. |
device.country |
Elemen yang didasarkan pada wilayah/negara tempat perangkat berada, dengan menggunakan
standar ISO 3166-1 alpha-2 (misalnya, US atau UK). Bernilai
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
direpresentasikan dengan tag Bahasa IETF seperti es-ES, pt-BR, atau en-US.
Bernilai TRUE ketika sebuah bahasa cocok dengan kode bahasa yang diharapkan. |
device.os |
Elemen yang didasarkan pada sistem operasi yang digunakan pada perangkat (Apple atau Android).
Bernilai TRUE ketika jenis OS perangkat sesuai dengan yang diharapkan. |
percent |
Bernilai TRUE berdasarkan keikutsertaan pengguna dalam persentase fraksional
yang ditetapkan secara acak (dengan ukuran sampel hingga sekecil 0,000001%). |
Suatu kondisi berelemen tunggal terdiri dari tiga kolom:
name
yang bisa ditetapkan secara sembarang (maksimal 100 karakter)- Ekspresi kondisional yang bernilai
TRUE
atauFALSE
, terdiri dari elemen yang ditunjukkan di atas. - (Opsional)
tagColor
, yang dapat berupa "BLUE
", "BROWN
", "CYAN
", "DEEP_ORANGE
", "GREEN
", "INDIGO
", "LIME
", "ORANGE
", "PINK
", "PURPLE
", atau "TEAL
". Nama warna tidak peka huruf besar/kecil dan hanya memengaruhi tampilan kondisi di Firebase console.
Operator yang didukung
Misalnya,app.build.notContains([123, 456])
menampilkan TRUE
jika
build aplikasi sebenarnya adalah 123 atau 492, tetapi akan menampilkan FALSE
jika
build aplikasi sebenarnya adalah 999.
Misalnya,
app.version.notContains([123, 456])
menampilkan TRUE
jika
versi aplikasi sebenarnya adalah 123 atau 492, tetapi akan menampilkan FALSE
jika
versi aplikasi sebenarnya adalah 999.
Elemen | Operator yang didukung | Deskripsi |
---|---|---|
app.audiences |
.inAtLeastOne([...]) |
Menampilkan TRUE jika audience sebenarnya cocok dengan minimal satu nama audience dalam daftar.Contoh: app.audiences.inAtLeastOne(['Audience 1', 'Audience 2']) |
app.audiences |
.notInAtLeastOne([...]) |
Menampilkan TRUE jika audience sebenarnya tidak cocok dengan satu pun nama audience dalam daftar. |
app.audiences |
.inAll([...]) |
Menampilkan TRUE jika audience sebenarnya adalah anggota dari setiap nama audience dalam daftar. |
app.audiences |
.notInAll([...]) |
Menampilkan TRUE jika audience sebenarnya bukanlah anggota audience
mana pun dalam daftar. |
app.firstOpenTimestamp |
<=, > |
Membandingkan waktu peristiwa first_open dengan waktu
yang ditentukan dalam kondisi dan menampilkan TRUE atau FALSE
berdasarkan operator.Contoh penggunaan: 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 zona waktu tidak ditentukan, GMT akan digunakan.
|
app.userProperty |
< , <= , == , != ,
>= , > |
Menampilkan TRUE jika properti pengguna sebenarnya cocok secara numerik dengan
nilai yang ditentukan agar sama dengan 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 merupakan substring dari
properti pengguna sebenarnya. |
app.userProperty |
.exactlyMatches([...]) |
Menampilkan TRUE jika properti pengguna sebenarnya sama persis
(peka huruf besar/kecil) dengan nilai target mana pun di dalam daftar. |
app.userProperty |
.matches([...]) |
Menampilkan TRUE jika ada ekspresi reguler target mana pun
di dalam daftar yang cocok dengan substring dari, atau
keseluruhan, nilai sebenarnya. Untuk memaksakan pencocokan seluruh string,
tuliskan ekspresi reguler dengan awalan "^" dan akhiran "$". Menggunakan
sintaks RE2. |
app.id |
== |
Menampilkan TRUE jika nilai yang ditentukan sesuai dengan ID Aplikasi dari aplikasi. |
app.build |
< , <= , == , != ,
>= , > |
Menampilkan TRUE jika build aplikasi sebenarnya cocok secara numerik
dengan nilai yang ditentukan agar sama dengan operator. |
app.build |
.contains([...]) |
Menampilkan TRUE jika salah satu nilai target adalah substring dari
build aplikasi yang sebenarnya, misalnya "a" dan "bc" adalah substring dari
"abc". |
app.build |
.notContains([...]) |
Menampilkan TRUE jika tidak ada satu pun dari nilai target yang merupakan substring dari
build aplikasi sebenarnya. |
app.build |
.exactlyMatches([...]) |
Menampilkan TRUE jika build aplikasi sebenarnya sama persis dengan
nilai target mana pun di dalam daftar. |
app.build |
.matches([...]) |
Menampilkan TRUE jika ada ekspresi reguler target mana pun
di dalam daftar yang cocok dengan substring dari, atau keseluruhan, nilai sebenarnya. Untuk memaksakan pencocokan
seluruh string, tuliskan ekspresi reguler dengan awalan "^" dan
akhiran "$". Menggunakan
sintaksis RE2. |
app.version |
< , <= , == , != ,
>= , > |
Menampilkan TRUE jika versi aplikasi sebenarnya cocok secara numerik
dengan nilai yang ditentukan agar sama dengan operator. |
app.version |
.contains([...]) |
Menampilkan TRUE 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 nilai target
mana pun di dalam daftar. |
app.version |
.matches([...]) |
Menampilkan TRUE jika ada ekspresi reguler target mana pun
di dalam daftar yang cocok dengan substring dari, atau keseluruhan, nilai sebenarnya. Untuk memaksakan pencocokan
seluruh string, tuliskan ekspresi reguler dengan awalan "^" dan
akhiran "$". Menggunakan
sintaksis RE2. |
app.operatingSystemAndVersion |
.inOne([...]) |
Menampilkan TRUE jika OS dan versinya cocok dengan nilai target
mana pun di dalam daftar.Contoh: app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')]) |
app.browserAndVersion |
.inOne([...]) |
Menampilkan TRUE jika browser dan versinya cocok dengan nilai target
mana pun di dalam daftar.Contoh: app.browserAndVersion.inOne([browserName('Chrome').anyVersion]) |
app.firebaseInstallationId |
in [...] |
Menampilkan TRUE jika id penginstalan
cocok dengan yang ditentukan dalam daftar. Contoh penggunaan: app.firebaseInstallationId
in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7'] |
device.country |
in [...] |
Menampilkan 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 kepada Firebase). |
device.dateTime |
<= , > |
Membandingkan waktu saat ini
dengan waktu target kondisi dan bernilai 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 |
== , != |
Menampilkan TRUE jika sistem operasi pada perangkat dan nilai pada kolom
memiliki perbandingan yang sesuai dengan operator. |
percent |
<= , > , between |
Menampilkan TRUE jika nilai dalam kolom percent
setara dengan nilai yang ditetapkan secara acak, yang cocok dengan operator.
Anda dapat menentukan seed untuk memilih grup baru yang ditetapkan secara acak dari instance aplikasi untuk rentang persentase tertentu seperti yang dijelaskan dalam Jenis aturan kondisi. Untuk melakukan ini, tuliskan nama seed sebelum operator, seperti pada contoh berikut: percent('keyName') <= 10 Untuk mengonfigurasi rentang tertentu, Anda dapat menggunakan operator
percent between 20 and 60 Untuk mengonfigurasi rentang pengguna antara 60 dan 80 tahun yang menggunakan seed khusus: percent('seedName') between 60 and 80 |