Catch up on everthing we announced at this year's Firebase Summit. Learn more

Référence d'expression conditionnelle Remote Config

Cette page contient des informations de référence pour la création d'expressions conditionnelles à l'aide des API backend Remote Config ou de la console Firebase. Pour plus d' informations sur la configuration et l' utilisation des API de back - end, voir Modifier à distance Config programme .

Éléments utilisés pour créer des conditions

L'API REST Remote Config prend en charge les mêmes éléments que vous pouvez utiliser pour créer des conditions lors de la configuration de Remote Config à l'aide de la console Firebase :

Élément La description
&&

Utilisé pour créer un "et" logique d'éléments si vous utilisez plusieurs éléments pour une condition. Si un élément est utilisé dans la syntaxe REST sans && , cet élément est traité comme une condition.

Remarque: un espace est nécessaire avant et après les esperluette. Par exemple: element1 && element2 .

app.build

Évalue à TRUE ou FALSE en fonction de la valeur du numéro de version d'une application.

Note: Uniquement disponible sur les appareils Apple et Android. Pour Apple, utiliser la valeur de CFBundleVersion et pour Android, utilisez la valeur de codeVersion .

app.version

Évalue à TRUE ou FALSE en fonction de la valeur du numéro de version d'une application.

Remarque: Pour les appareils Android utilisent la valeur de versionName , et pour les appareils Apple utilisent la valeur de CFBundleShortVersionString .

app.id Un élément basé sur l'ID d'application Firebase de l'application
app.audiences Un élément qui est évaluée à TRUE ou FALSE basées sur la présence de l'utilisateur ou de l' absence dans un ou plusieurs spectateurs Firebase Analytics (s) .
app.predictionScores.id Élément qui évalue la probabilité centile de l'utilisateur de l'appelant pour un ID Firebase Predictions donné.
app.userProperty Un élément qui sera évalué à TRUE ou FALSE en fonction de la valeur numérique ou une chaîne d'une propriété utilisateur Firebase Analytics .
app.operatingSystemAndVersion

Un élément basé sur le système d'exploitation sur lequel une application s'exécute. Evalue à TRUE lorsque le système d' exploitation et la version OS correspond à la cible spécifiée.

Note: Uniquement disponible pour les applications Web.

app.browserAndVersion

Un élément basé sur le navigateur sur lequel une application s'exécute. Evalue à TRUE lorsque la version du navigateur et le navigateur correspond à la cible spécifiée.

Note: Uniquement disponible pour les applications Web.

app.firebaseInstallationId Un élément basé sur les ID d'installations de périphériques spécifiques. Evalue à TRUE lorsque l' ID d'installation correspond à l' un des ID d ' installation.
device.country Un élément basé sur la région/le pays dans lequel se trouve un appareil, à l'aide de la norme ISO 3166-1 alpha-2 (par exemple, États-Unis ou Royaume-Uni). Evalue à TRUE quand un pays correspond à un code de pays attendu.
device.dateTime Un élément basé sur l'heure de la dernière récupération effectuée par l'appareil. Utilise le format de date ISO avec la possibilité de spécifier un fuseau horaire fixe ; par exemple, dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') .
device.language Un élément basé sur la langue sélectionnée sur un appareil. La langue est représentée à l'aide d'une balise de langue IETF telle que es-ES, pt-BR ou en-US. Evalue à TRUE quand une langue correspond à un code de langue attendue.
device.os Un élément basé sur le système d'exploitation utilisé sur un appareil (Apple ou Android). Evalue à TRUE lorsque le système d' exploitation de l' appareil est le type attendu.
percent Evalue à TRUE basé sur l'inclusion d'un utilisateur dans un percentile fractionnaire attribué au hasard (avec la taille des échantillons aussi petits que 0,000001%).

Une condition à élément unique contient trois champs :

  1. Une arbitrairement définie name (jusqu'à 100 caractères)
  2. Une expression conditionnelle qui renvoie TRUE ou FALSE , constitués des éléments indiqués ci - dessus.
  3. (Facultatif) Le tagColor , qui peut être " BLUE ", " BROWN ", " CYAN ", " DEEP_ORANGE ", " GREEN ", " INDIGO ", " LIME ", " ORANGE ", " PINK ", " PURPLE ", ou " TEAL ". La couleur est insensible à la casse et n'affecte que l'affichage des conditions dans la console Firebase.

Opérateurs pris en charge

Par exemple, app.build.notContains([123, 456]) retourne TRUE si la construction de l' application réelle est 123 ou 492, mais retourne FALSE si la construction de l' application réelle est de 999. Par exemple, app.version.notContains([123, 456]) retourne TRUE si la version de l' application réelle est 123 ou 492, mais retourne FALSE si la version de l' application réelle est de 999.
Élément Opérateurs pris en charge La description
app.audiences .inAtLeastOne([...]) Retours TRUE si l'audience réelle correspond à au moins un nom de public dans la liste.
Par exemple:

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

app.audiences .notInAtLeastOne([...]) Retourne TRUE si l'audience réelle ne correspond pas à au moins un nom de public dans la liste.
app.audiences .inAll([...]) Retourne TRUE si l'audience réelle est membre de tous les noms d'audience dans la liste.
app.audiences .notInAll([...]) Retourne TRUE si le public réel n'est pas membre d'un public dans la liste.
app.predictionScores.id .between(..., ...) Retourne TRUE si l'utilisateur de l'appelant probabilité percentile pour la prédiction est dans la plage donnée.
Par exemple:

app.predictionScores.id('churn').between(0.25, 1.00)

app.userProperty < , <= , == , != , >= , > Retours TRUE si la propriété de l' utilisateur réel compare numériquement à la valeur spécifiée d'une manière qui correspond à l'opérateur.
app.userProperty .contains([...]) Retourne TRUE si l' une des valeurs cibles est une sous - chaîne de la propriété de l' utilisateur réel.
app.userProperty .notContains([...]) Retourne TRUE si aucune des valeurs cibles est une sous - chaîne de la propriété de l' utilisateur réel.
app.userProperty .exactlyMatches([...]) Retours TRUE si la propriété de l' utilisateur réel correspond exactement (sensible à la casse) l' une des valeurs cibles dans la liste.
app.userProperty .matches([...]) Retours TRUE si une cible expression régulière dans la liste correspond à une sous - chaîne, ou l'ensemble, la valeur réelle. Pour forcer la correspondance de la chaîne entière, faites précéder l'expression régulière par "^" et suffixez-la avec "$". Utilise RE2 syntaxe.
app.id == Retours TRUE si la valeur spécifiée correspond App Id de l'application.
app.build < , <= , == , != , >= , > Retours TRUE si la construction de l' application réelle compare numériquement à la valeur spécifiée d'une manière qui correspond à l'opérateur.
app.build .contains([...]) Retours TRUE si l' une des valeurs cibles est une sous - chaîne de la construction, par exemple l' application réelle, « a » et « bc » sont des sous - chaînes « abc ».
app.build .notContains([...]) Retourne TRUE si aucune des valeurs cibles est une sous - chaîne de la construction de l' application réelle.
app.build .exactlyMatches([...]) Retourne TRUE si la construction de l' application réelle correspond exactement à l' une des valeurs cibles dans la liste.
app.build .matches([...]) Retours TRUE si une cible expression régulière dans la liste correspond à une sous - chaîne, ou l'ensemble, la valeur réelle. Pour forcer la correspondance de la chaîne entière, faites précéder l'expression régulière par "^" et suffixez-la avec "$". Utilise RE2 syntaxe.
app.version < , <= , == , != , >= , > Retours TRUE si la version de l' application réelle compare numériquement à la valeur spécifiée d'une manière qui correspond à l'opérateur.
app.version .contains([...]) Retours TRUE si l' une des valeurs cibles est une sous - chaîne de la version par exemple l' application réelle, « a » et « bc » sont des sous - chaînes « abc ».
app.version .notContains([...]) Retourne TRUE si aucune des valeurs cibles est une sous - chaîne de la version de l' application réelle.
app.version .exactlyMatches([...]) Retourne TRUE si la version de l' application réelle correspond exactement à l' une des valeurs cibles dans la liste.
app.version .matches([...]) Retours TRUE si une cible expression régulière dans la liste correspond à une sous - chaîne, ou l'ensemble, la valeur réelle. Pour forcer la correspondance de la chaîne entière, faites précéder l'expression régulière par "^" et suffixez-la avec "$". Utilise RE2 syntaxe.
app.operatingSystemAndVersion .inOne([...]) Retours TRUE si le système d' exploitation et la version correspond à l' une des valeurs cibles dans la liste.
Par exemple:

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

app.browserAndVersion .inOne([...]) Retours TRUE si le navigateur et la version correspond à l' une des valeurs cibles dans la liste.
Par exemple:

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

app.firebaseInstallationId in [...] Retours TRUE si les matchs id d'installation tout spécifié dans la liste. Exemple d' utilisation: app.firebaseInstallationId in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7']
device.country in [...] Retours TRUE si les matchs de pays de l'appareil tout spécifié dans la liste. Exemple d' utilisation: device.country in ['gb', 'us'] . Le code pays de l'appareil est déterminé à l'aide de l'adresse IP de l'appareil dans la demande ou du code pays déterminé par Firebase Analytics (si les données Analytics sont partagées avec Firebase).
device.dateTime <= , > L'heure actuelle compare au temps cible de la condition et à evalue TRUE ou FALSE en fonction de l'opérateur. Exemple d' utilisation: dateTime < dateTime('2017-03-22T13:39:44') .
device.language in [...] Retourne TRUE si l' un de correspondre à une langue des langues de l'application dans la liste. Exemple d' utilisation: device.language in ['en-UK', 'en-US'] .
device.os == , != Retours TRUE si le système d'exploitation de l'appareil compare à la valeur dans ce champ correspondant à l'opérateur.
percent <= , > Retourne TRUE si la valeur dans le pour percent champ compare à la valeur qui a été attribué au hasard correspondant à l'opérateur.