我将广告添加到 Activity 的方式是将转到下一个 Activity 的按钮设置为不可见,直到广告完成加载。
public void showAd_andSetGoButton()
{
if (isNetworkAvailable() == true)
{
button_go.setVisibility(View.INVISIBLE);
button_loading.setVisibility(View.VISIBLE);
mPublisherInterstitialAd = new PublisherInterstitialAd(this);
mPublisherInterstitialAd.setAdUnitId(MY_PUBLISHER_ID);
// Create an ad request.
PublisherAdRequest.Builder publisherAdRequestBuilder = new PublisherAdRequest.Builder();
// Optionally populate the ad request builder.
publisherAdRequestBuilder.addTestDevice(PublisherAdRequest.DEVICE_ID_EMULATOR);
// Set an AdListener.
mPublisherInterstitialAd.setAdListener(new AdListener()
{
@Override
public void onAdLoaded()
{
// Toast.makeText(First.this, "The interstitial is loaded", Toast.LENGTH_SHORT).show();
button_go.setVisibility(View.VISIBLE);
button_loading.setVisibility(View.INVISIBLE);
}
@Override
public void onAdClosed()
{
go_action();
}
});
// Start loading the ad now so that it is ready by the time the user is ready to go to the next level.
mPublisherInterstitialAd.loadAd(publisherAdRequestBuilder.build());
}
else
{
button_go.setVisibility(View.VISIBLE);
}
}
问题:
上面的代码运行良好。但是,我知道有时即使发出广告请求,由于库存不足等原因,也不会返回任何广告。我想问一下当这种情况出现时,onAdLoaded()
如果无法加载广告,是否会正确返回以便 button_go 可见?
谢谢!