RemoteConfig

Un RemoteConfig rappresenta un modello Remote Config.

Il modello Remote Config di un progetto viene valutato durante il recupero di ogni istanza dell'applicazione.

Il valore risolto di un parametro viene determinato come segue:

Dati i conditional values che fanno riferimento a conditions true per l'istanza dell'applicazione, il valore risolto del parametro è il valore condizionale il cui name è il primo nell'elenco delle conditions list .

Altrimenti, se il parametro ha un default value , il valore risolto viene impostato sul valore predefinito.

Altrimenti, il parametro non ha valore e viene omesso dal risultato recuperato dall'istanza dell'applicazione.

Ad esempio, supponiamo di avere la chiave del parametro fruit , con valore predefinito pear e mappa secondaria del valore condizionale {"is_ios": "apple", "is_in_20_percent": "banana"} dove "is_ios" e "is_20_percent" sono nomi di condizioni nell'ordine elenco delle condizioni. Il valore di fruit verrebbe valutato come apple se is_ios è vero. Altrimenti, se is_in_20_percent è true , fruit verrebbe valutato come banana e se is_ios e is_in_20_percent sono entrambi false, fruit verrebbe valutato come pear . Se non fosse specificato alcun valore predefinito e is_ios e is_in_20_percent fossero entrambi falsi, nessun valore per fruit verrebbe restituito dal server Remote Config al client.

Una volta che il modello Remote Config di un progetto è stato pubblicato tramite una chiamata projects.updateRemoteConfig riuscita, i client possono recuperare questi valori di parametro e visualizzarli agli utenti.

Rappresentazione JSON
{
  "conditions": [
    {
      object (RemoteConfigCondition)
    }
  ],
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  },
  "version": {
    object (Version)
  },
  "parameterGroups": {
    string: {
      object (RemoteConfigParameterGroup)
    },
    ...
  }
}
Campi
conditions[]

object ( RemoteConfigCondition )

Un elenco di condizioni in ordine decrescente in base alla priorità.

I valori delle voci google.firebase.remoteconfig.v1.RemoteConfigCondition.name devono essere univoci.

parameters

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

Mappa delle chiavi dei parametri sui relativi valori predefiniti facoltativi e valori condizionali facoltativi.

Un oggetto contenente un elenco di coppie "key": value . Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

version

object ( Version )

Solo output, ad eccezione della description della versione. Metadati associati a una particolare versione di un modello. Il campo della descrizione di una versione può essere specificato nelle chiamate projects.updateRemoteConfig .

parameterGroups

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

Mappa dei nomi dei gruppi di parametri con le relative descrizioni e parametri raggruppati. Il nome di un gruppo è modificabile ma deve essere univoco tra i gruppi nella configurazione. Il nome è limitato a 256 caratteri ed è concepito per essere leggibile dall'uomo. È consentito qualsiasi carattere Unicode.

I gruppi dispongono di un elenco di parametri che consente agli utenti dell'API di raggruppare insieme parametri associati alla stessa funzionalità o tema per un facile accesso organizzativo.

Ad esempio, un gruppo di parametri con il nome "Ricerca V2" può avere la description "Nuova visualizzazione ricerca mobile" e contenere parametri per il layout e il carattere della nuova ricerca.

Un oggetto contenente un elenco di coppie "key": value . Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

CondizioneConfigRemota

Una condizione rivolta a un gruppo specifico di utenti. Un elenco di queste condizioni costituisce parte di un oggetto RemoteConfig.

Rappresentazione JSON
{
  "name": string,
  "expression": string,
  "tagColor": enum (ConditionDisplayColor)
}
Campi
name

string

Necessario. Un nome non vuoto e univoco di questa condizione.

expression

string

Necessario. La logica di questa condizione.

Consulta la documentazione relativa alle espressioni di condizione per la sintassi prevista di questo campo.

tagColor

enum ( ConditionDisplayColor )

Opzionale. Il colore associato a questa condizione a scopo di visualizzazione nella console Firebase. Se non si specifica questo valore o se "CONDITION_DISPLAY_COLOR_UNSPECIFIED" la console sceglie un colore arbitrario da associare alla condizione.

CondizioneDisplayColor

Elenco di colori associati alle Condizioni a scopo di visualizzazione.

Enumerazioni
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE Blu
BROWN Marrone
CYAN Ciano
DEEP_ORANGE ovvero "Arancio Rosso"
GREEN Verde
INDIGO Indaco
LIME Lime
ORANGE Arancia
PINK Rosa
PURPLE Viola
TEAL Verde acqua

Parametro RemoteConfig

Un valore di parametro associato a una chiave di parametro in google.firebase.remoteconfig.v1.RemoteConfig.parameters .

Affinché il parametro abbia effetto, deve essere presente almeno una voce defaultValue o conditionalValues .

Rappresentazione JSON
{
  "defaultValue": {
    object (RemoteConfigParameterValue)
  },
  "conditionalValues": {
    string: {
      object (RemoteConfigParameterValue)
    },
    ...
  },
  "description": string,
  "valueType": enum (ParameterValueType)
}
Campi
defaultValue

object ( RemoteConfigParameterValue )

Facoltativo: valore su cui impostare il parametro quando nessuna delle condizioni denominate restituisce true .

conditionalValues

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

Facoltativo: una mappa ( condition name , valore). Il nome_condizione con la priorità più alta (quello elencato per primo nell'elenco delle condizioni di RemoteConfig) determina il valore di questo parametro.

Un oggetto contenente un elenco di coppie "key": value . Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

description

string

Opzionale. Una descrizione per questo parametro. La sua lunghezza deve essere inferiore o uguale a 256 caratteri. Una descrizione può contenere qualsiasi carattere Unicode.

valueType

enum ( ParameterValueType )

Il tipo di dati per tutti i valori di questo parametro nella versione corrente del modello. Il valore predefinito è ParameterValueType.STRING se non specificato.

ValoreParametroConfigRemoto

Una risorsa RemoteConfigParameterValue contiene il valore che può avere un parametro.

Rappresentazione 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.
}
Campi
Campo unione value_option . Un RemoteConfigParameterValue è costituito da una stringa (valore) o da un valore booleano (use_in_app_default, impostato su true se applicabile). value_option può essere solo uno dei seguenti:
value

string

Il valore stringa su cui è impostato il parametro.

useInAppDefault

boolean

Se true, il parametro viene omesso dai valori dei parametri restituiti a un client.

personalizationValue

object ( PersonalizationValue )

Un valore dinamico, specifico dell'utente, calcolato quando viene recuperata la configurazione.

Valore di personalizzazione

Contiene le informazioni necessarie per ottenere un valore personalizzato.

Rappresentazione JSON
{
  "personalizationId": string
}
Campi
personalizationId

string

Identificatore che rappresenta una definizione di personalizzazione. Questa definizione viene utilizzata per risolvere il valore al momento del recupero della configurazione. Questo valore generato dal sistema non deve essere modificato.

TipoValoreParametro

Tipi di dati accettati per i valori dei parametri.

Enumerazioni
PARAMETER_VALUE_TYPE_UNSPECIFIED Soluzione generale per valori enum non riconosciuti.
STRING Rappresenta valori stringa.
BOOLEAN Rappresenta valori booleani ("vero" o "falso").
NUMBER Rappresenta valori interi e float sia positivi che negativi.
JSON Rappresenta i valori JSON.

RemoteConfigParameterGroup

Un gruppo denominato di parametri. Il raggruppamento dei parametri è solo a scopo di gestione e non influisce sul recupero dei valori dei parametri da parte del client.

Rappresentazione JSON
{
  "description": string,
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  }
}
Campi
description

string

Opzionale. Una descrizione per il gruppo. La sua lunghezza deve essere inferiore o uguale a 256 caratteri. Una descrizione può contenere qualsiasi carattere Unicode.

parameters

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

Mappa delle chiavi dei parametri sui relativi valori predefiniti facoltativi e valori condizionali facoltativi per i parametri che appartengono a questo gruppo. Un parametro appare solo una volta per RemoteConfig: un parametro non raggruppato appare al livello superiore; un parametro organizzato all'interno di un gruppo appare all'interno della mappa parametri del suo gruppo.

Un oggetto contenente un elenco di coppie "key": value . Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" } .