如何强制Admob在Android上刷新

时间:2010-10-02 22:07:46

标签: android admob

我有一个Admob广告的应用程序,但我发现当我使用它时,广告几乎从不刷新,因为我不更改活动,而只是按下按钮时更新文本视图。我曾尝试在Google上搜索此内容,但不断缩短。

我想告诉应用程序偶尔刷新添加,例如点击两次按钮后或类似的东西。有谁知道如何做到这一点,并可能有一些示例代码?

7 个答案:

答案 0 :(得分:21)

现在使用新的SDK:

AdView.loadAd(new AdRequest());

答案 1 :(得分:18)

旧API版本:

AddView.requestFreshAd()

新API版本:

AdView.loadAd(new AdRequest())

此外,您只需在布局XML文件中的AdView元素上设置refreshInterval属性的刷新间隔即可。或者,您可以通过AdMob网站上的帐户设置为应用中的广告设置refreshInterval。

文档: http://code.google.com/mobile/ads/docs/android/intermediate.html#adrefresh

答案 2 :(得分:7)

作为替代方案,您还可以按指定的时间间隔为您提供Admob刷新广告。在Admob中,转到“网站和应用”,然后点击所需应用的“管理设置”。然后单击“应用程序设置”。在“自动刷新”下,您可以更改应用中广告的刷新率。

编辑:使用新的admob界面,它在Monetize>我的应用名称>我的添加单位名称>刷新率(感谢ripegooseberry)

答案 3 :(得分:3)

在新的Api版本AdRequest()上,constuctor是私有的;你必须使用  AdRequest.Builder课程:

mAdView.loadAd(new AdRequest.Builder().build())

答案 4 :(得分:0)

将活动中的adView声明为数据成员,然后在活动的构造函数中创建Timer Task

adView = (AdView) findViewById(R.id.adView);
        TimerTask tt = new TimerTask() {

            @Override
            public void run() {
            MainActivity.this.runOnUiThread(new Runnable() {
                public void run() {
                    adView.loadAd(new AdRequest());
                }
            });

        }
    };

    Timer t = new Timer();
    t.scheduleAtFixedRate(tt, 0, 1000 * 60);

答案 5 :(得分:0)

    //New AdRequest 

    ScheduledExecutorService scheduleTaskExecutor = Executors.newScheduledThreadPool(5);


scheduleTaskExecutor.scheduleAtFixedRate(new Runnable() {
  public void run() {
        runOnUiThread(new Runnable() {
            public void run() {
                 AdRequest adRequest = new AdRequest.Builder().build();
                adView.loadAd(adRequest);
            }
        });
    }

}, 0, 30, TimeUnit.SECONDS);

答案 6 :(得分:0)

private AdRequest adRequest = null;
private void loadBannerRun() {
    if(adRequest != null) {
        adView.loadAd(adRequest);
        return;
    }
    adView.setAdUnitId(BANNER_AD_TEST);
    adRequest = new AdRequest.Builder().build();
    adView.loadAd(adRequest);
}

请测试