每当您启动时,我的应用程序都会打开一个Publisher InterstitialAd,但当用户关闭时,它会重新打开。这个过程不断发生,然后您将无法使用应用程序,有人可以帮助我吗?
public void getIntertitalAds(boolean isPortraitMode)
{
interstitial = new PublisherInterstitialAd(context);
if(isPortraitMode)
interstitial.setAdUnitId(tags.getAdUnitInterstitial());
else
interstitial.setAdUnitId(tags.getAdUnitInterstitialTablet());
AdListener adListener = new AdListener() {
@Override
public void onAdLoaded() {
super.onAdLoaded();
if(interstitial!=null)
interstitial.show();
}
@Override
public void onAdClosed() {
super.onAdClosed();
interstitial = null;
}
};
// Create ad request.
PublisherAdRequest adRequest = new PublisherAdRequest.Builder()
.build();
// Begin loading your interstitial.
interstitial.setAdListener(adListener);
interstitial.loadAd(adRequest);
}
最佳答案
切勿从interstitial.show()
呼叫AdListener#onAdLoaded()
。您无法控制何时调用它,这会带来非常差的用户体验。而是在应用程序的自然断点处调用interstitial.show()
。
无需为纵向和横向使用单独的AdUnitId。插页式广告是一样的。getIntertitalAds()
(sic)方法中的所有代码应为Activity#onCreate
我强烈怀疑您的问题源于1和3的组合。
关于android - 关闭后显示Android Publisher非页内广告,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24284590/