RemoteConfig

Un RemoteConfig representa una plantilla de Remote Config.

La plantilla de Remote Config 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 hacen referencia 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 en el resultado que obtiene la instancia de la aplicación.

Por ejemplo, supongamos que tenemos la clave del 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á como banana , y si is_ios y is_in_20_percent son ambos falsos, fruit se evaluará como pear . Si no se especificó ningún valor predeterminado y is_ios y is_in_20_percent fueron ambos falsos, no se devolverá ningún valor para fruit desde el servidor de Remote Config al cliente.

Una vez que la plantilla de Remote Config de un proyecto se haya publicado mediante una llamada exitosa projects.updateRemoteConfig , los clientes pueden recuperar 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 google.firebase.remoteconfig.v1.RemoteConfigCondition.name deben ser únicos.

parameters

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

Mapa de claves de parámetros con sus valores predeterminados opcionales y valores condicionales opcionales.

Un objeto que contiene una lista de pares "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 a projects.updateRemoteConfig .

parameterGroups

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

Mapa de nombres de grupos de parámetros con 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 permiten todos los caracteres Unicode.

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

Por ejemplo, un grupo de parámetros con el nombre "Buscar 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 pares "key": value . Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

Condición de configuración remota

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

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

string

Requerido. Un nombre único y no vacío 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. Si no se especifica este valor o se tiene "CONDITION_DISPLAY_COLOR_UNSPECIFIED", la consola elige un color arbitrario para asociarlo con la condición.

CondiciónPantallaColor

Lista de colores 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 Cal
ORANGE Naranja
PINK Rosa
PURPLE Púrpura
TEAL verde azulado

Parámetro de configuración remota

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

Como mínimo, debe estar presente una entrada defaultValue o conditionalValues ​​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 nombre_condición de mayor prioridad (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 pares "key": value . Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

description

string

Opcional. Una descripción para este parámetro. Su longitud 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.

Valor del parámetro de configuración remota

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
value_option del campo de unión. Un RemoteConfigParameterValue consta de una cadena (valor) o un valor booleano (use_in_app_default, establecido en verdadero si corresponde). value_option puede ser solo uno de los siguientes:
value

string

El valor de cadena en el que está establecido 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.

PersonalizaciónValor

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 recuperar 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 Comodín para valores de enumeración no reconocidos.
STRING Representa valores de cadena.
BOOLEAN Representa valores booleanos ("verdadero" o "falso").
NUMBER Representa valores flotantes y enteros 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 es solo para 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 del grupo. Su longitud debe ser menor o igual a 256 caracteres. Una descripción puede contener cualquier carácter Unicode.

parameters

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

Mapa de claves de parámetros con sus valores predeterminados opcionales y valores condicionales opcionales para los 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 pares "key": value . Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" } .