Remote Config-Parameter und -Bedingungen


Sie können Vorlagen für Client- und Serveranwendungsfälle konfigurieren. Clientvorlagen werden für alle Anwendungsinstanzen bereitgestellt, die die Firebase Client SDKs für Remote Config implementieren, einschließlich Android-, Apple-, Web-, Unity-, Flutter- und C++-Apps. Remote Config-Parameter und ‑Werte aus serverspezifischen Vorlagen werden an Remote Config-Implementierungen (einschließlich Cloud Run und Cloud Functions) gesendet, die das Firebase Admin Node.js SDK v12.1.0 oder höher verwenden.

Wenn Sie die Firebase Console oder die Remote Config Backend APIs verwenden, definieren Sie einen oder mehrere Parameter (Schlüssel/Wert-Paare) und geben In-App-Standardwerte für diese Parameter an. Sie können In-App-Standardwerte überschreiben, indem Sie Parameterwerte definieren. Parameterschlüssel und Parameterwerte sind Strings. Parameterwerte können jedoch in andere Datentypen umgewandelt werden, wenn Sie sie in Ihrer App verwenden.

Mit der Firebase Console, Admin SDK oder der Remote Config REST API können Sie neue Standardwerte für Ihre Parameter sowie bedingte Werte erstellen, die für die Ausrichtung auf Gruppen von App-Instanzen verwendet werden. Jedes Mal, wenn Sie Ihre Konfiguration in der Firebase-Konsole aktualisieren, erstellt und veröffentlicht Firebase eine neue Version Ihrer Remote Config-Vorlage. Die vorherige Version wird gespeichert, sodass Sie sie bei Bedarf abrufen oder ein Rollback ausführen können. Diese Vorgänge sind in der Firebase-Konsole, in Firebase Admin SDK und in der REST API verfügbar. Weitere Informationen finden Sie unter Remote Config-Vorlagenversionen verwalten.

In diesem Leitfaden werden Parameter, Bedingungen, Regeln und bedingte Werte erläutert und es wird erläutert, wie verschiedene Parameterwerte im Remote Config-Back-End und in Ihrer Anwendung priorisiert werden. Außerdem finden Sie detaillierte Informationen zu den Regeltypen, die zum Erstellen von Bedingungen verwendet werden.

Bedingungen, Regeln und bedingte Werte

Eine Bedingung wird verwendet, um eine Gruppe von App-Instanzen als Ziel zu verwenden. Bedingungen bestehen aus einer oder mehreren Regeln, die alle den Wert true haben müssen, damit die Bedingung für eine bestimmte App-Instanz den Wert true hat. Wenn der Wert für eine Regel nicht definiert ist (z. B. wenn kein Wert verfügbar ist), wird die Regel als false ausgewertet.

Sie können beispielsweise einen Parameter erstellen, der den Namen und den Versionsstring eines Large Language Models (LLM) definiert, und Antworten von verschiedenen Modellen basierend auf benutzerdefinierten Signalregeln ausliefern. In diesem Anwendungsfall können Sie eine stabile Modellversion als Standardwert verwenden, um die meisten Anfragen zu bedienen, und das benutzerdefinierte Signal verwenden, um mit einem experimentellen Modell auf Clientanfragen zu reagieren.

Ein Parameter kann mehrere bedingte Werte mit unterschiedlichen Bedingungen haben. Außerdem können Parameter innerhalb eines Projekts gemeinsame Bedingungen haben. Auf dem Tab Parameter der Firebase-Konsole können Sie den Abrufprozentsatz für die bedingten Werte der einzelnen Parameter ansehen. Dieser Messwert gibt den Prozentsatz der Anfragen in den letzten 24 Stunden an, die den jeweiligen Wert erhalten haben.

Priorität des Parameterwerts

Einem Parameter können mehrere bedingte Werte zugeordnet sein. Die folgenden Regeln bestimmen, welcher Wert aus der Vorlage Remote Config abgerufen und welcher Wert in einer bestimmten Anwendungsinstanz zu einem bestimmten Zeitpunkt verwendet wird:

  1. Zuerst werden bedingte Werte für alle Bedingungen angewendet, die für eine bestimmte Kundenanfrage zu true führen. Wenn mehrere Bedingungen zu true führen, hat die erste (oben) in der Firebase-Benutzeroberfläche der Console Vorrang. Die zugehörigen bedingten Werte werden bereitgestellt, wenn eine App Werte aus dem Backend abruft. Sie können die Priorität von Bedingungen ändern, indem Sie sie auf dem Tab Bedingungen per Drag-and-drop verschieben.

  2. Wenn es keine bedingten Werte mit Bedingungen gibt, die zu true führen, wird der Standardwert von Remote Config angegeben, wenn eine App Werte aus dem Backend abruft. Wenn ein Parameter im Backend nicht vorhanden ist oder der Standardwert auf In-App-Standard verwenden festgelegt ist, wird für diesen Parameter kein Wert angegeben, wenn eine App Werte abruft.

In Ihrer App werden Parameterwerte von get-Methoden gemäß der folgenden Prioritätsliste zurückgegeben.

  1. Wenn ein Wert vom Back-End abgerufen und dann aktiviert wurde, verwendet die App den abgerufenen Wert. Aktivierte Parameterwerte bleiben erhalten.
  2. Wenn kein Wert aus dem Backend abgerufen wurde oder die aus dem Remote Config-Backend abgerufenen Werte nicht aktiviert wurden, verwendet die App den In-App-Standardwert.

    Weitere Informationen zum Abrufen und Festlegen von Standardwerten finden Sie unter Standardeinstellungen für Remote Config-Vorlagen herunterladen.

  3. Wenn kein In-App-Standardwert festgelegt wurde, verwendet die App einen statischen Typwert (z. B. 0 für int und false für boolean).

In dieser Grafik wird zusammengefasst, wie Parameterwerte im Remote Config-Backend und in Ihrer App priorisiert werden:

Diagramm, das den Ablauf zeigt, der in den oben aufgeführten Listen beschrieben wird

Datentypen für Parameterwerte

Mit Remote Config können Sie für jeden Parameter einen Datentyp auswählen. Vor dem Aktualisieren einer Vorlage werden alle Remote Config-Werte anhand dieses Typs überprüft. Der Datentyp wird bei einer getRemoteConfig-Anfrage gespeichert und zurückgegeben.

Folgende Datentypen werden unterstützt:

  • String
  • Boolean
  • Number
  • JSON

In der Firebase-Benutzeroberfläche kann der Datentyp über ein Drop-down-Menü neben dem Parameterschlüssel ausgewählt werden. In der REST API können Typen mit dem Feld value_type im Parameterobjekt festgelegt werden.

Parametergruppen

Mit Remote Config können Sie Parameter gruppieren, um die Benutzeroberfläche zu organisieren und die Nutzerfreundlichkeit zu verbessern.

Angenommen, Sie müssen beim Einführen einer neuen Anmeldefunktion drei verschiedene Authentifizierungstypen aktivieren oder deaktivieren. Mit Remote Config können Sie die drei Parameter erstellen, um die gewünschten Typen zu aktivieren, und sie dann in einer Gruppe namens „Neue Anmeldung“ organisieren, ohne Präfixe oder eine spezielle Sortierung hinzufügen zu müssen.

Sie können Parametergruppen mit der Firebase Console oder der Remote Config REST API erstellen. Jede von Ihnen erstellte Parametergruppe hat in der Remote Config-Vorlage einen eindeutigen Namen. Beachten Sie beim Erstellen von Parametergruppen Folgendes:

  • Parameter können jeweils nur einer Gruppe zugewiesen werden. Ein Parameterschlüssel muss jedoch für alle Parameter eindeutig sein.
  • Parametergruppennamen sind auf 256 Zeichen beschränkt.
  • Wenn Sie sowohl die REST API als auch die Firebase-Konsole verwenden, müssen Sie die REST API-Logik so aktualisieren, dass sie Parametergruppen bei der Veröffentlichung verarbeitet.

Parametergruppen mit der Firebase-Console erstellen oder ändern

Sie können Parameter auf dem Tab Parameter der Firebase-Konsole gruppieren. So erstellen oder ändern Sie eine Gruppe:

  1. Wählen Sie Gruppen verwalten aus.
  2. Klicken Sie die Kästchen der Parameter an, die Sie hinzufügen möchten, und dann auf In Gruppe verschieben.
  3. Wählen Sie eine vorhandene Gruppe aus oder erstellen Sie eine neue Gruppe. Geben Sie dazu einen Namen und eine Beschreibung ein und wählen Sie Neue Gruppe erstellen aus. Nachdem Sie eine Gruppe gespeichert haben, können Sie sie über die Schaltfläche Änderungen veröffentlichen veröffentlichen.

Regeltypen für Bedingungen

Die folgenden Regeltypen werden in der Firebase-Konsole unterstützt. Entsprechende Funktionen sind in der Remote Config REST API verfügbar, wie in der Referenz zu bedingten Ausdrücken beschrieben.

Regeltyp Betreiber Wert(e) Hinweis
App == Wählen Sie aus einer Liste von App-IDs für Apps aus, die mit Ihrem Firebase-Projekt verknüpft sind. Wenn Sie Firebase eine App hinzufügen, geben Sie eine Bundle-ID oder einen Android-Paketnamen ein, der ein Attribut definiert, das in Remote Config-Regeln als App-ID freigegeben wird.

Verwenden Sie dieses Attribut so:
  • Für Apple-Plattformen:Verwenden Sie die CFBundleIdentifier der App. Sie finden die Bundle-ID in Xcode auf dem Tab Allgemein für das primäre Ziel Ihrer App.
  • Android:Verwenden Sie die applicationId der App. Du findest das applicationId in der Datei build.gradle auf App-Ebene.
App-Version Für Stringwerte:
stimmt genau überein,
enthält,
enthält nicht,
enthält regulären Ausdruck

Für numerische Werte:
<, <=, =, !=, >, >=

Geben Sie die Versionen Ihrer App an, auf die Sie Ihre Anzeigen ausrichten möchten.

Bevor Sie diese Regel verwenden, müssen Sie eine App-ID-Regel verwenden, um eine Android-/Apple-App auszuwählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Apple-Plattformen:Verwenden Sie die CFBundleShortVersionString der App.

Hinweis:Achten Sie darauf, dass Ihre Apple-App das Firebase Apple Platform SDK Version 6.24.0 oder höher verwendet, da CFBundleShortVersionString in früheren Versionen nicht gesendet wird (siehe Versionshinweise).

Android:Verwenden Sie den versionName der App.

Bei Stringvergleichen für diese Regel wird die Groß- und Kleinschreibung beachtet. Wenn Sie die Operatoren stimmt genau überein, enthält, enthält nicht oder enthält regulären Ausdruck verwenden, können Sie mehrere Werte auswählen.

Wenn Sie den Operator enthält regulären Ausdruck verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten oder einem Teil des Zielversionsstrings übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder den gesamten Zielstring abzugleichen.

Build-Nummer Für Stringwerte:
stimmt genau überein,
enthält,
enthält nicht,
regulärer Ausdruck

Für numerische Werte:
=, ≠, >, ≥, <, ≤

Geben Sie die Builds Ihrer App an, auf die Sie abzielen möchten.

Bevor Sie diese Regel verwenden können, müssen Sie mit einer App-ID-Regel eine Apple- oder Android-App auswählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Dieser Operator ist nur für Apple- und Android-Apps verfügbar. Sie entspricht der CFBundleVersion der App für Apple und der versionCode für Android. Bei Stringvergleichen für diese Regel wird die Groß-/Kleinschreibung beachtet.

Wenn Sie die Operatoren stimmt genau überein, enthält, enthält nicht oder enthält regulären Ausdruck verwenden, können Sie mehrere Werte auswählen.

Wenn Sie den Operator enthält regulären Ausdruck verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten oder einem Teil des Zielversionsstrings übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder die Gesamtheit eines Zielstrings abzugleichen.

Plattform == iOS
Android
Web
 
Betriebssystem ==

Geben Sie die Betriebssysteme an, auf die Sie Ihre Anzeigen ausrichten möchten.

Bevor Sie diese Regel verwenden können, müssen Sie mit einer App-ID-Regel eine Web-App auswählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Diese Regel wird für eine bestimmte Instanz der Webanwendung mit true ausgewertet, wenn das Betriebssystem und seine Version mit einem Zielwert in der angegebenen Liste übereinstimmen.
Browser ==

Geben Sie die Browser an, auf die Sie Ihre Anzeigen ausrichten möchten.

Bevor Sie diese Regel verwenden, müssen Sie eine App-ID-Regel verwenden, um eine Web-App auszuwählen, die mit Ihrem Firebase-Projekt verknüpft ist.

Diese Regel ergibt für eine bestimmte Instanz der Webanwendung den Wert true, wenn der Browser und seine Version mit einem Zielwert in der angegebenen Liste übereinstimmen.
Gerätekategorie ist, ist nicht mobil Mit dieser Regel wird ausgewertet, ob das Gerät, das auf Ihre Webanwendung zugreift, mobil oder nicht mobil ist (Computer oder Konsole). Dieser Regeltyp ist nur für Webanwendungen verfügbar.
Sprachen ist in Wählen Sie eine oder mehrere Sprachen aus. Diese Regel wird für eine bestimmte App-Instanz als true ausgewertet, wenn diese App-Instanz auf einem Gerät installiert ist, auf dem eine der aufgeführten Sprachen verwendet wird.
Land/Region ist in Wählen Sie eine oder mehrere Regionen oder Länder aus. Diese Regel wird für eine bestimmte Anwendungsinstanz als true ausgewertet, wenn sich die Instanz in einer der aufgeführten Regionen oder Ländern befindet. 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 mit Firebase geteilt werden).
Nutzerzielgruppe(n) Enthält mindestens eines Wählen Sie aus der Liste Google Analytics eine oder mehrere Zielgruppen aus, die Sie für Ihr Projekt eingerichtet haben.

Für diese Regel ist eine App-ID-Regel erforderlich, um eine mit Ihrem Firebase-Projekt verknüpfte App auszuwählen.

Hinweis:Da viele Analytics-Zielgruppen durch Ereignisse oder Nutzereigenschaften definiert werden, die auf den Aktionen von App-Nutzern basieren können, kann es einige Zeit dauern, bis eine Regel vom Typ Nutzer in Zielgruppe für eine bestimmte App-Instanz wirksam wird.

Nutzereigenschaft Für Stringwerte:
enthält,
enthält nicht,
stimmt genau überein,
enthält regulären Ausdruck

Für numerische Werte:
=, ≠, >, ≥, <, ≤

Hinweis: Auf dem Client können Sie nur Stringwerte für Nutzereigenschaften festlegen. Bei Bedingungen mit numerischen Operatoren wandelt Remote Config den Wert der entsprechenden Nutzereigenschaft in eine Ganzzahl/Fließkommazahl um.
Wählen Sie aus der Liste der verfügbaren Google Analytics-Nutzereigenschaften einen Wert aus. Wie Sie Ihre App mithilfe von Nutzereigenschaften für bestimmte Segmente Ihrer Nutzerbasis anpassen können, erfahren Sie unter Remote Config und Nutzereigenschaften.

Weitere Informationen zu Nutzereigenschaften finden Sie in den folgenden Leitfäden:

Bei Verwendung der Operatoren stimmt genau überein, enthält, enthält nicht oder enthält Regex, können Sie mehrere Werte auswählen.

Wenn Sie den Operator enthält regulären Ausdruck verwenden, können Sie reguläre Ausdrücke im RE2-Format erstellen. Ihr regulärer Ausdruck kann mit dem gesamten oder einem Teil des Zielversionsstrings übereinstimmen. Sie können auch die Anker ^ und $ verwenden, um den Anfang, das Ende oder die Gesamtheit eines Zielstrings abzugleichen.

Hinweis:Automatisch erfasste Nutzereigenschaften sind beim Erstellen von Remote Config-Bedingungen nicht verfügbar.
Nutzer in zufälliger Prozentzahl Schieberegler (in der Firebase Console. In der REST API werden die Operatoren <=, > und between verwendet. 0–100

Mit diesem Feld können Sie eine Änderung auf eine zufällige Stichprobe von App-Instanzen anwenden (mit Stichprobengrößen von bis zu 0,0001%). Verwenden Sie dazu das Schieberegler-Widget, um zufällig gemischte Nutzer (App-Instanzen) in Gruppen zu segmentieren.

Jede App-Instanz wird gemäß einem in diesem Projekt definierten Seed dauerhaft einer zufälligen Ganzzahl oder Bruchzahl zugeordnet.

Sofern Sie den Startwert nicht ändern, wird für eine Regel der Standardschlüssel verwendet, der in der Firebase-Konsole als Startwert bearbeiten angezeigt wird. Sie können eine Regel zur Verwendung des Standardschlüssels zurücksetzen, indem Sie das Feld Seed löschen.

Wenn Sie dieselben App-Instanzen innerhalb bestimmter Prozentbereiche konsistent ansprechen möchten, verwenden Sie für alle Bedingungen denselben Seed-Wert. Alternativ können Sie eine neue, zufällig zugewiesene Gruppe von App-Instanzen für einen bestimmten Prozentsatzbereich auswählen, indem Sie einen neuen Startwert angeben.

Wenn Sie beispielsweise zwei miteinander verbundene Bedingungen erstellen möchten, die jeweils für 5% der Nutzer einer App gelten, die sich nicht überschneiden, können Sie eine Bedingung so konfigurieren, dass sie einem Prozentsatz zwischen 0% und 5% entspricht, und eine weitere Bedingung für einen Bereich zwischen 5% und 10%. Damit einige Nutzer zufällig in beiden Gruppen erscheinen, müssen Sie für die Regeln innerhalb jeder Bedingung unterschiedliche Startwerte verwenden.

Importiertes Segment ist in Wählen Sie ein oder mehrere importierte Segmente aus. Für diese Regel müssen benutzerdefinierte importierte Segmente eingerichtet werden.
Datum/Uhrzeit Vorher, Nachher Ein bestimmtes Datum und eine bestimmte Uhrzeit, entweder in der Zeitzone des Geräts oder in einer angegebenen Zeitzone wie „(GMT+11) Sydney-Zeit“. Vergleicht die aktuelle Uhrzeit mit der Abrufzeit des Geräts.
Erstes Öffnen Vorher, Nachher Ein bestimmtes Datum und eine bestimmte Uhrzeit in der angegebenen Zeitzone.

Die Ausrichtung erfolgt auf Nutzer, die die App, auf die ausgerichtet wird, innerhalb des angegebenen Zeitraums zum ersten Mal öffnen.

Folgende SDKs sind erforderlich:

  • Firebase SDK für Google Analytics
  • Apple-Plattformen SDK Version 9.0.0 oder höher oder Android SDK Version 21.1.1 oder höher (Firebase BoM ab Version 30.3.0)
Installations-ID ist in Geben Sie eine oder mehrere Installations-IDs (bis zu 50) für die Ausrichtung an. Bei dieser Regel wird für eine bestimmte Installation true zurückgegeben, wenn die ID dieser Installation in der durch Kommas getrennten Liste der Werte enthalten ist.

Informationen zum Abrufen von Installations-IDs finden Sie unter Client-IDs abrufen.
Nutzer existiert (kein Operator) Ausrichtung auf alle Nutzer aller Apps im aktuellen Projekt.

Mit dieser Bedingungsregel können Sie alle Nutzer im Projekt abgleichen, unabhängig von App oder Plattform.

Suchparameter und -bedingungen

In der Firebase-Konsole können Sie über das Suchfeld oben auf dem Tab Remote Config Parameter nach den Parameterschlüsseln, Parameterwerten und Bedingungen Ihres Projekts suchen.

Einschränkungen für Parameter und Bedingungen

In einem Firebase-Projekt sind bis zu 2.000 Parameter und bis zu 500 Bedingungen möglich. Parameterschlüssel können bis zu 256 Zeichen lang sein, müssen mit einem Unterstrich oder einem lateinischen Buchstaben (A–Z, a–z) beginnen und dürfen Zahlen enthalten. Die Gesamtlänge der Parameterwertstrings in einem Projekt darf 1.000.000 Zeichen nicht überschreiten.

Änderungen an Parametern und Bedingungen ansehen

Die letzten Änderungen an Ihren Remote Config-Vorlagen können Sie in der Firebase-Konsole einsehen. Für jeden einzelnen Parameter und jede einzelne Bedingung haben Sie folgende Möglichkeiten:

  • Der Name des Nutzers, der den Parameter oder die Bedingung zuletzt geändert hat.

  • Wenn die Änderung am selben Tag erfolgt ist, sehen Sie sich die Anzahl der Minuten oder Stunden an, die vergangen sind, seit die Änderung in der aktiven Remote Config-Vorlage veröffentlicht wurde.

  • Wenn die Änderung vor mindestens einem Tag stattgefunden hat, sehen Sie sich das Datum an, an dem die Änderung in der aktiven Remote Config-Vorlage veröffentlicht wurde.

Änderungsverlauf für Parameter

Auf der Seite Remote Config Parameter wird in der Spalte Zuletzt veröffentlicht der Nutzer angezeigt, der den jeweiligen Parameter zuletzt geändert hat, sowie das Datum der letzten Veröffentlichung der Änderung:

  • Wenn Sie die Änderungsmetadaten für gruppierte Parameter aufrufen möchten, maximieren Sie die Parametergruppe.

  • Wenn Sie nach dem Veröffentlichungsdatum in aufsteigender oder absteigender Reihenfolge sortieren möchten, klicken Sie auf das Spaltenlabel Zuletzt veröffentlicht.

Änderungsverlauf für Bedingungen

Auf der Seite Remote Config Bedingungen sehen Sie unter jeder Bedingung neben Zuletzt geändert den letzten Nutzer, der die Bedingung geändert hat, und das Datum, an dem sie geändert wurde.

Nächste Schritte

Informationen zum Konfigurieren Ihres Firebase-Projekts und Ihrer App für die Verwendung von Remote Config finden Sie unter Einstieg in Firebase Remote Config.