| Выберите платформу: | iOS+ Android Web Flutter Unity C++ |
Remote Config реального времени позволяет получать обновлённые ключи и значения параметров сразу после их публикации на сервере. Это позволяет быстро обновлять любые атрибуты приложений, управляемые значением параметра Remote Config . Благодаря обновлениям Remote Config в режиме реального времени вы можете:
- Снизьте риск, постепенно внедряя функции среди целевых пользователей и выполняя экстренный откат при необходимости.
- Повышайте вовлеченность пользователей, быстро настраивая пользовательский интерфейс по мере использования приложения. Например, вы можете обновлять баннеры и предлагать поощрения пользователям, которые соответствуют определённым параметрам Google Analytics или динамически корректировать сложность игры для определённых групп игроков.
- Уменьшите зависимости сборки и повысьте производительность разработчиков: используйте параметры Remote Config в качестве флагов функций, чтобы предоставить функциональность группам разработки и тестирования, при этом скрывая ее от пользователей в процессе производства.
Дополнительную информацию о способах использования Remote Config см. в разделе Что можно делать с помощью Remote Config ?
В этом руководстве вы:
- Узнайте больше о клиент-серверном взаимодействии, которое поддерживает обновления в режиме реального времени.
- Понять, как работает функциональность SDK в реальном времени.
- Узнайте, как использовать обновления в реальном времени, чтобы поддерживать конфигурацию вашего приложения в актуальном состоянии.
Клиент-серверное соединение в реальном времени
При реализации функции Remote Config в реальном времени в приложении вы создаёте прослушиватель в реальном времени, который открывает HTTP-соединение с бэкендом Remote Config . Запрос включает версию конфигурации, кэшированную на устройстве. Сервер Remote Config в реальном времени использует сообщение об аннулировании , чтобы сообщить приложению о необходимости загрузки новой версии конфигурации на стороне сервера.
Если на сервере установлена более новая версия, он немедленно отправляет сигнал об аннулировании. Если новой версии нет, соединение остаётся открытым и ждёт, пока оно не будет опубликовано на сервере. Когда клиентский SDK получает сигнал об аннулировании, он автоматически извлекает его, а затем вызывает функцию обратного вызова слушателя, зарегистрированную при открытии соединения. Эта функция аналогична функции извлечения, которую вы можете выполнить с помощью SDK, но обходит кэширование и настройку minimumFetchInterval . Клиент-серверное соединение поддерживается, пока приложение находится в активном режиме.

Поскольку соединение клиент-сервер осуществляется по протоколу HTTP, не требуется никаких зависимостей от других библиотек.
Следите за обновлениями
Обновления в режиме реального времени дополняют вызовы Remote Config fetch . Мы рекомендуем вызывать fetch при запуске приложения (или в любой момент в течение его жизненного цикла) и прослушивать обновления Remote Config режиме реального времени во время сеанса пользователя, чтобы гарантировать наличие актуальных значений сразу после их публикации на сервере.
Для прослушивания обновлений вызовите AddOnConfigUpdateListener , реализуя обратный вызов, который активируется при появлении обновления Remote Config в приложении. Этот вызов автоматически запускает прослушивание обновлений с сервера Remote Config . Подробнее о клиент-серверных отношениях см. в предыдущем разделе .
Обратный вызов часто является хорошим местом для использования activate , чтобы сделать обновлённые параметры конфигурации доступными для вашего приложения. Дополнительные стратегии активации значений параметров при использовании Remote Config в реальном времени см. в статье «Стратегии загрузки Remote Config Firebase».
Выборочно активировать значения параметров
При вызове AddOnConfigUpdateListener вы можете дождаться изменения и активировать его.
Обратный вызов onUpdate вызывается, когда новая версия шаблона была автоматически загружена и когда эта новая версия вносит изменения в активные значения параметров в приложении.
Эти обратные вызовы вызываются с параметром configUpdate . configUpdate содержит updated_keys — набор измененных ключей параметров, которые инициировали обновление в реальном времени, и включает в себя следующее:
- Ключи параметров, которые были добавлены или удалены
- Ключи параметров, значения которых изменились
- Ключи параметров, метаданные которых изменились (например, информация о персонализации Remote Config )
- Ключи параметров, источник значений которых изменился (например, значение по умолчанию в приложении обновилось до значения на стороне сервера)
Если вы используете прослушиватель в реальном времени в определенном представлении в своем приложении, вы можете проверить, изменились ли параметры, относящиеся к этому представлению, перед активацией.
Иногда выборка (инициированная либо при вызове метода fetch , либо с помощью Remote Config в реальном времени) не приводит к обновлению для клиента. В таких случаях метод onUpdate или завершение не вызываются.
Добавлять и удалять слушателей
AddOnConfigUpdateListener — основная точка входа для Remote Config режиме реального времени. Вызов этого прослушивателя в первый раз в жизненном цикле приложения открывает соединение с бэкендом. Последующие вызовы повторно используют то же соединение, мультиплексируя сообщение об аннулировании, описанное в клиент-серверном соединении в режиме реального времени .
Вызов возвращает «регистрацию прослушивателя», которая содержит метод Remove . Чтобы прекратить прослушивание, сохраните ссылку на регистрацию прослушивателя. Вызов remove останавливает прослушивание на уровне этой регистрации. Если это единственный зарегистрированный прослушиватель, вызов remove закрывает соединение с сервером в режиме реального времени.
Хотя вы можете вручную остановить прослушивание обновлений, зачастую это не требуется. Real-time Remote Config автоматически останавливает прослушивание обновлений, когда приложение переходит в фоновый режим, и перезапускается, когда оно переходит в активный режим.
Следующие шаги
Ознакомьтесь с разделом Начало работы с Firebase Remote Config , чтобы настроить Remote Config и начать прослушивать обновления в режиме реального времени .