有些用户有意尝试多次点击横幅广告。由于这个原因,我们遇到帐户暂停或终止的问题。如果广告越过某个限制(例如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.
}
答案 0 :(得分:1)
LinearLayout id =容器 AdView id = adView
if(currentbannerclick>3)
container.removeView(adView);
谢谢大家的回答。
答案 1 :(得分:0)
您可以使用活动生命周期回调确定是否点击了广告。然后,您可以了解用户点击广告的时间,并且只有在用户点击您的广告时才会调用adView.loadAd(adRequest);
。
答案 2 :(得分:0)
您可以将AdListener
附加到AdView
,并使用onAdLoaded
或onAdOpened
方法增加点击计数器。更多信息: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个广告的限制。