Что можно сделать с помощью Remote Config?

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

Запускайте новые функции с помощью механизма процентного внедрения

Вы можете использовать Remote Config для поэтапного внедрения новых функций, чтобы постепенно знакомить пользователей с ними. Предположим, у вас есть новая функция поиска, которая включается и отключается с помощью параметра Remote Config с именем new_search_feature_flag , и вы хотите начать с её внедрения для 10% вашей установленной пользовательской базы.

Для этого отредактируйте параметр new_search_feature_flag , добавьте новое условие и выберите «Пользователь в случайном процентном соотношении» . С помощью ползунка задайте случайное процентное соотношение в диапазоне от 0 до 10.

Изображение, перемещающееся по этапам графического интерфейса консоли Firebase для выполнения процентного развертывания существующего параметра
Добавление параметра для процентного внедрения функции

Теперь, когда значение new_search_feature_flag извлекается из Remote Config , 10% случайно выбранных пользователей получают значение true , тогда как остальные 90% получают значение false .

Когда вы будете удовлетворены стабильностью функции у 10% пользователей, вы можете увеличить ее до 30%, 50% и, в конечном итоге, до 100%, как только вы будете полностью уверены в функции.

Определите рекламные баннеры для вашего приложения, соответствующие платформе и региону.

Представьте, что вы планируете распродажу в интернет-магазине и хотите добавить в приложение рекламную страницу. Кроме того, представьте, что вы хотите настроить эту страницу в соответствии с локалью, установленной пользователем на его устройстве. Вы можете определить параметр promo_splash_graphic и присвоить ему значение статических URL-адресов (размещённых в Firebase Storage или где-то ещё), а затем динамически ссылаться на них в своём приложении.

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

Анимированное изображение, перемещающееся по этапам графического интерфейса консоли Firebase для определения рекламных баннеров, специфичных для платформы и региона.
Добавление параметра для локализованных промо-баннеров

Вы также можете использовать внутренние API-интерфейсы Remote Config для программного обновления значений параметров, а затем запускать функциональность из задания cron.

Предоставьте пользователям индивидуальный подход на основе первого использования приложения.

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

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

Предположим, вы хотите предложить внутриигровой подарок новым пользователям для стимулирования первоначальной вовлеченности и удержания, а также хотите предложить другую награду группе постоянных пользователей. Вы можете создать параметр extra_coin_splash , который управляет всплывающим окном с предложением бесплатной игровой валюты с настраиваемым текстом, количеством бонусных монет и максимальным количеством повторных показов предложения, если пользователь его не принял. Вы можете использовать значение по умолчанию в приложении в качестве параметра, а затем создать два условия.

Сначала добавьте к параметру Remote Config extra_coins_splash значение Conditional , которое нацелено на конкретное приложение Android или iOS, задайте для параметра First open дату и время в будущем, а затем задайте значение параметра следующим образом:

{"banner_text": "Welcome! Enjoy some extra coins!", "bonus_coins": 15, "max_display_retries": 2}

Затем добавьте условие для существующей группы пользователей, которую вы хотите наградить, например, всех пользователей, которые присоединились в июле и всё ещё играют в вашу игру в октябре. Для этого добавьте ещё одно условное значение к параметру extra_coins_splash , указав значение First open в период с 1 июля по 1 августа, и задайте для параметра следующее значение:

{"banner_text": "Thanks for being a loyal user!", "bonus_coins": 30, "max_display_retries": 2}:

Ваш окончательный параметр extra_coins_splash будет выглядеть следующим образом:

Remote Config parameter with conditional
values

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

В качестве следующего шага попробуйте провести эксперимент A/B Testing или персонализации с вашими параметрами и условиями таргетинга, используя различные баннерные сообщения и суммы бонусных монет.

Тестирование новых функций на ограниченной группе тестирования.

Обычно для тестирования новой функциональности в рамках ограниченной группы тестировщиков используется альфа-канал в Google Play или Test Flight для приложения Apple. Эти инструменты идеально подходят, если вы хотите тестировать новую функциональность в том же ритме, что и обычный цикл разработки.

Однако иногда может возникнуть необходимость в более быстром тестировании функции, которую хотелось бы легко включить или отключить независимо от времени выхода следующего релиза в рамках вашего цикла разработки. В таких случаях Remote Config может оказаться очень полезным инструментом.

Предположим, вы хотите протестировать новую графику среди сотрудников вашей компании. Как это можно реализовать с помощью Remote Config ?

При входе пользователей в ваше приложение проверяйте их идентификатор электронной почты и настройте свойство пользователя is_mydomain_employee=true , которое применяется только в том случае, если адрес электронной почты принадлежит вашему домену. Затем создайте условие, отслеживающее это свойство пользователя. Вы можете настроить это свойство пользователя в Remote Config и включить новую функцию только для этих пользователей.

Анимированное изображение, демонстрирующее шаги графического интерфейса консоли Firebase для тестирования новых функций на ограниченной группе тестирования.
Таргетирование групп тестирования с определенным заболеванием

Используйте JSON для настройки сложных сущностей в вашем приложении или игре.

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

Лучшим способом настройки такой системы входа было бы использование JSON и группировка всех этих параметров в один. Это значительно упростит редактирование и поддержку параметров login с течением времени.

Консоль Firebase предоставляет валидатор JSON и инструмент для печати, которые можно использовать при редактировании параметров Remote Config . При работе в консоли нажмите значок {} , чтобы открыть редактор.

Анимированное изображение, проходящее через этапы графического интерфейса консоли Firebase для настройки сложных сущностей с помощью JSON
Использование редактора JSON для группировки параметров

Отправка сообщения в Slack или по электронной почте при публикации обновления Remote Config

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

Для упрощения совместной работы вы можете получать оповещения практически в режиме реального времени через удобный вам сервис (Slack или электронную почту). REST API Remote Config вместе с фоновым триггером Remote Config в Cloud Functions for Firebase позволяют отправлять уведомления при каждом изменении шаблона Remote Config .

Недавно eBay открыл исходный код своей реализации того, как они используют Cloud Functions с Remote Config для публикации различий между предыдущими и новыми шаблонами Remote Config в канале Slack.