Как открыть / закрыть Admob с помощью Firebase Remote Config? - PullRequest
1 голос
/ 30 мая 2019

Я новичок в Flutter и Remote Config. В моем проекте я пытаюсь закрыть свои рекламные баннеры из удаленного конфига, как утверждение true / false, но я думаю, что что-то упустил. Буду очень признателен, если вы дадите мне совет.

Я импортировал удаленный плагин для флаттера и сделал интеграцию с Android. После этого я его инициализирую

Future<RemoteConfig> setupRemoteConfig() async {
  final RemoteConfig remoteConfig = await RemoteConfig.instance;
  // Enable developer mode to relax fetch throttling
  remoteConfig.setConfigSettings(RemoteConfigSettings(debugMode: true));
  await remoteConfig.activateFetched();
  remoteConfig.setDefaults(<String, dynamic>{
    'admob_status': 'true',
  });
  return remoteConfig;
}

и после этого я добавил оператор ниже в свой виджет сборки.

var value = remoteConfig.getString("admob_status");

    if(value == "true"){
      FirebaseAdMob.instance.initialize(appId: FirebaseAdMob.testAppId)
          .then((response) {
        myBanner
          ..load()
          ..show(
            //anchorOffset: 60.0,
              anchorType: AnchorType.bottom);
      });
    } else if(value == "false") {
      return null;
    }

и выводом является "метод getString 'был вызван с нулевым значением."

1 Ответ

0 голосов
/ 10 июня 2019

Я думаю, что нашел решение, похоже, работает. Может быть, это поможет вам в будущем

checkAdmobStatus() async {
    final RemoteConfig remoteConfig = await RemoteConfig.instance;

    final defaults = <String, dynamic>{'status': 'true'};
    await remoteConfig.setDefaults(defaults);

    await remoteConfig.fetch();
    await remoteConfig.activateFetched();

    if ('true' == remoteConfig.getString('status')) {
      FirebaseAdMob.instance
          .initialize(appId: FirebaseAdMob.testAppId)
          .then((response) {
        myBanner
          ..load()
          ..show(anchorType: AnchorType.bottom);
      });
    }
  }
...