我有一个带有四个按钮的布局。当用户点击其中一个按钮时,我想显示插页式广告。
当我点击其中一个按钮时,下面的代码有效,但当我再次点击时,插页式广告不会显示。
例如:
BUTTON1 BUTTON2 BUTTON3 BUTTON4
当我第一次点击 BUTTON1 时,插页式广告会显示;当我想再次点击其中一个按钮(例如 BUTTON2 )时,插页式广告根本不显示。
每次点击按钮时,如何显示插页式广告?
InterstitialAd mInterstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity);
mInterstitialAd = new InterstitialAd(this);
mInterstitialAd.setAdUnitId(getString(R.string.interstitialAd));
mInterstitialAd.loadAd(adRequest);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mInterstitialAd.setAdListener(new AdListener() {
public void onAdLoaded() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
}
});
//button 1 function
}
});
btn2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mInterstitialAd.setAdListener(new AdListener() {
public void onAdLoaded() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
}
});
//button 2 function
}
});
btn3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mInterstitialAd.setAdListener(new AdListener() {
public void onAdLoaded() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
}
});
//button 3 function
}
});
btn4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mInterstitialAd.setAdListener(new AdListener() {
public void onAdLoaded() {
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
}
}
});
//button 4 function
}
});
答案 0 :(得分:0)
显示InterstitialAd
后,您应该申请一个新的AdRequest
:
因此,一个选项是在每个ClickListener
添加以下行(不讨论如何提高质量......以及如何修复它):
if (mInterstitialAd.isLoaded()) {
mInterstitialAd.show();
mInterstitialAd.loadRequest(new AdRequest.Builder().build());
}
请您测试并分享结果(您可能需要等到新的AD加载后再点击下一个按钮)。