Интеграция Varioqub React Native

Varioqub React Native — это плагин для платформы React Native. Он включает поддержку Varioqub SDK для Android и iOS.

Системные требования:

  • React Native 0.74 и выше.
  • Node.js 18.

Чтобы использовать плагин с Expo, нужно выполнить инструкции для библиотек, работающих с нативной частью, так как плагин обращается к нативным Android/iOS-библиотекам.

Для работы плагина Varioqub React Native подключите и инициализируйте плагин AppMetrica React Native. Подробнее о том, как это можно сделать, читайте в документации AppMetrica React Native.

Ниже описаны этапы подключения и инициализации Varioqub React Native.

Общие рекомендации при интеграции

  1. При старте новой сессии вызывайте метод activateConfig(), чтобы получить значения сохраненных флагов.

  2. Запускайте fetchConfig() в фоне, чтобы выгрузить новые значения флагов с сервера и активировать их при старте следующей сессии.

  3. Не рекомендуется вызывать метод activateConfig() в середине сессии — это может привести к неконсистентному поведению приложения.

Шаг 1. Подключите плагин Varioqub React Native

  1. Установите плагин Varioqub React Native в ваш проект:

    yarn add @appmetrica/react-native-varioqub
    
    npm install @appmetrica/react-native-varioqub
    
  2. Для проектов на платформе iOS выполните следующую консольную команду:

    npx pod-install
    
  3. Пересоберите ваше приложение:

    # Android:
    npx react-native run-android
    
    # iOS:
    npx react-native run-ios
    
  1. Плагин использует нативные библиотеки Android и iOS. Чтобы использовать нативный код, создайте development build. Подробнее.

    npx expo install expo-dev-client
    
  2. Установите плагин Varioqub React Native в ваш проект:

    npx expo install @appmetrica/react-native-varioqub
    
  3. Пересоберите ваше приложение:

    # Android:
    npx expo run:android
    
    # iOS:
    npx expo run:ios
    

Шаг 2. Инициализируйте библиотеку

  1. Импортируйте библиотеку в исходном коде вашего проекта:

    import Varioqub from '@appmetrica/react-native-varioqub';
    

    В этом случае используйте Varioqub в коде проекта для работы с библиотекой.

  2. Инициализируйте библиотеку Varioqub с помощью метода initVarioqubWithAppMetricaAdapter():

    Varioqub.initVarioqubWithAppMetricaAdapter({
        clientId: 'appmetrica.1234567',
        clientFeatures: {
            my_cool_feature: 'true',
            mode: 'night'
        },
    });
    

Для инициализации библиотеки используется метод initVarioqubWithAppMetricaAdapter(settings: VarioqubSettings). В качестве параметров он принимает объект VarioqubSettings.

Содержит обязательные и опциональные настройки:

Обязательные

  • clientId — идентификатор проекта в формате appmetrica.XXXXXX, где XXXXXX — идентификатор приложения из интерфейса AppMetrica (например, VarioqubSettings("appmetrica.1234567")).

    Совет

    ID приложения можно получить на странице Настройки AppMetrica: скопируйте его из Общие настройкиID приложения.

Опциональные

  • clientFeatures — список пользовательских параметров. Например, признак того, что пользователь подписан на рассылки.

  • fetchThrottleIntervalSeconds — ограничение частоты обновления конфига в секундах. Рекомендуется использовать только для тестирования.

  • url — изменение URL для ответов сервера. Используется только для тестов.

  • logs — включение внутреннего логирования. При обращении в поддержку лучше сначала включить логирование и отправить лог с описанием проблемы.

  • activateEvent — отправка события при активации конфигурации флагов. По умолчанию отправка события включена.

Пример интеграции Varioqub SDK на GitHub.

Шаг 3. Задайте конфигурацию по умолчанию

Вы можете установить конфигурацию по умолчанию, чтобы ваше приложение использовало необходимые значения параметров до того, как оно подключится к серверу с удаленной конфигурацией. Для этого передайте список параметров с помощью метода setDefaults(map: Map<string, any>).

Вы можете скачать XML-файл конфигурации по умолчанию со страницы Конфиг флагов.

Шаг 4. Запустите обновление конфигурации флагов в фоне и активируйте конфигурацию

Чтобы использовать самую свежую конфигурацию флагов из интерфейса, запустите фоновое обновление конфигурации с помощью метода fetchConfig().

Каждый раз при получении самой свежей версии конфигурации (чаще всего это происходит при старте новой сессии) необходимо активировать ее с помощью метода activateConfig().

Совет

Основной сценарий использования:

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

Varioqub.fetchConfig(
  () => {
    Varioqub.activateConfig();
  },
  () => {
    console.log('Something went wrong');
  },
);

Получение флагов из интерфейса

Значения флагов вычисляются и предоставляются в следующем порядке:

  1. Флаг есть в эксперименте.
  2. Флаг есть в загруженной конфигурации.
  3. Флаг есть в конфигурации по умолчанию.

Методы для получения флагов:

  • Varioqub.getString(key, default).

Пример кода:

Varioqub.getString("key", "default_value");

Получение ID устройства для проверки эксперимента

Для получения ID устройства используйте метод Varioqub.getId():

Varioqub.getId();

Примечание

До первого успешного вызова fetchConfig метод Varioqub.getId() может возвращать пустой ответ.

Подробнее о создании и проверке эксперимента читайте в разделе Создание эксперимента.

Предыдущая
Следующая