如何让ionic3配合Firebase进行远程配置?

时间:2019-03-01 12:41:08

标签: firebase ionic3 ionic-native firebase-remote-config

我正在某个项目(ionic3)上使用Firebase。 我使用这个离子本机插件:firebase plugin。 FCM和数据库(使用angularfire)有效(尽管我无法将推送通知发送到在iOS上经过测试的设备)

当我使用此代码时:

this.url = "";
console.log("before getValue()");
this.firebase.getValue("info_url").then(url => {
   console.log("during getValue()");
   this.url = url;
   console.log(this.url);
}).catch(error => {
   console.log(error);
});
console.log("after getValue()");

控制台打印:

before getValue()
after getValue()

我没有任何网址。

编辑: 在app.component.ts中,我还想在this.platform.ready()。then()内部调用其中一个函数。我应该使用哪一个?

getWindowConfig() {
    (<any>window).FirebasePlugin.fetch(600, result => {
      // activate the fetched remote config
      console.log(JSON.stringify(result)); //Always "OK"
      (<any>window).FirebasePlugin.activateFetched(
        // Android seems to return error always, so we want to cath both
        result => {
          console.log(JSON.stringify(result)); //either true or false
          (<any>window).FirebasePlugin.getValue("info_url", result => {
            console.log(result)
          }, reason => {
            console.warn(`Error  ${reason}`);
          });
        }, reason => {
          console.warn(reason);
        }
      )
    });
  }

  async getConfigValues() {
    if (this.platform.is('android')) {
      var defaults = {
        support_email: "<default>",
        nanobyte_email: "<default>",
        kilobyte_email: "<default>",
        megabyte_email: "<default>",
        gigabyte_email: "<default>",
        hadassah_email: "<default>",
        service_email: "<default>",
        info_url: "<default>",
        schedule_url: "<default>"
      }
      await this.firebase.setDefaults(defaults);
    }
    await this.firebase.fetch();
    this.firebase.activateFetched();
  }

我很想得到建议。 谢谢您的回答。

授予

0 个答案:

没有答案