2012-11-24 117 views
1

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

 //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

在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应用设置中进行选择:禁用测试模式为所有请求中的活动数据成员

+2

感谢,是有刷新率应该是什么指南? – Ahmed

+0

我在我的应用程序中使用了30个secons,但我注意到admob更频繁地刷新它。对我来说 - 这是很好的刷新率。 –

+0

我在admob中的当前设置是在客户端代码中使用刷新率设置,客户端设置中没有刷新率..感谢您的帮助 – Ahmed

1

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

0

声明AdView中,然后在活动的构造函数创建计时器任务为波纹管

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);