我使用google-play-services 8.1.0(但它也在7.8.0上测试过)。我创建AdMob插页与此代码:插页式广告延迟显示
_interstitialAd = new InterstitialAd(this);
_interstitialAd.setAdUnitId(getString(R.string.interstitial_admob));
_interstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
Logger.log("onAdClosed");
requestNewInterstitial();
}
public void onAdFailedToLoad(int errorCode) {
Logger.log("onAdFailedToLoad");
}
public void onAdLeftApplication() {
Logger.log("onAdLeftApplication");
}
public void onAdOpened() {
Logger.log("onAdOpened");
}
public void onAdLoaded() {
Logger.log("onAdLoaded");
}
});
requestNewInterstitial();
一些用户动作后,我打电话
if (_interstitialAd.isLoaded()) {
_interstitialAd.show();
return;
}
但是它需要一些时间显示的广告。我添加了一些日志消息,并显示广告已加载到AdLoaded上。
我测量了广告展示前的延迟时间,并且每次都不一样。在Nexus 5(棉花糖)它是从100毫秒,这是好的1500毫秒这是不好,但舒适。但在Nexus 7(2012)和Nexus 10等其他设备上,它从4秒到6秒不等,这很糟糕。
另外我得到了问题,它搞砸了我的片段生命周期。而且我必须更换来自后台的流片段,这有助于(我不会在广告展示前删除片段,而是在onAdClosed之后执行此操作),但此步骤不会在广告展示之前消除延迟。
所有这些步骤都在做8.3.0以及
任何人可以帮助我消除这种延迟?
请看看我编辑的问题 – darkchaos
听起来好像你有一个复杂的观点,可能会影响你的测量。建议您使用AdView创建一个非常简单的活动并记录新的统计信息。这可能也会导致你的观点出现问题。 – William