Referenz zu bedingten Remote Config-Ausdrücken

Auf dieser Seite finden Sie Referenzinformationen zum Erstellen von bedingten Ausdrücken mit Remote Config-Back-End-APIs oder der Firebase-Konsole. Weitere Informationen zum Einrichten und Verwenden der Backend APIs finden Sie unter Remote Config programmatisch ändern.

Elemente zum Erstellen von Bedingungen

Die Remote Config REST API unterstützt dieselben Elemente, mit denen Sie Bedingungen erstellen können, wenn Sie Remote Config über die Firebase Console konfigurieren:

Element Beschreibung
&&

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

Hinweis:Vor und nach den kaufmännischen Und-Zeichen muss ein Leerzeichen stehen. Beispiel: element1 && element2.

app.build

Wird je nach Wert der Build-Nummer einer App zu TRUE oder FALSE ausgewertet.

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

app.version

Wird je nach Wert der Versionsnummer einer App als TRUE oder FALSE ausgewertet.

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

app.id Ein Element, das auf der Firebase App-ID der App basiert
app.audiences Ein Element, das je nach Anwesenheit oder Abwesenheit des Nutzers in einer oder mehreren Analytics for Firebase-Zielgruppen den Wert TRUE oder FALSE zurückgibt.
app.firstOpenTimestamp Ein Element, das darauf basiert, wann der Nutzer eine App zum ersten Mal startet. Es wird aus dem Ereignis Google Analytics first_open abgeleitet. Es wird das ISO-Datumsformat mit der Option zum Angeben einer festen Zeitzone verwendet, z. B. app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles'). Wenn keine Zeitzone angegeben ist, wird GMT verwendet.
app.userProperty Ein Element, das je nach numerischem oder Stringwert einer Firebase Analytics-Nutzereigenschaft zu TRUE oder FALSE ausgewertet wird.
app.operatingSystemAndVersion

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

Hinweis:Nur für Webanwendungen verfügbar.

app.browserAndVersion

Ein Element, das vom Browser abhängt, in dem eine App ausgeführt wird. Wird mit TRUE ausgewertet, wenn der Browser und die Browserversion mit dem angegebenen Ziel übereinstimmen.

Hinweis:Nur für Webanwendungen verfügbar.

app.firebaseInstallationId Ein Element, das auf den IDs bestimmter Geräteinstallationen basiert. Wird zu TRUE ausgewertet, wenn die Installations-ID mit einer der angegebenen Installations-IDs übereinstimmt.
device.country Ein Element, das auf der Region/dem Land basiert, in dem sich ein Gerät befindet, gemäß dem ISO 3166-1 Alpha-2-Standard (z. B. USA oder Vereinigtes Königreich). Wird mit TRUE ausgewertet, wenn ein Land mit einem erwarteten Ländercode übereinstimmt.
device.dateTime Ein Element, das auf der Zeit des letzten Abrufs basiert, den das Gerät ausführt. Es wird das ISO-Datumsformat mit der Option verwendet, um eine feste Zeitzone anzugeben, z. B. dateTime('2017-03-22T13:39:44', 'America/Los_Angeles').
device.language Ein Element, das von der auf einem Gerät ausgewählten Sprache abhängt. Die Sprache wird mit einem IETF-Sprach-Tag wie „de-DE“, „pt-BR“ oder „en-US“ dargestellt. Wird mit TRUE ausgewertet, wenn eine Sprache mit einem erwarteten Sprachcode übereinstimmt.
device.os Ein Element, das vom Betriebssystem des Geräts abhängt (Apple oder Android). Wird mit TRUE ausgewertet, wenn das Betriebssystem des Geräts dem erwarteten Typ entspricht.
percent Wird zu TRUE ausgewertet, wenn ein Nutzer in einen zufällig zugewiesenen anteiligen Prozentsatz aufgenommen wurde (mit Stichprobengrößen von bis zu 0,000001%).

Eine Bedingung mit einem einzelnen Element enthält drei Felder:

  1. Ein beliebig definiertes name (bis zu 100 Zeichen)
  2. Ein Bedingungsausdruck, der zu TRUE oder FALSE ausgewertet wird und aus den oben genannten Elementen besteht.
  3. Optional: Die tagColor, die „BLUE“, „BROWN“, „CYAN“, „DEEP_ORANGE“, „GREEN“, „INDIGO“, „LIME“, „ORANGE“, „PINK“, „PURPLE“ oder „TEAL“ sein kann. Die Farbe ist nicht groß- und kleinschreibungsempfindlich und wirkt sich nur darauf aus, wie Bedingungen in der Firebase-Konsole angezeigt werden.

Unterstützte Operatoren

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

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

app.audiences .notInAtLeastOne([...]) Es wird TRUE zurückgegeben, wenn die tatsächliche Zielgruppe mit mindestens einem Zielgruppennamen in der Liste nicht übereinstimmt.
app.audiences .inAll([...]) Gibt TRUE zurück, wenn die tatsächliche Zielgruppe zu jeder Zielgruppe in der Liste gehört.
app.audiences .notInAll([...]) Gibt TRUE zurück, wenn die tatsächliche Zielgruppe keiner Zielgruppe in der Liste angehört.
app.firstOpenTimestamp <=, > Vergleicht die Uhrzeit des first_open-Ereignisses mit der in der Bedingung angegebenen Uhrzeit und gibt je nach Operator TRUE oder FALSE zurück.
Beispiel:
app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles').
So legen Sie einen Zeitraum fest:
app.firstOpenTimestamp >= ('2022-11-01T00:00:00') && app.firstOpenTimestamp < ('2022-12-01T00:00:00') Wenn keine Zeitzone angegeben ist, wird GMT verwendet.
app.userProperty <, <=, ==, !=, >=, > Gibt TRUE zurück, wenn die tatsächliche Nutzereigenschaft numerisch mit dem angegebenen Wert verglichen wird und der Vergleich dem Operator entspricht.
app.userProperty .contains([...]) Gibt TRUE zurück, wenn einer der Zielwerte ein Teilstring der tatsächlichen Nutzereigenschaft ist.
app.userProperty .notContains([...]) Gibt TRUE zurück, wenn keiner der Zielwerte ein Teilstring der tatsächlichen Nutzereigenschaft ist.
app.userProperty .exactlyMatches([...]) Gibt TRUE zurück, wenn die tatsächliche Nutzereigenschaft genau mit einem der Zielwerte in der Liste übereinstimmt (Groß- und Kleinschreibung wird berücksichtigt).
app.userProperty .matches([...]) Gibt TRUE zurück, wenn ein beliebiger Zielregulärer Ausdruck in der Liste mit einem Teilstring oder dem gesamten tatsächlichen Wert übereinstimmt. Wenn Sie eine Übereinstimmung des gesamten Strings erzwingen möchten, setzen Sie vor den regulären Ausdruck „^“ und nach dem regulären Ausdruck „$“. Dabei wird die RE2-Syntax verwendet.
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 verglichen wird und der Operator zutrifft.
app.build .contains([...]) Gibt TRUE zurück, wenn einer der Zielwerte ein Teilstring des tatsächlichen App-Builds ist. „a“ und „bc“ sind beispielsweise Teilstrings von „abc“.
app.build .notContains([...]) Gibt TRUE zurück, wenn keiner der Zielwerte ein Teilstring der tatsächlichen App-Build-Version 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 beliebiger Zielregulärer Ausdruck in der Liste mit einem Teilstring oder dem gesamten tatsächlichen Wert übereinstimmt. Wenn Sie eine Übereinstimmung des gesamten Strings erzwingen möchten, setzen Sie vor den regulären Ausdruck „^“ und nach den regulären Ausdruck „$“. Es wird die RE2-Syntax verwendet.
app.version <, <=, ==, !=, >=, > Gibt TRUE zurück, wenn die tatsächliche App-Version numerisch mit dem angegebenen Wert verglichen wird und der Operator zutrifft.
app.version .contains([...]) Gibt TRUE zurück, wenn einer der Zielwerte ein Teilstring der tatsächlichen App-Version ist. „a“ und „bc“ sind beispielsweise Teilstrings von „abc“.
app.version .notContains([...]) Gibt TRUE zurück, wenn keiner der Zielwerte ein Teilstring 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 beliebiger Zielregulärer Ausdruck in der Liste mit einem Teilstring oder dem gesamten tatsächlichen Wert übereinstimmt. Wenn Sie eine Übereinstimmung des gesamten Strings erzwingen möchten, setzen Sie vor den regulären Ausdruck „^“ und nach den regulären Ausdruck „$“. Es wird die RE2-Syntax verwendet.
app.operatingSystemAndVersion .inOne([...]) Gibt TRUE zurück, wenn das Betriebssystem und die Version mit einem der Zielwerte in der Liste übereinstimmen.
Beispiel:

    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.
Beispiel:

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

app.firebaseInstallationId in [...] Gibt TRUE zurück, wenn die Installations-ID mit einer in der Liste angegebenen übereinstimmt. Beispiel: app.firebaseInstallationId in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7']
device.country in [...] Gibt TRUE zurück, wenn das Land des Geräts mit einem in der Liste angegebenen Land übereinstimmt. Beispiel: device.country in ['gb', 'us']. Der Ländercode des Geräts wird anhand der IP-Adresse des Geräts in der Anfrage oder des von Firebase Analytics ermittelten Ländercodes ermittelt (sofern Analytics-Daten für Firebase freigegeben werden).
device.dateTime <=, > Vergleicht die aktuelle Uhrzeit mit der Zielzeit der Bedingung und ergibt je nach Operator TRUE oder FALSE. Beispiel: 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. Beispiel: device.language in ['en-UK', 'en-US'].
device.os ==, != Gibt TRUE zurück, wenn das Betriebssystem des Geräts den Wert in diesem Feld mit dem Operator vergleicht.
percent <=, >, between Gibt TRUE zurück, wenn der Wert im Feld percent mit dem Wert verglichen wird, der dem Operator zufällig zugewiesen wurde.

Sie können einen Startwert angeben, um eine neue, zufällig zugewiesene Gruppe von App-Instanzen für einen bestimmten Prozentsatzbereich auszuwählen, wie unter Arten von Bedingungsregeln beschrieben.

Geben Sie dazu den Namen des Seeds vor dem Operator an, wie im folgenden Beispiel:

percent('keyName') <= 10

Mit dem Operator between können Sie einen bestimmten Bereich konfigurieren. So konfigurieren Sie eine Gruppe von 20 bis 60 Nutzern mit dem Standard-Seed:

percent between 20 and 60

So konfigurieren Sie einen Bereich von 60 bis 80 Nutzer mit einem benutzerdefinierten Startwert:

percent('seedName') between 60 and 80