RemoteConfig

Zdalna konfiguracja reprezentuje szablon Zdalnej konfiguracji.

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

Uwaga: szablony serwerów 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 serwera.

Wartość znaleziona parametru jest określana w ten sposób:

Biorąc pod uwagę wartość conditional values, która w przypadku danej instancji aplikacji odwołuje się do true conditions, otrzymana wartość parametru jest wartością warunkową, której name jest najwcześniejszą wartością w parametrze conditions list.

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

W przeciwnym razie parametr nie będzie miał wartości i będzie pomijany w wyniku pobranym przez instancję aplikacji.

Załóżmy np., że mamy klucz parametru fruit o wartości domyślnej pear i podmapę wartości warunkowych {"is_ios": "apple", "is_in_20_percent": "banana"}, gdzie "is_ios" i "is_20_percent" to nazwy warunków na liście warunków uporządkowanych. Jeśli is_ios ma wartość prawda, wartość fruit będzie wskazywać apple. W przeciwnym razie, jeśli is_in_20_percent ma wartość true, fruit zwróci wartość banana, a jeśli is_ios i is_in_20_percent mają wartość fałszywą, fruit zwróci wartość pear. Jeśli nie określono wartości domyślnej, a is_ios i is_in_20_percent miały wartość Fałsz, z serwera Zdalnej konfiguracji nie zostałaby zwrócona klientowi żadna wartość parametru fruit.

Gdy szablon Zdalnej konfiguracji projektu zostanie opublikowany za pomocą udanego wywołania projects.updateRemoteConfig, klienci mogą pobierać wartości tych 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))

Zmapuj klucze 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 wersji description. 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 na ich opisy i pogrupowane parametry. Nazwa grupy może się zmieniać, ale musi być niepowtarzalna 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 mają listę parametrów, które pozwalają użytkownikom interfejsu API grupować parametry powiązane z tą samą funkcją lub motywem, aby ułatwić dostęp do nich w organizacji.

Na przykład grupa parametrów o nazwie „Wyszukiwanie w wersji 2” może zawierać parametry description „Nowy widok wyszukiwarki mobilnej” oraz 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 kierowany na określoną grupę użytkowników. Lista tych warunków stanowi część obiektu Zdalnej konfiguracji.

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

string

To pole jest wymagane. Niepusta i unikalna nazwa tego warunku.

expression

string

To pole jest wymagane. Logika tego warunku.

Prawidłową 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. Jeśli nie określisz tej wartości lub jeśli wystąpi warunek „Condition_DISPLAY_COLOR_UNSPECIFIED”, konsola wybierze dowolny kolor, który zostanie powiązany z warunkiem.

KolorWyświetlania Warunku

Lista kolorów powiązanych z warunkami do wyświetlania.

Wartości w polu enum
CONDITION_DISPLAY_COLOR_UNSPECIFIED
BLUE Niebieski
BROWN Brązowy
CYAN Cyjan
DEEP_ORANGE Określane też jako „Czerwonopomarańczowy”
GREEN Zielony
INDIGO Indygo
LIME Wapno
ORANGE Pomarańczowy
PINK Różowy
PURPLE Fioletowy
TEAL Morski

Parametr RemoteConfig

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

Aby parametr działał, wymagany jest co najmniej wpis defaultValue lub conditionalValues.

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

object (RemoteConfigParameterValue)

Opcjonalne – ustaw wartość parametru, gdy żaden z nazwanych warunków nie jest wartością true.

conditionalValues

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

Opcjonalnie: mapa (condition name, wartość). Wartość tego parametru zależy od parametru „condition_name”, który ma najwyższy priorytet (ten, który jest wymieniony jako pierwszy 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 parametru. Nie może przekroczyć 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. Jeśli nie określono inaczej, domyślna wartość to ParameterValueType.STRING.

Wartość parametru RemoteConfig

Zasób RemoteConfigParameterValue zawiera wartość, jaką 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. Parametr RemoteConfigParameterValue składa się z ciągu znaków (wartość) lub wartości logicznej (use_in_app_default; w razie potrzeby ustaw wartość „true”). value_option może być tylko jedną z tych wartości:
value

string

Wartość ciągu znaków ustawiona dla parametru.

useInAppDefault

boolean

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

personalizationValue

object (PersonalizationValue)

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

rolloutValue

object (RolloutValue)

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

Wartość personalizacji

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

Zapis JSON
{
  "personalizationId": string
}
Pola
personalizationId

string

Identyfikator, który reprezentuje definicję personalizacji. Ta definicja służy do rozpoznawania wartości w czasie pobierania konfiguracji. Tej wartości wygenerowanej przez system nie należy zmieniać.

Wartość wdrożenia

Informacje związane z wdrożeniem.

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

string

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

value

string

Określona przez użytkownika wartość do wdrożenia.

percent

number

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

Typ wartości parametru

Akceptowane typy danych dla wartości parametrów.

Wartości w polu enum
PARAMETER_VALUE_TYPE_UNSPECIFIED Zbiorczy adresat dla nierozpoznanych wartości wyliczeniowych.
STRING Reprezentuje wartości ciągu znaków.
BOOLEAN Reprezentuje wartości logiczne („true” lub „false”).
NUMBER Przedstawia dodatnią i ujemną liczbę całkowitą oraz zmiennoprzecinkową.
JSON Reprezentuje wartości JSON.

Grupa parametrów Zdalnej konfiguracji

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

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

string

Opcjonalnie. Opis grupy. Nie może przekroczyć 256 znaków. Opis może zawierać dowolne znaki Unicode.

parameters

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

Zmapuj klucze parametrów na ich opcjonalne wartości domyślne i opcjonalne wartości warunkowe w przypadku parametrów należących do tej grupy. Parametr występuje tylko raz w danej konfiguracji Zdalnej konfiguracji: niezgrupowany parametr pojawia się na najwyższym poziomie, natomiast parametr uporządkowany w grupie pojawia się na mapie parametrów odpowiedniej grupy.

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