RemoteConfig

Zdalna konfiguracja reprezentuje szablon Zdalnej konfiguracji.

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

Uwaga: szablony serwera obsługują obecnie warunki procentowe. Opublikowanie szablonu serwera z nieobsługiwanymi wartościami warunkowymi spowoduje zwrócenie błędu weryfikacji. Więcej informacji znajdziesz w artykule Zdalna konfiguracja w środowiskach serwerów.

Ostateczna wartość parametru jest określana w ten sposób:

Biorąc pod uwagę wartość conditional values odwołującą się do true conditions dla instancji aplikacji, ostateczną wartością parametru jest wartość warunkowa, której name jest najwcześniejszą wartością w conditions list.

W przeciwnym razie, jeśli parametr ma wartość default value, otrzymana wartość będzie ustawiona na wartość domyślną.

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

Załóżmy np., że mamy klucz parametru fruit z wartością domyślną pear i mapą podrzędną {"is_ios": "apple", "is_in_20_percent": "banana"} wartości warunkowej, gdzie "is_ios" i "is_20_percent" to nazwy warunków na liście warunków uporządkowanej. Wartość fruit będzie zwracana jako apple, jeśli is_ios ma wartość prawda. W przeciwnym razie, jeśli is_in_20_percent ma wartość true, fruit wyznaczy wartość banana, a jeśli zarówno is_ios, jak i is_in_20_percent mają wartość fałsz, fruit otrzyma wartość pear. Jeśli nie określono wartości domyślnej, a parametry is_ios i is_in_20_percent miały wartość Fałsz, serwer Zdalnej konfiguracji nie zwraca żadnej wartości parametru fruit.

Po opublikowaniu szablonu Zdalnej konfiguracji projektu za pomocą udanego wywołania projects.updateRemoteConfig klienty mogą pobrać te wartości parametrów i wyświetlać je użytkownikom.

Zapis 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, oprócz wersji description. Metadane powiązane z konkretną wersją szablonu. Pole opisu wersji można określić w wywołaniach funkcji projects.updateRemoteConfig.

parameterGroups

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

Mapa nazw grup parametrów na ich opisy i pogrupowane parametry. Nazwa grupy można zmienić, ale musi być niepowtarzalna wśród grup w konfiguracji. Nazwa może mieć maksymalnie 256 znaków i jest czytelna dla człowieka. Dozwolone są dowolne znaki Unicode.

Grupy mają listę parametrów, która umożliwia użytkownikom interfejsu API grupowanie parametrów powiązanych z tą samą funkcją lub motywem, co ułatwia dostęp do danych organizacji.

Na przykład grupa parametrów o nazwie „Wyszukiwarka V2” może mieć description „Nowy widok wyszukiwarki mobilnej” oraz zawierają parametry układu i czcionki w nowym wyszukiwaniu.

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

Warunek Zdalnej konfiguracji

Warunek kierowany na określoną grupę użytkowników. Lista tych warunków tworzy część obiektu Zdalnej konfiguracji.

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

string

Wymagane. Niepusta i niepowtarzalna nazwa tego warunku.

expression

string

Wymagane. Logika tego warunku.

Poprawną składnię tego pola znajdziesz w dokumentacji wyrażeń warunku.

tagColor

enum (ConditionDisplayColor)

Opcjonalnie. Kolor powiązany z tym warunkiem do wyświetlania w konsoli Firebase. Nie określono tej wartości lub wartość „condition_DISPLAY_color_UNSPECIFIED” spowoduje, że konsola wybierze dowolny kolor, który zostanie powiązany z warunkiem.

Kolor wyświetlania warunków

Lista kolorów powiązanych z Warunkami w celu wyświetlania.

Wartości w polu enum
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE Niebieski
BROWN Brązowy
CYAN Cyjan
DEEP_ORANGE (inaczej „Czerwony pomarańczowy”)
GREEN Zielony
INDIGO Indygo
LIME Limonkowy
ORANGE Orange
PINK Różowy
PURPLE Fioletowy
TEAL Morski

Parametr Zdalnej konfiguracji

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

Aby parametr miał zastosowanie, powinien zawierać co najmniej wpis defaultValue lub conditionalValues.

Zapis 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, gdy żaden z nazwanych warunków nie przyjmuje wartości true.

conditionalValues

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

Opcjonalnie: mapa (condition name, wartość). Wartość tego parametru określa nazwa_warunku o najwyższym priorytecie (umieszczonego jako pierwsza na liście warunków Zdalnej konfiguracji).

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

description

string

Opcjonalnie. Opis tego parametru. Może mieć maksymalnie 256 znaków . Opis może zawierać dowolne znaki Unicode.

valueType

enum (ParameterValueType)

Typ danych wszystkich wartości tego parametru w bieżącej wersji szablonu. Jeśli nie określono inaczej, domyślna wartość to ParameterValueType.STRING.

Wartość parametru RemoteConfig

Zasób RemoteConfigParametrValue zawiera wartość, którą może mieć parametr.

Zapis JSON
{

  // Union field value_option can be only one of the following:
  "value": string,
  "useInAppDefault": boolean,
  "personalizationValue": {
    object (PersonalizationValue)
  },
  "rolloutValue": {
    object (RolloutValue)
  }
  // End of list of possible types for union field value_option.
}
Pola
Pole sumy value_option. Wartość RemoteConfigParametrValue składa się z ciągu znaków (wartość) lub z wartości logicznej (use_in_app_default; w odpowiednich przypadkach ma wartość „true”). value_option może mieć tylko jedną z tych wartości:
value

string

Wartość ciągu znaków, do której jest ustawiony parametr.

useInAppDefault

boolean

Jeśli ma wartość prawda, parametr jest pomijany w wartościach parametru zwracanych klientowi.

personalizationValue

object (PersonalizationValue)

Dynamiczna wartość właściwa dla użytkownika, obliczana podczas pobierania konfiguracji.

rolloutValue

object (RolloutValue)

Dynamiczna wartość wdrożenia zarządzana przez usługę eksperymentalną Firebase ABT.

Wartość personalizacji

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

Zapis JSON
{
  "personalizationId": string
}
Pola
personalizationId

string

Identyfikator określający definicję personalizacji. Ta definicja służy do rozpoznawania wartości podczas pobierania konfiguracji. Tej wartości wygenerowanej przez system nie należy zmieniać.

Wartość wdrożenia

Informacje dotyczące wdrożenia.

Zapis JSON
{
  "rolloutId": string,
  "value": string,
  "percent": number
}
Pola
rolloutId

string

Identyfikator, który wiąże wartość parametru z eksperymentem wdrażania.

value

string

Wartość określona przez użytkownika do wdrożenia.

percent

number

Odsetek użytkowników, którzy otrzymają wartość wdrożenia.

Typ wartości parametru

Akceptowane typy danych wartości parametrów.

Wartości w polu enum
PARAMETER_VALUE_TYPE_UNSPECIFIED Zbiorczy adres dla nierozpoznanych wartości wyliczeniowych.
STRING Reprezentuje wartości typu ciąg znaków.
BOOLEAN Reprezentuje wartości logiczne („true” lub „false”).
NUMBER Reprezentuje zarówno dodatnie i ujemne liczby całkowite, jak i wartości zmiennoprzecinkowe.
JSON Reprezentuje wartości JSON.

Grupa parametrów Zdalnej konfiguracji

Nazwana grupa parametrów. Parametry grupowania służą tylko do zarządzania i nie wpływają na pobieranie wartości parametrów po stronie klienta.

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

string

Opcjonalnie. Opis grupy. Może mieć maksymalnie 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 Zdalną konfigurację: niezgrupowany parametr pojawia się na najwyższym poziomie. parametr zorganizowany w ramach grupy pojawia się na mapie parametrów tej grupy.

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