RemoteConfig

RemoteConfig reprezentuje szablon zdalnej konfiguracji.

Szablon zdalnej konfiguracji projektu jest oceniany podczas pobierania każdej instancji aplikacji.

Ustaloną wartość parametru określa się w następujący sposób:

Biorąc pod uwagę conditional values , które odnoszą się do true conditions instancji aplikacji, ustaloną wartością parametru jest wartość warunkowa, której name znajduje się najwcześniej na conditions list .

W przeciwnym razie, jeśli parametr ma default value , rozwiązana wartość jest ustawiana na wartość domyślną.

W przeciwnym razie parametr nie ma wartości i jest pomijany w wynikach pobierania instancji aplikacji.

Załóżmy na przykład, że mamy parametr klucz fruit , z wartością domyślną pear i podmapą wartości warunkowej {"is_ios": "apple", "is_in_20_percent": "banana"} gdzie "is_ios" i "is_20_percent" to nazwy warunków w uporządkowanym lista warunków. Wartość fruit będzie równa apple , jeśli is_ios ma wartość true. W przeciwnym razie, jeśli is_in_20_percent ma wartość true , fruit zostanie oceniony jako banana , a jeśli is_ios i is_in_20_percent mają wartość false, fruit zostanie oceniony jako pear . Jeśli nie określono wartości domyślnej, a is_ios i is_in_20_percent miały wartość false, żadna wartość fruit nie zostałaby zwrócona z serwera Remote Config do klienta.

Po opublikowaniu szablonu zdalnej konfiguracji projektu za pomocą pomyślnego wywołania projects.updateRemoteConfig klienci mogą pobrać wartości tych parametrów i wyświetlić je użytkownikom.

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

object ( RemoteConfigCondition )

Lista warunków w kolejności malejącej według priorytetu.

Wartości wpisów google.firebase.remoteconfig.v1.RemoteConfigCondition.name muszą być unikalne.

parameters

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

Mapa kluczy parametrów na ich opcjonalne wartości domyślne i opcjonalne wartości warunkowe.

Obiekt zawierający listę par "key": value . Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

version

object ( Version )

Tylko dane wyjściowe, z wyjątkiem description wersji. Metadane powiązane z konkretną wersją szablonu. Pole opisu wersji można określić w wywołaniach projects.updateRemoteConfig .

parameterGroups

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

Mapa nazw grup parametrów do ich opisów i zgrupowanych parametrów. Nazwa grupy jest zmienna, ale musi być unikalna wśród grup w konfiguracji. Nazwa może mieć maksymalnie 256 znaków i być czytelna dla człowieka. Dozwolone są dowolne znaki Unicode.

Grupy zawierają listę parametrów, która umożliwia użytkownikom interfejsu API grupowanie parametrów powiązanych z tą samą funkcją lub motywem w celu ułatwienia dostępu organizacyjnego.

Na przykład grupa parametrów o nazwie „Wyszukiwanie V2” może mieć description „Nowy widok wyszukiwania mobilnego” i zawierać parametry układu i czcionki nowego wyszukiwania.

Obiekt zawierający listę par "key": value . Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

Warunek zdalnej konfiguracji

Warunek skierowany do określonej grupy użytkowników. Lista tych warunków stanowi część obiektu RemoteConfig.

Reprezentacja JSON
{
  "name": string,
  "expression": string,
  "tagColor": enum (ConditionDisplayColor)
}
Pola
name

string

Wymagany. Niepusta i unikalna nazwa tego warunku.

expression

string

Wymagany. Logika tego warunku.

Zobacz dokumentację dotyczącą wyrażeń warunkowych , aby zapoznać się z oczekiwaną składnią tego pola.

tagColor

enum ( ConditionDisplayColor )

Opcjonalny. Kolor powiązany z tym warunkiem do celów wyświetlania w konsoli Firebase. Nieokreślenie tej wartości lub posiadanie „CONDITION_DISPLAY_COLOR_UNSPECIFIED” powoduje, że konsola wybiera dowolny kolor, który ma zostać powiązany z warunkiem.

StanWyświetlaczKolor

Lista kolorów skojarzonych z Warunkami na potrzeby wyświetlania.

Wyliczenia
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE Niebieski
BROWN brązowy
CYAN Cyjan
DEEP_ORANGE czyli „Czerwona Pomarańcza”
GREEN Zielony
INDIGO Indygo
LIME Limonka
ORANGE Pomarańczowy
PINK Różowy
PURPLE Fioletowy
TEAL Cyraneczka

Parametr RemoteConfig

Wartość parametru powiązana z kluczem parametru w google.firebase.remoteconfig.v1.RemoteConfig.parameters .

Aby parametr miał jakikolwiek skutek, powinien istnieć co najmniej wpis defaultValue lub conditionalValues .

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

object ( RemoteConfigParameterValue )

Opcjonalnie — wartość, na którą należy ustawić parametr, jeśli żaden z wymienionych warunków nie ma wartości true .

conditionalValues

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

Opcjonalnie - mapa ( condition name , wartość). Nazwa_warunku o najwyższym priorytecie (ten wymieniony jako pierwszy na liście warunków RemoteConfig) określa wartość tego parametru.

Obiekt zawierający listę par "key": value . Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

description

string

Opcjonalny. Opis tego parametru. Jego długość musi być mniejsza lub równa 256 znaków. Opis może zawierać dowolne znaki Unicode.

valueType

enum ( ParameterValueType )

Typ danych dla wszystkich wartości tego parametru w bieżącej wersji szablonu. Domyślnie jest to ParameterValueType.STRING , jeśli nie jest określony.

Wartość parametru RemoteConfig

Zasób RemoteConfigParameterValue zawiera wartość, jaką może mieć parametr.

Reprezentacja 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.
}
Pola
Pole Unii value_option . Wartość RemoteConfigParameterValue składa się z ciągu znaków (wartości) lub wartości logicznej (use_in_app_default, ustawiona na wartość true, jeśli ma to zastosowanie). value_option może mieć tylko jedną z następujących wartości:
value

string

Wartość ciągu, na którą ustawiony jest parametr.

useInAppDefault

boolean

Jeśli ma wartość true, parametr jest pomijany w wartościach parametrów zwracanych klientowi.

personalizationValue

object ( PersonalizationValue )

Dynamiczna, specyficzna dla użytkownika wartość obliczana podczas pobierania konfiguracji.

Wartość personalizacji

Zawiera informacje niezbędne do pobrania spersonalizowanej wartości.

Reprezentacja JSON
{
  "personalizationId": string
}
Pola
personalizationId

string

Identyfikator reprezentujący definicję personalizacji. Ta definicja służy do rozpoznawania wartości w czasie pobierania konfiguracji. Tej wartości wygenerowanej przez system nie należy modyfikować.

Typ wartości parametru

Akceptowane typy danych dla wartości parametrów.

Wyliczenia
PARAMETER_VALUE_TYPE_UNSPECIFIED Przechwytywanie wszystkich nierozpoznanych wartości wyliczeniowych.
STRING Reprezentuje wartości ciągu.
BOOLEAN Reprezentuje wartości logiczne („prawda” lub „fałsz”).
NUMBER Reprezentuje dodatnie i ujemne wartości całkowite i zmiennoprzecinkowe.
JSON Reprezentuje wartości JSON.

Grupa parametrów RemoteConfig

Nazwana grupa parametrów. Grupowanie parametrów służy wyłącznie do celów zarządzania i nie ma wpływu na pobieranie wartości parametrów po stronie klienta.

Reprezentacja JSON
{
  "description": string,
  "parameters": {
    string: {
      object (RemoteConfigParameter)
    },
    ...
  }
}
Pola
description

string

Opcjonalny. Opis grupy. Jego długość musi być mniejsza lub równa 256 znaków. Opis może zawierać dowolne znaki Unicode.

parameters

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

Mapa kluczy parametrów na ich opcjonalne wartości domyślne i opcjonalne wartości warunkowe dla parametrów należących do tej grupy. Parametr pojawia się tylko raz na RemoteConfig: niezgrupowany parametr pojawia się na najwyższym poziomie; parametr zorganizowany w grupie pojawia się na mapie parametrów tej grupy.

Obiekt zawierający listę par "key": value . Przykład: { "name": "wrench", "mass": "1.3kg", "count": "3" } .