RemoteConfig

Una RemoteConfig representa una plantilla de Remote Config.

La plantilla de configuración remota de un proyecto se evalúa durante la recuperación de cada instancia de la aplicación.

El valor resuelto de un parámetro se determina de la siguiente manera:

Dados los conditional values que se refieren a conditions true para la instancia de la aplicación, el valor resuelto del parámetro es el valor condicional cuyo name es el primero en la conditions list .

De lo contrario, si el parámetro tiene un default value , el valor resuelto se establece en el valor predeterminado.

De lo contrario, el parámetro no tiene valor y se omite del resultado que obtiene la instancia de la aplicación.

Por ejemplo, supongamos que tenemos la clave de parámetro fruit , con el valor predeterminado pear y el submapa de valor condicional {"is_ios": "apple", "is_in_20_percent": "banana"} donde "is_ios" y "is_20_percent" son nombres de condiciones en el orden lista de condiciones. El valor de fruit se evaluaría como apple si is_ios es verdadero. De lo contrario, si is_in_20_percent es true , fruit se evaluaría como banana , y si is_ios y is_in_20_percent son falsos, fruit se evaluaría como pear . Si no se especifica ningún valor predeterminado, y is_ios e is_in_20_percent son ambos falsos, no se devolverá ningún valor para fruit desde el servidor de Remote Config al cliente.

Una vez que la plantilla de configuración remota de un proyecto se ha publicado a través de una llamada exitosa a projects.updateRemoteConfig , los clientes pueden obtener estos valores de parámetros y mostrárselos a los usuarios.

Representación JSON
{
  "conditions": [
    {
      object (RemoteConfigCondition)
    }
  ],
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  },
  "version": {
    object (Version)
  },
  "parameterGroups": {
    string: {
      object (RemoteConfigParameterGroup)
    },
    ...
  }
}
Campos
conditions[]

object ( RemoteConfigCondition )

Una lista de condiciones en orden descendente por prioridad.

Los valores de las entradas de google.firebase.remoteconfig.v1.RemoteConfigCondition.name deben ser únicos.

parameters

map (key: string, value: object ( RemoteConfigParameter ))

Asignación de claves de parámetro a sus valores predeterminados opcionales y valores condicionales opcionales.

Un objeto que contiene una lista de "key": value . Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

version

object ( Version )

Solo salida, excepto la description de la versión. Metadatos asociados con una versión particular de una plantilla. El campo de descripción de una versión se puede especificar en las llamadas de projects.updateRemoteConfig .

parameterGroups

map (key: string, value: object ( RemoteConfigParameterGroup ))

Asignación de nombres de grupos de parámetros a sus descripciones y parámetros agrupados. El nombre de un grupo es mutable pero debe ser único entre los grupos en la configuración. El nombre está limitado a 256 caracteres y está destinado a ser legible por humanos. Se permite cualquier carácter Unicode.

Los grupos tienen una lista de parámetros que permite a los usuarios de la API agrupar parámetros que están asociados con la misma función o tema para facilitar el acceso organizacional.

Por ejemplo, un grupo de parámetros con el nombre "Búsqueda V2" puede tener la description "Nueva vista de búsqueda móvil" y contener parámetros para el diseño y la fuente de la nueva búsqueda.

Un objeto que contiene una lista de "key": value . Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

RemoteConfigCondition

Una condición dirigida a un grupo específico de usuarios. Una lista de estas condiciones forman parte de un objeto RemoteConfig.

Representación JSON
{
  "name": string,
  "expression": string,
  "tagColor": enum (ConditionDisplayColor)
}
Campos
name

string

Requerido. Un nombre no vacío y único de esta condición.

expression

string

Requerido. La lógica de esta condición.

Consulte la documentación sobre expresiones de condición para conocer la sintaxis esperada de este campo.

tagColor

enum ( ConditionDisplayColor )

Opcional. El color asociado con esta condición para fines de visualización en Firebase Console. No especificar este valor o tener "CONDITION_DISPLAY_COLOR_UNSPECIFIED" hace que la consola elija un color arbitrario para asociarlo con la condición.

CondiciónPantallaColor

Lista de colores que están asociados con Condiciones para fines de visualización.

Enumeraciones
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE Azul
BROWN Marrón
CYAN cian
DEEP_ORANGE también conocido como "rojo naranja"
GREEN Verde
INDIGO Índigo
LIME Lima
ORANGE Naranja
PINK Rosado
PURPLE Violeta
TEAL verde azulado

RemoteConfigParameter

Un valor de parámetro asociado con una clave de parámetro en google.firebase.remoteconfig.v1.RemoteConfig.parameters .

Como mínimo, una entrada defaultValue o conditionalValues ​​debe estar presente para que el parámetro tenga algún efecto.

Representación JSON
{
  "defaultValue": {
    object (RemoteConfigParameterValue)
  },
  "conditionalValues": {
    string: {
      object (RemoteConfigParameterValue)
    },
    ...
  },
  "description": string,
  "valueType": enum (ParameterValueType)
}
Campos
defaultValue

object ( RemoteConfigParameterValue )

Opcional: valor para establecer el parámetro, cuando ninguna de las condiciones nombradas se evalúa como true .

conditionalValues

map (key: string, value: object ( RemoteConfigParameterValue ))

Opcional: un mapa ( condition name , valor). El condition_name de la prioridad más alta (el que aparece primero en la lista de condiciones de RemoteConfig) determina el valor de este parámetro.

Un objeto que contiene una lista de "key": value . Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

description

string

Opcional. Una descripción para este parámetro. Su extensión debe ser menor o igual a 256 caracteres. Una descripción puede contener cualquier carácter Unicode.

valueType

enum ( ParameterValueType )

El tipo de datos para todos los valores de este parámetro en la versión actual de la plantilla. El valor predeterminado es ParameterValueType.STRING si no se especifica.

RemoteConfigParameterValue

Un recurso RemoteConfigParameterValue contiene el valor que puede tener un parámetro.

Representación JSON
{

  // Union field value_option can be only one of the following:
  "value": string,
  "useInAppDefault": boolean,
  "personalizationValue": {
    object (PersonalizationValue)
  }
  // End of list of possible types for union field value_option.
}
Campos
Campo de unión value_option . Un RemoteConfigParameterValue consiste en una cadena (valor) o un booleano (use_in_app_default, establecido en verdadero si corresponde). value_option solo puede ser uno de los siguientes:
value

string

El valor de cadena en el que se establece el parámetro.

useInAppDefault

boolean

Si es verdadero, el parámetro se omite de los valores de parámetro devueltos a un cliente.

personalizationValue

object ( PersonalizationValue )

Un valor dinámico específico del usuario que se calcula cuando se recupera la configuración.

Valor de personalización

Contiene la información necesaria para obtener un valor personalizado.

Representación JSON
{
  "personalizationId": string
}
Campos
personalizationId

string

Identificador que representa una definición de personalización. Esta definición se utiliza para resolver el valor en el momento de la obtención de la configuración. Este valor generado por el sistema no debe modificarse.

Tipo de valor de parámetro

Tipos de datos aceptados para valores de parámetros.

Enumeraciones
PARAMETER_VALUE_TYPE_UNSPECIFIED Catch-all para valores de enumeración no reconocidos.
STRING Representa valores de cadena.
BOOLEAN Representa valores booleanos ("verdadero" o "falso").
NUMBER Representa valores enteros y flotantes positivos y negativos.
JSON Representa valores JSON.

Grupo de parámetros de configuración remota

Un grupo de parámetros con nombre. La agrupación de parámetros solo tiene fines de administración y no afecta la obtención de valores de parámetros por parte del cliente.

Representación JSON
{
  "description": string,
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  }
}
Campos
description

string

Opcional. Una descripción para el grupo. Su extensión debe ser menor o igual a 256 caracteres. Una descripción puede contener cualquier carácter Unicode.

parameters

map (key: string, value: object ( RemoteConfigParameter ))

Asignación de claves de parámetro a sus valores predeterminados opcionales y valores condicionales opcionales para parámetros que pertenecen a este grupo. Un parámetro solo aparece una vez por RemoteConfig: un parámetro desagrupado aparece en el nivel superior; un parámetro organizado dentro de un grupo aparece dentro del mapa de parámetros de su grupo.

Un objeto que contiene una lista de "key": value . Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" } .