Catch up on everthing we announced at this year's Firebase Summit. Learn more

Начать работу с Firebase Remote Config

Вы можете использовать Firebase Remote Config для определения параметров в вашем приложении и обновления их значений в облаке, что позволяет вам изменять внешний вид и поведение вашего приложения без распространения обновления приложения. Это руководство проведет вас через шаги , чтобы начать работу и предоставляет некоторые примеры кода, все из которых доступно для клона или загрузить с firebase / быстрым стартом-JS хранилище GitHub.

Добавьте Remote Config в свое приложение

  1. Установите Firebase SDK для Web.

  2. Создайте одноэлементный объект Remote Config:

    Веб-версия 9

    import { getRemoteConfig } from "firebase/remote-config";
    
    const remoteConfig = getRemoteConfig();

    Веб-версия 8

    const remoteConfig = firebase.remoteConfig();

    Этот объект используется для хранения значений параметров по умолчанию в приложении, получения обновленных значений параметров из серверной части Remote Config и управления тем, когда полученные значения становятся доступными для вашего приложения.

  3. Установите минимальный интервал выборки:

    Веб-версия 9

    remoteConfig.settings.minimumFetchIntervalMillis = 3600000;

    Веб-версия 8

    remoteConfig.settings.minimumFetchIntervalMillis = 3600000;

    Во время разработки рекомендуется установить относительно низкий минимальный интервал выборки. См дросселирования для получения дополнительной информации.

Установить значения параметров по умолчанию в приложении

Вы можете установить значения параметров по умолчанию внутри приложения в объекте Remote Config, чтобы ваше приложение работало так, как задумано, прежде чем оно подключится к серверной части Remote Config, и чтобы значения по умолчанию были доступны, если они не установлены на серверной части.

Веб-версия 9

remoteConfig.defaultConfig = {
  "welcome_message": "Welcome"
};

Веб-версия 8

remoteConfig.defaultConfig = {
  "welcome_message": "Welcome"
};

Получите значения параметров для использования в вашем приложении

Теперь вы можете получать значения параметров из объекта Remote Config. Если позже вы установите значения в бэкэнде, получите их, а затем активируете, эти значения будут доступны вашему приложению. Для того, чтобы получить эти значения, вызовите getValue() метод, обеспечивающий ключ параметра в качестве аргумента.

Веб-версия 9

import { getValue } from "firebase/remote-config";

const val = getValue(remoteConfig, "welcome_messsage");

Веб-версия 8

const val = remoteConfig.getValue("welcome_messsage");

Установить значения параметров

Использование Firebase консоли или удаленного API - интерфейсы бэкэнд Config , вы можете создать новые значения на стороне сервера по умолчанию , которые переопределяют значения в приложении в соответствии с нужной условной логики или пользовательский таргетинг. В этом разделе описаны шаги консоли Firebase для создания этих значений.

  1. В Firebase консоли , откройте свой проект.
  2. Выберите Remote Config из меню для просмотра удаленной приборной панели Config.
  3. Определите параметры с теми же именами, что и параметры, которые вы определили в своем приложении. Для каждого параметра вы можете установить значение по умолчанию (которое в конечном итоге переопределит значение по умолчанию в приложении), а также вы можете установить условные значения. Чтобы узнать больше, см Удаленная настройка параметров и условий .

Получить и активировать значения

  1. Для извлечения значения параметров из удаленного Config бэкэнда, вызовите fetchConfig() метод. Любые значения, которые вы устанавливаете на серверной части, извлекаются и кэшируются в объекте Remote Config.
  2. Для того, чтобы надуманные значения параметров доступны для вашего приложения, вызовите activate() метод.

В тех случаях , когда вы хотите , чтобы принести и активизируют значения в одном вызове, используйте fetchAndActivate() , как показано в следующем примере:

Веб-версия 9

import { fetchAndActivate } from "firebase/remote-config";

fetchAndActivate(remoteConfig)
  .then(() => {
    // ...
  })
  .catch((err) => {
    // ...
  });

Веб-версия 8

remoteConfig.fetchAndActivate()
  .then(() => {
    // ...
  })
  .catch((err) => {
    // ...
  });

Поскольку эти обновленные значения параметров влияют на поведение и внешний вид вашего приложения, вы должны активировать полученные значения в то время, которое обеспечивает удобство работы вашего пользователя, например, когда пользователь в следующий раз откроет ваше приложение. См Удаленные стратегии загрузки Config для получения более подробной информации и примеров.

Дросселирование

Если приложение выполняет выборку слишком много раз за короткий период времени, вызовы выборки могут быть ограничены. В таких случаях SDK бросает FETCH_THROTTLE ошибки. Рекомендуется перехватить эту ошибку и повторить попытку в режиме экспоненциальной отсрочки, ожидая более длительных интервалов между последующими запросами на выборку.

Во время разработки приложения вам может потребоваться очень часто обновлять кеш (много раз в час), чтобы вы могли быстро выполнять итерации при разработке и тестировании приложения. Для размещения быстрой итерации проекта с многочисленными разработчиками, вы можете временно добавить свойство с низкой минимальной выборкой интервала ( Settings.minimumFetchIntervalMillis ) в вашем приложении.

По умолчанию и рекомендуемый интервал производственной выборки для Remote Config составляет 12 часов, что означает, что конфигурации не будут извлекаться из серверной части более одного раза в 12-часовом окне, независимо от того, сколько вызовов выборки фактически сделано. В частности, минимальный интервал выборки определяется в следующем порядке:

  1. Параметр Settings.minimumFetchIntervalMillis .
  2. Значение по умолчанию 12 часов.

Следующие шаги

Если вы уже не имеете, изучить Удаленная настройка вариантов использования , и взглянуть на некоторые из ключевых концепций и передовых стратегий документации, в том числе: