Admob没有显示广告

时间:2014-02-07 23:23:23

标签: java android admob

我曾经在我未来的应用上展示AdMob横幅广告,并且我会尝试插入插页式广告。我检查了AdMob SDK的实现,我复制了他们的示例源,因为它正是我想要的(即活动启动时显示的insterstitial)。我在模拟器和我的Galaxy上尝试过,没有显示任何广告。这是源代码。

public class Asscreed extends Activity { 

     private InterstitialAd interstitial;

     @Override
     protected void onCreate(Bundle savedInstanceState) {

         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_asscreed);

         // Create the interstitial.
         interstitial = new InterstitialAd(this);
         interstitial.setAdUnitId("ca-app-pub-6046034785851961/xxxxxx");

         // Create ad request.
         AdRequest adRequest = new AdRequest.Builder().build();

         // Begin loading your interstitial.
         interstitial.loadAd(adRequest);

    }

     // Invoke displayInterstitial() when you are ready to display an interstitial.
     public void displayInterstitial() {

          if (interstitial.isLoaded()) {
              interstitial.show();
          }

     }
}

导入正常,他们googly play服务库当然是导入的。我使用这个例子:https://developers.google.com/mobile-ads-sdk/docs/admob/advanced

有人能告诉我我的代码有什么问题吗?

提前致谢!

2 个答案:

答案 0 :(得分:0)

您的代码没有任何问题。

但可能没有任何广告要展示。建议你

  1. 将您的设备添加为测试设备,以便查看一些测试广告。
  2. 将一些日志添加到displayInterstitial中,这样您就可以看到它何时被调用以及是否加载了广告。
  3. 将AdListsner附加到记录各种状态的interstitialAd,以便您更深入地了解正在发生的事情。
  4. 您还需要在显示广告后再次致电interstitial.loadAd以获取另一个广告。

答案 1 :(得分:0)

我认为你遵循官方的admob准则而忘了在onCreate方法中添加监听器,如下所示:

interstitial.setAdListener(new AdListener() {
     public void onAdLoaded() {
          displayInterstitial(interstitial);
     }
});

如果您需要进一步的帮助,例如关于使用非UI线程中的插页式广告,您可以在以下帖子中找到更多详细信息: http://www.6020peaks.com/2015/01/how-to-use-admob-interstitials-from-a-non-ui-thread-in-android/