Bedingter Ausdrucksverweis für Remote Config

Diese Seite enthält Referenzinformationen zum Erstellen bedingter Ausdrücke mit Remote Config-Back-End-APIs oder der Firebase-Konsole. Weitere Informationen zum Einrichten und Verwenden der Back-End-APIs finden Sie unter Modify Remote Config programmatically .

Elemente zum Erstellen von Bedingungen

Die Remote Config-REST-API unterstützt dieselben Elemente, die Sie zum Erstellen von Bedingungen verwenden können, wenn Sie Remote Config mit der Firebase-Konsole konfigurieren:

Element Beschreibung
&&

Wird verwendet, um ein logisches „und“ von Elementen zu erstellen, wenn mehr als ein Element für eine Bedingung verwendet wird. Wenn ein Element in der REST-Syntax ohne && verwendet wird, wird dieses Element als Bedingung behandelt.

Hinweis: Vor und nach dem kaufmännischen Und ist ein Leerzeichen erforderlich. Beispiel: element1 && element2 .

app.build

Wird basierend auf dem Wert der Build-Nummer einer App als TRUE oder FALSE .

Hinweis: Nur auf Apple- und Android-Geräten verfügbar. Verwenden Sie für Apple den Wert von CFBundleVersion und für Android den Wert von versionCode .

app.version

Wird basierend auf dem Wert der Versionsnummer einer App als TRUE oder FALSE .

Hinweis: Verwenden Sie für Android-Geräte den Wert von versionName und für Apple-Geräte den Wert von CFBundleShortVersionString .

app.id Ein Element, das auf der Firebase-App-ID der App basiert
app.audiences Ein Element, das basierend auf der Anwesenheit oder Abwesenheit des Benutzers in einer oder mehreren Firebase Analytics-Zielgruppen als TRUE oder FALSE bewertet wird.
app.userProperty Ein Element, das basierend auf dem numerischen oder Zeichenfolgenwert einer Firebase Analytics-Benutzereigenschaft zu TRUE oder FALSE ausgewertet wird.
app.operatingSystemAndVersion

Ein Element, das auf dem Betriebssystem basiert, auf dem eine App ausgeführt wird. Wird als TRUE ausgewertet, wenn das Betriebssystem und die Betriebssystemversion mit dem angegebenen Ziel übereinstimmen.

Hinweis: Nur für Web-Apps verfügbar.

app.browserAndVersion

Ein Element, das auf dem Browser basiert, auf dem eine App ausgeführt wird. Wird als TRUE ausgewertet, wenn der Browser und die Browserversion mit dem angegebenen Ziel übereinstimmen.

Hinweis: Nur für Web-Apps verfügbar.

app.firebaseInstallationId Ein Element, das auf den IDs bestimmter Geräteinstallationen basiert. Wird mit TRUE ausgewertet, wenn die Installations-ID mit einer der angegebenen Installations-IDs übereinstimmt.
device.country Ein Element basierend auf der Region/dem Land, in dem sich ein Gerät befindet, unter Verwendung des ISO 3166-1 Alpha-2-Standards (z. B. USA oder Großbritannien). Wird als TRUE ausgewertet, wenn ein Land mit einem erwarteten Ländercode übereinstimmt.
device.dateTime Ein Element, das auf dem Zeitpunkt des letzten Abrufs basiert, den das Gerät durchführt. Verwendet das ISO-Datumsformat mit der Option, eine feste Zeitzone anzugeben; beispielsweise dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') .
device.language Ein Element, das auf der auf einem Gerät ausgewählten Sprache basiert. Die Sprache wird mit einem IETF-Sprachtag wie es-ES, pt-BR oder en-US dargestellt. Wird als TRUE ausgewertet, wenn eine Sprache mit einem erwarteten Sprachcode übereinstimmt.
device.os Ein Element basierend auf dem auf einem Gerät verwendeten Betriebssystem (Apple oder Android). Wird als TRUE ausgewertet, wenn das Betriebssystem des Geräts dem erwarteten Typ entspricht.
percent Wird basierend auf der Aufnahme eines Benutzers in ein zufällig zugewiesenes fraktionales Perzentil (mit Stichprobenumfängen von nur 0,000001 %) als TRUE bewertet.

Eine Einzelelementbedingung enthält drei Felder:

  1. Ein beliebig definierter name (bis zu 100 Zeichen)
  2. Ein bedingter Ausdruck, der als TRUE oder FALSE ausgewertet wird und aus den oben gezeigten Elementen besteht.
  3. (Optional) Die tagColor , die " BLUE ", " BROWN ", " CYAN ", " DEEP_ORANGE ", " GREEN ", " INDIGO ", " LIME ", " ORANGE ", " PINK ", " PURPLE " oder sein kann „ TEAL “. Bei der Farbe wird die Groß-/Kleinschreibung nicht beachtet und wirkt sich nur darauf aus, wie Bedingungen in der Firebase-Konsole angezeigt werden.

Unterstützte Operatoren

Beispielsweise gibt app.build.notContains([123, 456])TRUE zurück, wenn der tatsächliche App-Build 123 oder 492 ist, gibt aber FALSE zurück, wenn der tatsächliche App-Build 999 ist. Beispielsweise gibt app.version.notContains([123, 456])TRUE zurück, wenn die tatsächliche App-Version 123 oder 492 ist, gibt aber FALSE zurück, wenn die tatsächliche App-Version 999 ist.
Element Unterstützte Operatoren Beschreibung
app.audiences .inAtLeastOne([...]) Gibt TRUE zurück, wenn die tatsächliche Zielgruppe mit mindestens einem Zielgruppennamen in der Liste übereinstimmt.
Beispielsweise:

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

app.audiences .notInAtLeastOne([...]) Gibt TRUE zurück, wenn die tatsächliche Zielgruppe nicht mit mindestens einem Zielgruppennamen in der Liste übereinstimmt.
app.audiences .inAll([...]) Gibt TRUE zurück, wenn die tatsächliche Zielgruppe Mitglied jedes Zielgruppennamens in der Liste ist.
app.audiences .notInAll([...]) Gibt TRUE zurück, wenn die tatsächliche Zielgruppe kein Mitglied einer Zielgruppe in der Liste ist.
app.userProperty < , <= , == , != , >= , > Gibt TRUE zurück, wenn die tatsächliche Benutzereigenschaft numerisch mit dem angegebenen Wert auf eine Weise verglichen wird, die dem Operator entspricht.
app.userProperty .contains([...]) Gibt TRUE zurück, wenn einer der Zielwerte eine Teilzeichenfolge der tatsächlichen Benutzereigenschaft ist.
app.userProperty .notContains([...]) Gibt TRUE zurück, wenn keiner der Zielwerte eine Teilzeichenfolge der tatsächlichen Benutzereigenschaft ist.
app.userProperty .exactlyMatches([...]) Gibt TRUE zurück, wenn die tatsächliche Benutzereigenschaft genau mit einem der Zielwerte in der Liste übereinstimmt (Groß-/Kleinschreibung beachten).
app.userProperty .matches([...]) Gibt TRUE zurück, wenn ein regulärer Zielausdruck in der Liste mit einer Teilzeichenfolge oder dem gesamten tatsächlichen Wert übereinstimmt. Um den Abgleich der gesamten Zeichenfolge zu erzwingen, stellen Sie dem regulären Ausdruck ein „^“ voran und ein „$“ als Suffix. Verwendet die RE2- Syntax.
app.id == Gibt TRUE zurück, wenn der angegebene Wert mit der App-ID der App übereinstimmt.
app.build < , <= , == , != , >= , > Gibt TRUE zurück, wenn der tatsächliche App-Build numerisch mit dem angegebenen Wert auf eine Weise verglichen wird, die dem Operator entspricht.
app.build .contains([...]) Gibt TRUE zurück, wenn einer der Zielwerte eine Teilzeichenfolge des tatsächlichen App-Builds ist – beispielsweise sind „a“ und „bc“ Teilzeichenfolgen von „abc“.
app.build .notContains([...]) Gibt TRUE zurück, wenn keiner der Zielwerte eine Teilzeichenfolge des tatsächlichen App-Builds ist.
app.build .exactlyMatches([...]) Gibt TRUE zurück, wenn der tatsächliche App-Build genau mit einem der Zielwerte in der Liste übereinstimmt.
app.build .matches([...]) Gibt TRUE zurück, wenn ein regulärer Zielausdruck in der Liste mit einer Teilzeichenfolge oder dem gesamten tatsächlichen Wert übereinstimmt. Um den Abgleich der gesamten Zeichenfolge zu erzwingen, stellen Sie dem regulären Ausdruck ein „^“ voran und ein „$“ als Suffix. Verwendet die RE2- Syntax.
app.version < , <= , == , != , >= , > Gibt TRUE zurück, wenn die tatsächliche App-Version numerisch mit dem angegebenen Wert auf eine Weise verglichen wird, die dem Operator entspricht.
app.version .contains([...]) Gibt TRUE zurück, wenn einer der Zielwerte eine Teilzeichenfolge der tatsächlichen App-Version ist – beispielsweise sind „a“ und „bc“ Teilzeichenfolgen von „abc“.
app.version .notContains([...]) Gibt TRUE zurück, wenn keiner der Zielwerte eine Teilzeichenfolge der tatsächlichen App-Version ist.
app.version .exactlyMatches([...]) Gibt TRUE zurück, wenn die tatsächliche App-Version genau mit einem der Zielwerte in der Liste übereinstimmt.
app.version .matches([...]) Gibt TRUE zurück, wenn ein regulärer Zielausdruck in der Liste mit einer Teilzeichenfolge oder dem gesamten tatsächlichen Wert übereinstimmt. Um den Abgleich der gesamten Zeichenfolge zu erzwingen, stellen Sie dem regulären Ausdruck ein „^“ voran und ein „$“ als Suffix. Verwendet die RE2- Syntax.
app.operatingSystemAndVersion .inOne([...]) Gibt TRUE zurück, wenn das Betriebssystem und die Version mit einem der Zielwerte in der Liste übereinstimmen.
Beispielsweise:

    app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')])
    

app.browserAndVersion .inOne([...]) Gibt TRUE zurück, wenn der Browser und die Version mit einem der Zielwerte in der Liste übereinstimmen.
Beispielsweise:

    app.browserAndVersion.inOne([browserName('Chrome').anyVersion])
    

app.firebaseInstallationId in [...] Gibt TRUE zurück, wenn die Installations-ID mit einer der in der Liste angegebenen übereinstimmt. Beispielnutzung: app.firebaseInstallationId in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7']
device.country in [...] Gibt TRUE zurück, wenn das Land des Geräts mit einem der in der Liste angegebenen Länder übereinstimmt. Beispielnutzung: device.country in ['gb', 'us'] . Der Ländercode des Geräts wird mithilfe der IP-Adresse des Geräts in der Anfrage oder des von Firebase Analytics ermittelten Ländercodes ermittelt (wenn Analytics-Daten mit Firebase geteilt werden).
device.dateTime <= , > Vergleicht die aktuelle Zeit mit der Zielzeit der Bedingung und wird basierend auf dem Operator als TRUE oder FALSE ausgewertet. Verwendungsbeispiel: dateTime < dateTime('2017-03-22T13:39:44') .
device.language in [...] Gibt TRUE zurück, wenn eine der Sprachen der App mit einer Sprache in der Liste übereinstimmt. Beispielverwendung: device.language in ['en-UK', 'en-US'] .
device.os == , != Gibt TRUE zurück, wenn das Betriebssystem des Geräts mit dem Wert in diesem Feld verglichen wird, der mit dem Operator übereinstimmt.
percent <= , > Gibt TRUE zurück, wenn der Wert im percent mit dem zufällig zugewiesenen Wert verglichen wird, der dem Operator entspricht.