如何停止横幅广告加载?

时间:2016-05-31 14:17:57

标签: android admob ads

有些用户有意尝试多次点击横幅广告。由于这个原因,我们遇到帐户暂停或终止的问题。如果广告越过某个限制(例如3),是否有人知道如何停止加载广告。

    AdView adView = (AdView) findViewById(R.id.adView);
    AdRequest adRequest = new AdRequest.Builder()
            .setRequestAgent("android_studio:ad_template").build();

    adView.loadAd(adRequest);
    if(currentbannerclick>3)
    {

       // some code to not load the ad.
    }

5 个答案:

答案 0 :(得分:1)

LinearLayout id =容器 AdView id = adView

    if(currentbannerclick>3)
    container.removeView(adView);

谢谢大家的回答。

答案 1 :(得分:0)

您可以使用活动生命周期回调确定是否点击了广告。然后,您可以了解用户点击广告的时间,并且只有在用户点击您的广告时才会调用adView.loadAd(adRequest);

答案 2 :(得分:0)

您可以将AdListener附加到AdView,并使用onAdLoadedonAdOpened方法增加点击计数器。更多信息:https://developers.google.com/android/reference/com/google/android/gms/ads/AdListener#public-methods

答案 3 :(得分:0)

这应该有效:

private void loadAd() {
    // This is a one element array because it needs to be declared final
    // TODO: you should probably load the default value from somewhere because of activity restarts
    final int[] currentBannerClick = {0};

    final AdView adView = (AdView) findViewById(R.id.adView);
    adView.setAdListener(new AdListener() {
        @Override
        public void onAdOpened() {
            super.onAdOpened();
            currentBannerClick[0]++;
            if (currentBannerClick[0] > 3) {
                adView.setVisibility(View.INVISIBLE);
                adView.destroy();
            }

            // TODO: save currentBannerClick[0] somewhere, see previous TODO comment
        }
    });

    if (currentBannerClick[0] <= 3) {
        AdRequest adRequest = new AdRequest.Builder().addTestDevice(YOUR_DEVICE_ID).build();
        adView.setVisibility(View.VISIBLE);
        adView.loadAd(adRequest);
    } else {
        adView.setVisibility(View.INVISIBLE);
    }
}

答案 4 :(得分:0)

您还可以限制在AdMob系统中为用户显示的广告数量。您可以为每个用户设置每小时,每小时或每天3个广告的限制。