Невозможно включить тестирование AB для приложения React Native

Я интегрирую A/B-тестирование для своего приложения React Native с использованием Firebase. Я попробовал два метода - с использованием реакции-нативного-ab и реакции-нативный-ab-test.

В первом случае я получаю сообщение об ошибке: "undefined не является объектом (оценка PropTypes.string)"

Во втором случае я получаю сообщение об ошибке, в котором говорится, что "index.ios.js пытается запросить" response-native ", но есть несколько файлов, предоставляющих этот модуль. Вы можете удалить или исправить их".

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

Ссылки: https://github.com/lwansbrough/react-native-ab https://github.com/landaio/react-native-ab-test

2 ответа

Я установил его с этим модулем, и он работает отлично, вы можете попробовать это:

https://github.com/invertase/react-native-firebase

https://rnfirebase.io/docs/v5.x.x/getting-started

а затем настроить удаленный конфиг так, чтобы у вас работал тест ab

https://rnfirebase.io/docs/v5.x.x/config/reference/config

Я использую A/B-тестирование и работает для меня с этим модулем:

"react-native-firebase": "3.3.1",

и потребности pod тоже.

pod 'Firebase/Core', '~> 5.11.0'
pod 'Firebase/RemoteConfig', '~> 5.11.0'

Моя логика

import firebase from 'react-native-firebase';

setRemoteConfigDefaults() {
    if (__DEV__) {
      firebase.config().enableDeveloperMode();
    }

    // Set default values
    firebase.config().setDefaults({
      my_variant_remote_config_param: ''
    });
  }

/**
 * FIREBASE remote config fetch
 * @param valueToFetch: remote config key
 */
export const fetchRemoteConfig = async (valueToFetch: RemoteConfigKeysTypes): Promise<string> => {
  try {
    await firebase.config().fetch();
    await firebase.config().activateFetched();
    const snapshot = await firebase.config().getValue(valueToFetch);

    const response = snapshot.val();

    return response;
  } catch (error) {
    firebase.analytics().logEvent('remote_config_get_value_error', { error, key: valueToFetch });
    return null;
  }
};

Дополнительная информация: https://www.npmjs.com/package/react-native-firebase

Другие вопросы по тегам