当我的应用程序在后台运行时,我有一些CPU使用情况,我在Logcat上收到的唯一消息来自Adview,典型的:
"广告不可见。不刷新添加。60000毫秒后调度和刷新。"
这实际上发生在之前,所以我添加了暂停时杀死AdView的代码。基本上,我的代码已经破坏了Adview,如下所示:
public void onPause() {
if ( adView != null ) {
adView.pause();
adView.destroy();
adView = null;
Log.i(TAG + ": OnPause", "Pausing the Adview");
}
super.onPause();
}
阅读有关此问题的所有相关主题建议做我在onPause中所做的,但是它不起作用。我知道当日志在LogCat上写入我所引入的消息时,代码正在通过此代码。
我认为你只需要adView.pause();
在onPause()
方法:
@Override
protected void onPause() {
adView.pause();
super.onPause();
}
和adView.resume();
在onResume()
法:
@Override
protected void onResume() {
super.onResume();
adView.resume();
}
更新:我认为是向谷歌报告的一个问题:https://groups.google.com/forum/!主题/google-admob-ads-sdk jz-ZQh86lm0
我能够让它工作。在我的mainactivity中有如下方法调用:
private void checkAdd() {
mAdView = (AdView) findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder()
.addTestDevice("8C7A47B9F0F8147BAD75D7DB4C2D026E") // Will your Test device id.
.build();
mAdView.loadAd(adRequest);
}
@Override
protected void onPause() {
mAdView.pause();
super.onPause();
}
@Override
protected void onResume() {
super.onResume();
if(mAdView!=null){ // Check if Adview is not null in case of fist time load.
mAdView.resume();}
}