admob:改变广告

时间:2012-11-24 22:30:54

标签: android admob

我使用以下代码在活动的onCreate()中显示广告 由于我的活动显示的时间较长,我可以刷新广告吗?还是会自动刷新它们?我是否需要更换它们或者不应该打扰它?

        //only ask for test ad, in emulator , should remove this later in real device
        AdRequest adRequest = new AdRequest();
        //adRequest.addTestDevice(AdRequest.TEST_EMULATOR);               // Emulator
        //adRequest.addTestDevice("TEST_DEVICE_ID");                

         // Create the adView
        adView = new AdView(this, AdSize.BANNER, "908908098098");

        // Lookup your LinearLayout assuming it’s been given
        // the attribute android:id="@+id/mainLayout"    

        LinearLayout layout = (LinearLayout)findViewById(R.id.adLayout);

        // Add the adView to it
        layout.addView(adView);

        // Initiate a generic request to load it with an ad
        adView.loadAd(adRequest);                   

3 个答案:

答案 0 :(得分:3)

在admob帐户中更改应用设置:

enter image description here

此外,您应该在发布之前删除测试模式:

    AdView adView = (AdView) findViewById(R.id.ad);
    AdRequest adRequest = new AdRequest();
    adView.loadAd(adRequest);

在onDestroy()中:adView.destroy();

布局:

<com.google.ads.AdView
    android:id="@+id/ad"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    ads:adSize="BANNER"
    ads:adUnitId="@string/admob_publisher_id"
    ads:loadAdOnCreate="true" >
</com.google.ads.AdView>

在AdMob应用设置中,选择以下选项:禁用所有请求的测试模式

答案 1 :(得分:1)

Admob广告会按照您在admob帐户中设置的费率进行刷新。转到您的帐户,点击“管理设置”,然后点击“应用设置”,然后在那里查找自动刷新参数。

答案 2 :(得分: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);