Cette page contient des informations de référence pour créer des expressions conditionnelles à l'aide des API de backend Remote Config ou de la console Firebase. Pour en savoir plus sur la configuration et l'utilisation des API de backend, consultez Modifier Remote Config de manière programmatique.
Éléments utilisés pour créer des conditions
L'API REST Remote Config est compatible avec les mêmes éléments que ceux que vous pouvez utiliser pour créer des conditions lorsque vous configurez Remote Config à l'aide de la console Firebase :
Élément | 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 Remarque : Un espace est requis avant et après les esperluettes. Par exemple : |
app.build |
La valeur est Remarque : Cette fonctionnalité n'est disponible que sur les appareils Apple et Android. Pour Apple, utilisez la valeur CFBundleVersion et pour Android, utilisez la valeur versionCode. |
app.version |
Renvoie Remarque : Pour les appareils Android, utilisez la valeur de versionName et pour les appareils Apple, utilisez la valeur de CFBundleShortVersionString. |
app.id |
Un élément basé sur l'ID de l'application Firebase |
app.audiences |
Élément qui renvoie TRUE ou FALSE selon que l'utilisateur est présent ou absent dans une ou plusieurs audiences Firebase Analytics. |
app.firstOpenTimestamp |
Élément basé sur la première fois que l'utilisateur lance une application, obtenu à partir de l'événement Google Analytics first_open . Utilise le format de date ISO avec la possibilité de spécifier un fuseau horaire fixe (par exemple, app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') ).
Si aucun fuseau horaire n'est spécifié, le fuseau horaire GMT est utilisé.
|
app.userProperty |
Élément qui renvoie TRUE ou FALSE en fonction de la valeur numérique ou de chaîne d'une Google Analytics
propriété utilisateur. |
app.operatingSystemAndVersion |
Élément basé sur le système d'exploitation sur lequel une application s'exécute.
Renvoie Remarque : Cette fonctionnalité n'est disponible que pour les applications Web. |
app.browserAndVersion |
Élément basé sur le navigateur sur lequel une application s'exécute.
La valeur est Remarque : Cette fonctionnalité n'est disponible que pour les applications Web. |
app.firebaseInstallationId |
Élément basé sur les ID d'installations d'appareils spécifiques.
La valeur est TRUE lorsque l'ID d'installation correspond à l'un des ID d'installation spécifiés. |
app.customSignal |
Élément qui renvoie TRUE ou FALSE en fonction de la valeur numérique, sémantique ou de chaîne des conditions de signal personnalisé. |
device.country |
Élément basé sur la région/le pays où se trouve un appareil, à l'aide de la norme ISO 3166-1 alpha-2 (par exemple, "US" ou "FR"). Renvoie TRUE lorsqu'un pays correspond à un code pays attendu. |
device.dateTime |
É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 l'option permettant de spécifier un fuseau horaire fixe (par exemple, dateTime('2017-03-22T13:39:44', 'America/Los_Angeles') ). |
device.language |
Élément basé sur la langue sélectionnée sur un appareil. La langue est représentée à l'aide d'un tag de langue IETF tel que es-ES, pt-BR ou en-US.
Renvoie TRUE lorsqu'une langue correspond à un code de langue attendu. |
device.os |
Élément basé sur le système d'exploitation utilisé sur un appareil (Apple ou Android).
Renvoie TRUE lorsque l'OS de l'appareil est du type attendu. |
percent |
La valeur renvoyée est TRUE en fonction de l'inclusion d'un utilisateur dans un pourcentage fractionnaire attribué de manière aléatoire (avec des tailles d'échantillon aussi petites que 0,000001 %). |
Une condition à un seul élément contient trois champs :
name
défini arbitrairement (jusqu'à 100 caractères)- Expression conditionnelle qui renvoie
TRUE
ouFALSE
, composée des éléments indiqués ci-dessus. - (Facultatif) Le
tagColor
, qui peut être "BLUE
", "BROWN
", "CYAN
", "DEEP_ORANGE
", "GREEN
", "INDIGO
", "LIME
", "ORANGE
", "PINK
", "PURPLE
" ou "TEAL
". La couleur n'est pas sensible à la casse et n'affecte que la façon dont les conditions sont affichées dans la console Firebase.
Opérateurs compatibles
Par exemple,app.build.notContains([123, 456])
renvoie TRUE
si la version de l'application est 123 ou 492, mais renvoie FALSE
si la version de l'application est 999.
Par exemple, app.version.notContains([123, 456])
renvoie TRUE
si la version réelle de l'application est 123 ou 492, mais renvoie FALSE
si la version réelle de l'application est 999.
Élément | Opérateurs compatibles | Description |
---|---|---|
app.audiences |
.inAtLeastOne([...]) |
Renvoie TRUE si l'audience réelle correspond à au moins un nom d'audience dans la liste.Par exemple : app.audiences.inAtLeastOne(['Audience 1', 'Audience 2']) |
app.audiences |
.notInAtLeastOne([...]) |
Renvoie TRUE si l'audience réelle ne correspond pas à au moins un nom d'audience dans la liste. |
app.audiences |
.inAll([...]) |
Renvoie TRUE si l'audience réelle est membre de chaque nom d'audience de la liste. |
app.audiences |
.notInAll([...]) |
Renvoie TRUE si l'audience réelle n'est membre d'aucune audience de la liste. |
app.firstOpenTimestamp |
<=, > |
Compare l'heure de l'événement first_open à l'heure spécifiée dans la condition et renvoie TRUE ou FALSE en fonction de l'opérateur.Exemple d'utilisation : app.firstOpenTimestamp >= ('2022-10-31T14:37:47', 'America/Los_Angeles') .
Pour spécifier une plage : app.firstOpenTimestamp >= ('2022-11-01T00:00:00') && app.firstOpenTimestamp < ('2022-12-01T00:00:00')
Si aucun fuseau horaire n'est spécifié, le fuseau horaire GMT est utilisé.
|
app.userProperty |
< , <= , == , != ,
>= , > |
Renvoie TRUE si la propriété utilisateur réelle est numériquement comparable à la valeur spécifiée d'une manière qui correspond à l'opérateur. |
app.userProperty |
.contains([...]) |
Renvoie TRUE si l'une des valeurs cibles est une sous-chaîne de la propriété utilisateur réelle. |
app.userProperty |
.notContains([...]) |
Renvoie TRUE si aucune des valeurs cibles n'est une sous-chaîne de la propriété utilisateur réelle. |
app.userProperty |
.exactlyMatches([...]) |
Renvoie TRUE si la propriété utilisateur réelle correspond exactement (sensible à la casse) à l'une des valeurs cibles de la liste. |
app.userProperty |
.matches([...]) |
Renvoie TRUE si n'importe quelle expression régulière cible de la liste correspond à une sous-chaîne ou à la totalité de la valeur réelle. Pour forcer la correspondance de l'intégralité de la chaîne, faites précéder l'expression régulière de "^" et faites-la suivre de "$". Utilise la syntaxe RE2. |
app.id |
== |
Renvoie TRUE si la valeur spécifiée correspond à l'ID de l'application. |
app.build |
< , <= , == , != ,
>= , > |
Renvoie TRUE si la version réelle de l'application est numériquement comparable à la valeur spécifiée d'une manière qui correspond à l'opérateur. |
app.build |
.contains([...]) |
Renvoie TRUE si l'une des valeurs cibles est une sous-chaîne de la version réelle de l'application (par exemple, "a" et "bc" sont des sous-chaînes de "abc"). |
app.build |
.notContains([...]) |
Renvoie TRUE si aucune des valeurs cibles n'est une sous-chaîne de la version réelle de l'application. |
app.build |
.exactlyMatches([...]) |
Renvoie TRUE si la version réelle de l'application correspond à l'une des valeurs cibles de la liste. |
app.build |
.matches([...]) |
Renvoie TRUE si n'importe quelle expression régulière cible de la liste correspond à une sous-chaîne ou à la totalité de la valeur réelle. Pour forcer la correspondance de l'intégralité de la chaîne, faites précéder l'expression régulière de "^" et faites-la suivre de "$". Utilise la syntaxe
RE2. |
app.version |
< , <= , == , != ,
>= , > |
Renvoie TRUE si la version réelle de l'application est numériquement comparable à la valeur spécifiée d'une manière qui correspond à l'opérateur. |
app.version |
.contains([...]) |
Renvoie TRUE si l'une des valeurs cibles est une sous-chaîne de la version réelle de l'application (par exemple, "a" et "bc" sont des sous-chaînes de "abc"). |
app.version |
.notContains([...]) |
Renvoie TRUE si aucune des valeurs cibles n'est une sous-chaîne de la version réelle de l'application. |
app.version |
.exactlyMatches([...]) |
Renvoie TRUE si la version réelle de l'application correspond exactement à l'une des valeurs cibles de la liste. |
app.version |
.matches([...]) |
Renvoie TRUE si n'importe quelle expression régulière cible de la liste correspond à une sous-chaîne ou à la totalité de la valeur réelle. Pour forcer la correspondance de l'intégralité de la chaîne, faites précéder l'expression régulière de "^" et faites-la suivre de "$". Utilise la syntaxe
RE2. |
app.operatingSystemAndVersion |
.inOne([...]) |
Renvoie TRUE si l'OS et la version correspondent à l'une des valeurs cibles de la liste.Par exemple : app.operatingSystemAndVersion.inOne([operatingSystemName('Macintosh').version.==('10.15')]) |
app.browserAndVersion |
.inOne([...]) |
Renvoie TRUE si le navigateur et la version correspondent à l'une des valeurs cibles de la liste.Par exemple : app.browserAndVersion.inOne([browserName('Chrome').anyVersion]) |
app.firebaseInstallationId |
in [...] |
Renvoie TRUE si l'ID d'installation correspond à l'un de ceux spécifiés dans la liste. Exemple d'utilisation : app.firebaseInstallationId
in ['eyJhbGciOiJFUzI1N_iIs5', 'eapzYQai_g8flVQyfKoGs7'] |
app.customSignal |
< , <= , == , != ,
>= , > |
Renvoie TRUE si la condition du signal personnalisé est numériquement comparable à la valeur spécifiée d'une manière qui correspond à l'opérateur.
|
app.customSignal |
.contains([...]) |
Renvoie TRUE si l'une des valeurs cibles est une sous-chaîne de la condition de signal personnalisé réelle.
|
app.customSignal |
.notContains([...]) |
Renvoie TRUE si l'une des valeurs cibles est une sous-chaîne de la condition de signal personnalisé réelle.
|
app.customSignal |
.exactlyMatches([...]) |
Renvoie TRUE si la condition du signal personnalisé réel correspond exactement (sensible à la casse) à l'une des valeurs cibles de la liste.
|
app.customSignal |
.matches([...]) |
Renvoie TRUE si une expression régulière cible de la liste correspond à une sous-chaîne ou à la totalité de la condition de signal personnalisé réelle. Pour forcer la correspondance de l'intégralité de la chaîne, faites précéder l'expression régulière de "^" et faites-la suivre de "$". Utilise la syntaxe
RE2.
|
version(app.customSignal) |
< , <= , == , != ,
>= , > |
Renvoie TRUE si la condition de signal personnalisé est sémantiquement comparable à la valeur spécifiée d'une manière qui correspond à l'opérateur.
|
device.country |
in [...] |
Renvoie TRUE si le pays de l'appareil correspond à l'un de ceux spécifiés 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 requête ou du code pays déterminé par Firebase Analytics (si les données Analytics sont partagées avec Firebase). |
device.dateTime |
<= , > |
Compare l'heure actuelle à l'heure cible de la condition et renvoie TRUE ou FALSE en fonction de l'opérateur. Exemple d'utilisation : dateTime < dateTime('2017-03-22T13:39:44') . |
device.language |
in [...] |
Renvoie TRUE si l'une des langues de l'application correspond à une langue de la liste. Exemple d'utilisation : device.language in ['en-UK', 'en-US'] . |
device.os |
== , != |
Renvoie TRUE si le système d'exploitation de l'appareil est comparable à la valeur de ce champ correspondant à l'opérateur. |
percent |
<= , > , between |
Renvoie TRUE si la valeur du champ percent est comparable à la valeur qui a été attribuée de manière aléatoire et qui correspond à l'opérateur.
Vous pouvez spécifier un seed pour sélectionner un nouveau groupe d'instances d'application attribué de manière aléatoire pour une plage de pourcentage donnée, comme décrit dans Types de règles de condition. Pour ce faire, indiquez le nom de la graine avant l'opérateur, comme dans l'exemple suivant : percent('keyName') <= 10 Pour configurer une plage spécifique, vous pouvez utiliser l'opérateur percent between 20 and 60 Pour configurer une plage d'utilisateurs entre 60 et 80 à l'aide d'une source personnalisée : percent('seedName') between 60 and 80 |