Ta strona zawiera informacje referencyjne na temat tworzenia używające interfejsów API backendu Remote Config lub konsoli Firebase. Dla: więcej informacji o konfigurowaniu i używaniu backendowych interfejsów API znajdziesz w artykule Zdalna konfiguracja modyfikuje się automatycznie.
Elementy używane do tworzenia warunków
Interfejs API typu REST Remote Config obsługuje te same elementy, których możesz używać do utwórz warunki podczas konfigurowania Remote Config za pomocą Konsola Firebase:
Element | Opis |
---|---|
&& |
Służy do tworzenia logicznego „i” dla elementów, jeśli w warunku występuje więcej niż 1 element. Jeśli element jest używany w składni REST bez parametru Uwaga: przed i za symbolem „&” musi być spacja. Na przykład:
|
app.build |
Zwraca wartość Uwaga: ta funkcja jest dostępna tylko na urządzeniach Apple i z Androidem. W przypadku Apple użyj wartości CFBundleVersion, a w przypadku Androida – wartości versionCode. |
app.version |
Wynik funkcji to Uwaga: w przypadku urządzeń z Androidem użyj wartości versionName, Na urządzeniach Apple użyj wartości CFBundleShortVersionString. |
app.id |
Element utworzony na podstawie identyfikatora aplikacji w Firebase |
app.audiences |
Element, który przyjmuje wartość TRUE lub FALSE na podstawie
na obecność lub nieobecność użytkownika w co najmniej jednym
Listy odbiorców Firebase Analytics. |
app.firstOpenTimestamp |
Element określający, czy użytkownik uruchomił aplikację po raz pierwszy. Dane pochodzą ze zdarzenia Google Analytics first_open . Używa daty ISO
z opcją określenia stałej strefy czasowej, np.
app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles')
Jeśli nie podasz strefy czasowej, zostanie zastosowany czas GMT.
|
app.userProperty |
Element, który zwraca wartość TRUE lub FALSE w zależności od wartości liczbowej lub ciągu znaków właściwości użytkownika w Analytics dla Firebase. |
app.operatingSystemAndVersion |
Element oparty na systemie operacyjnym, w którym działa aplikacja.
Zwraca wartość Uwaga: ta opcja jest dostępna tylko w przypadku aplikacji internetowych. |
app.browserAndVersion |
Element zależny od przeglądarki, w której działa aplikacja.
Ocenia wartość Uwaga: ta opcja jest dostępna tylko w przypadku aplikacji internetowych. |
app.firebaseInstallationId |
Element oparty na identyfikatorach konkretnych instalacji na urządzeniach.
Ta funkcja zwraca wartość TRUE , gdy identyfikator instalacji jest zgodny z jednym ze wskazanych identyfikatorów instalacji. |
device.country |
element oparty na regionie/kraju, w którym znajduje się urządzenie, wykorzystujący
standardu ISO 3166-1 alfa-2 (np. Stany Zjednoczone lub Wielka Brytania). Zwraca wartość
TRUE , gdy kraj jest zgodny z oczekiwanym kodem kraju. |
device.dateTime |
Element określany na podstawie czasu ostatniego pobrania wykonywanego przez urządzenie.
Używa formatu daty ISO z opcją , aby określić stałą strefę czasową, na przykład dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') . |
device.language |
Element na podstawie języka wybranego na urządzeniu. Język jest reprezentowany za pomocą tagu języka IETF, np. es-ES, pt-BR lub en-US.
Zwraca wartość TRUE , gdy język jest zgodny z oczekiwanym językiem
w kodzie. |
device.os |
Element oparty na systemie operacyjnym używanym na urządzeniu (Apple lub Android).
Zwraca wartość TRUE , gdy system operacyjny urządzenia jest oczekiwanym typem. |
percent |
Funkcja TRUE jest obliczana na podstawie przypisania losowego ułamka procentowego (z wielkościami próby wynoszącymi nawet 0,000001%), w którym uczestniczy użytkownik. |
Warunek jednoelementowy zawiera trzy pola:
- dowolnie zdefiniowany
name
(maksymalnie 100 znaków) - wyrażenie warunkowe o wartości
TRUE
lubFALSE
, złożone z elementów wymienionych powyżej; - (Opcjonalnie)
tagColor
, który może mieć wartość „BLUE
”, „BROWN
”, „CYAN
”, „DEEP_ORANGE
”, „GREEN
”, „INDIGO
”, „LIME
”, „ORANGE
”, „PINK
”, „PURPLE
” lub „TEAL
”. Kolor jest nieistotny i wpływa tylko na sposób wyświetlania warunków w konsoli Firebase.
Obsługiwane operatory
Na przykład:app.build.notContains([123, 456])
zwraca TRUE
, jeśli rzeczywista wersja aplikacji to 123 lub 492, ale zwraca FALSE
, jeśli rzeczywista wersja aplikacji to 999.
Na przykład:
app.version.notContains([123, 456])
zwraca TRUE
, jeśli rzeczywista wersja aplikacji to 123 lub 492, ale zwraca FALSE
, jeśli rzeczywista wersja aplikacji to 999.
Element | Obsługiwani operatorzy | Opis |
---|---|---|
app.audiences |
.inAtLeastOne([...]) |
Zwraca wartość TRUE , jeśli rzeczywista lista odbiorców zawiera co najmniej 1 nazwę listy odbiorców na liście.Na przykład: app.audiences.inAtLeastOne(['Audience 1', 'Audience 2']) |
app.audiences |
.notInAtLeastOne([...]) |
Zwraca wartość TRUE , jeśli rzeczywisty odbiorca nie pasuje do co najmniej jednej nazwy odbiorcy na liście. |
app.audiences |
.inAll([...]) |
Zwraca TRUE , jeśli rzeczywista lista odbiorców zawiera wszystkie nazwy list odbiorców na liście. |
app.audiences |
.notInAll([...]) |
Zwraca wartość TRUE , jeśli rzeczywista lista odbiorców nie należy do żadnej z nich
z listy odbiorców. |
app.firstOpenTimestamp |
<=, > |
Porównuje czas zdarzenia first_open z określonym
czas w warunku i zwraca TRUE lub FALSE
w zależności od operatora.Przykładowe zastosowanie: app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles')
Aby określić zakres: app.firstOpenTimestamp >= ('2022-11-01T00:00:00') && app.firstOpenTimestamp < ('2022-12-01T00:00:00')
Jeśli nie podasz strefy czasowej, zostanie zastosowany czas GMT.
|
app.userProperty |
< , <= , == , != , >= , > |
Zwraca wartość TRUE , jeśli rzeczywista właściwość użytkownika jest porównywana numerycznie do wartości określonej w sposób zgodny z operatorem. |
app.userProperty |
.contains([...]) |
Zwraca TRUE , jeśli dowolna z wartości docelowych jest podłańcuchem
do rzeczywistej właściwości użytkownika. |
app.userProperty |
.notContains([...]) |
Zwraca TRUE , jeśli żadna z wartości docelowych nie jest podłańcuchem
do rzeczywistej właściwości użytkownika. |
app.userProperty |
.exactlyMatches([...]) |
Zwraca wartość TRUE , jeśli rzeczywista właściwość użytkownika dokładnie odpowiada
(z uwzględnieniem wielkości liter) dowolnej wartości docelowej z listy. |
app.userProperty |
.matches([...]) |
Zwraca TRUE , jeśli dowolne docelowe wyrażenie regularne w funkcji
lista pasuje do podłańcucha lub
całą, rzeczywistą wartość. Aby wymusić dopasowanie całego ciągu,
na początku wyrażenia regularnego wpisz „^” i dodaj do niego „$”. Zastosowania
RE2. |
app.id |
== |
Zwraca TRUE , jeśli podana wartość pasuje do identyfikatora aplikacji. |
app.build |
< , <= , == , != , >= , > |
Zwraca wartość TRUE , jeśli numeryczna wersja kompilacji aplikacji jest porównywana do wartości określonej w sposób pasujący do operatora. |
app.build |
.contains([...]) |
Zwraca TRUE , jeśli dowolna z wartości docelowych jest podciągiem ciągu znaków w rzeczywistym kompilacji aplikacji – np. „a” i „bc” są podciągiem ciągu znaków w „abc”. |
app.build |
.notContains([...]) |
Zwraca TRUE , jeśli żadna z wartości docelowych nie jest podciągiem ciągu znaków rzeczywistej wersji aplikacji. |
app.build |
.exactlyMatches([...]) |
Zwraca wartość TRUE , jeśli rzeczywista kompilacja aplikacji dokładnie pasuje
dowolną wartość docelową z listy. |
app.build |
.matches([...]) |
Zwraca TRUE , jeśli dowolne docelowe wyrażenie regularne na liście
pasuje do podciągu znaków lub całej wartości. Aby wymusić dopasowanie
całego ciągu, poprzedź wyrażenie regularne znakiem „^” i przypisać go do jego przyrostka
znakiem „$”. Wykorzystuje
Składnia RE2. |
app.version |
< , <= , == , != ,
>= , > |
Zwraca wartość TRUE , jeśli rzeczywista wersja aplikacji jest porównywana numerycznie
do wartości określonej w sposób pasujący do operatora. |
app.version |
.contains([...]) |
Zwraca TRUE , jeśli którakolwiek z wartości docelowych jest podciągiem znaków rzeczywistej wersji aplikacji. Na przykład „a” i „bc” są podciągiem znaków ciągu „abc”. |
app.version |
.notContains([...]) |
Zwraca wartość TRUE , jeśli żadna z wartości docelowych nie jest podciągiem ciągu znaków rzeczywistej wersji aplikacji. |
app.version |
.exactlyMatches([...]) |
Zwraca wartość TRUE , jeśli rzeczywista wersja aplikacji jest dokładnie taka sama
dowolną wartość docelową z listy. |
app.version |
.matches([...]) |
Zwraca TRUE , jeśli dowolne docelowe wyrażenie regularne w funkcji
lista pasuje do podłańcucha lub całej, rzeczywistej wartości. Aby wymusić dopasowanie
całego ciągu, poprzedź wyrażenie regularne znakiem „^” i przypisać go do jego przyrostka
znakiem „$”. Wykorzystuje
Składnia RE2. |
app.operatingSystemAndVersion |
.inOne([...]) |
Zwraca wartość TRUE , jeśli system operacyjny i wersja są zgodne dowolne z
wartości docelowe z listy.Przykład: app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')]) |
app.browserAndVersion |
.inOne([...]) |
Zwraca wartość TRUE , jeśli przeglądarka i jej wersja są zgodne z dowolną z wartości docelowych na liście.Przykład: app.browserAndVersion.inOne([browserName('Chrome').anyVersion]) |
app.firebaseInstallationId |
in [...] |
Zwraca wartość TRUE , jeśli identyfikator instalacji
pasuje do dowolnych na liście. Przykładowe użycie: app.firebaseInstallationId
in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7'] |
device.country |
in [...] |
Zwraca wartość TRUE , jeśli kraj urządzenia
pasuje do dowolnych na liście. Przykładowe zastosowanie: device.country in
['gb', 'us'] .
Kod kraju urządzenia jest określany na podstawie
adresu IP urządzenia wskazanego w żądaniu lub kodu kraju określonego przez Firebase.
Analytics (jeśli dane Analytics są udostępniane Firebase). |
device.dateTime |
<= , > |
Porównuje bieżącą godzinę
do czasu docelowego warunku i przyjmuje wartość TRUE lub
FALSE w zależności od operatora. Przykładowe zastosowanie:
dateTime < dateTime('2017-03-22T13:39:44') |
device.language |
in [...] |
Zwraca wartość TRUE , jeśli dowolny język aplikacji jest zgodny z językiem
z listy. Przykładowe zastosowanie: device.language in ['en-UK', 'en-US'] . |
device.os |
== , != |
Zwraca wartość TRUE , jeśli system operacyjny urządzenia porównuje wyniki
do wartości w tym polu zgodnej z operatorem. |
percent |
<= , > , between |
Zwraca TRUE , jeśli wartość w polu percent
porównuje wartość, która została losowo przypisana do operatora.
Możesz podać wartość początkową, aby wybrać nową losowo przypisaną grupę instancji aplikacji dla danego zakresu procentowego, jak opisano w sekcji Typy reguł warunków. Aby to zrobić, przed operatorem podaj nazwę nasienia, jak w tym przykładzie: percent('keyName') <= 10 Aby skonfigurować określony zakres, możesz użyć operatora percent between 20 and 60 Aby skonfigurować zakres użytkowników od 60 do 80 za pomocą niestandardowego obiektu wyjściowego: percent('seedName') between 60 and 80 |