AdmobFree interstitial.show() - 错误:插页式广告尚未准备就绪

时间:2018-01-09 23:52:10

标签: ionic2 admob

我先打电话

this.admobFree.interstitial.prepare()
    .then(() => {
      this.interstitialPrepared = true;
      console.log('AdMob Interstitial Ad is prepared, will be presented if autoShow is true, otherwise, call showInterstitial().');
    })
    .catch((err) => {
      console.error(err);
    })

我会调用this.interstitialPrepared = true;,因此我认为我的广告已准备就绪。

但是,如果我在this.admobFree.interstitial.show() var切换到this.interstitialPrepared后拨打true,我仍然会出现以下错误:“错误:插页式广告尚未准备好。”。

注意: 它适用于以下配置:

this.adMobProvider.interstitialConfig = {
        autoShow: false,
        isTesting : true
};

但不是在我想用真实广告进行测试时

this.adMobProvider.interstitialConfig = {
        autoShow: false,
        isTesting : false,
        id:"ca-app-pub-277368299xxxxxxxx"
};

2 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,我这样做是这样的:

  1. 我没有将interstitial.show()放在interstitial.prepare().then(..)之后;
  2. 我订阅了以下活动:INTERSTITIAL_LOADINTERSTITIAL_LOAD_FAIL;
  3. 我只显示它已成功加载;

示例:

this.admobFree.on(this.admobFree.events.INTERSTITIAL_LOAD).subscribe(() => {
     this.admobFree.interstitial.show().then(() => {
          // Show successful
     }).catch((errorShow) => {
          // ...
     });
});

this.admobFree.on(this.admobFree.events.INTERSTITIAL_LOAD_FAIL).subscribe(() => {
     // ...
});

希望对您有所帮助。

答案 1 :(得分:-1)

在我的情况下,autoShow: true为我工作。请记住,当autoShow为true时,您无需致电Intersit