单击四个按钮中的任何一个时,请显示间质广告



我有一个带有四个按钮的布局。当用户单击其中一个按钮时,我想显示间隙广告。

当我单击四个按钮之一时,下面的代码可以正常工作,但是当我再次单击时,间隙广告不显示。

例如:

button1 button2 button 3 button4

当我在 button 1 第一次单击时>间隙广告显示;当我想再次单击其中一个按钮(例如 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
        }
    });

显示InterstitialAd后,您应该请新的AdRequest

因此,一个选项是在每个ClickListener中添加以下行(不讨论如何提高质量...只是如何修复它):

if (mInterstitialAd.isLoaded()) {
    mInterstitialAd.show();
    mInterstitialAd.loadRequest(new AdRequest.Builder().build());
}

您可以测试并共享结果(您可能需要等到加载新广告后才单击下一个按钮)。

最新更新