如何确保admob将出现在我的应用中

时间:2017-07-17 15:13:43

标签: android admob

众所周知,谷歌要求我们在开发应用时使用测试设备并测试广告单元ID。但是,我想要知道如果我能存在的话 看到真实的广告,因为我担心在发布之前更改代码和广告ID后不会显示任何广告。我已成功看到测试广告,然后我更改了代码和广告ID,然后将我的应用程序提交给beta测试,但测试人员说没有广告显示,是正常的,还是我在代码中犯了一些错误或广告单元ID。 谢谢你的帮助!

以下是我的广告相关代码,我更改了广告ID

mAdView = (AdView) findViewById(R.id.adView);
        AdRequest adRequest = new AdRequest.Builder().build();
        mAdView.loadAd(adRequest);

2 个答案:

答案 0 :(得分:1)

您甚至可以使用实际广告单元ID进行开发,但在制作广告请求时,您的测试设备应添加到测试设备列表中。

如果它是您正在使用的有效广告单元ID,则可以确保在发布应用时广告会显示。此外,您还可以检查Adsense信息中心是否获得了广告单元的点击量。

如果您想确定无疑,可以尝试在其他设备上安装apk,对其进行测试,然后在看到广告时将其发布。

答案 1 :(得分:0)

您可以使用AdListener并监控其未展示广告的原因。请记住,如果您创建了新的广告单元,则需要花费一些时间或几个小时来为其安排实际广告。如果您正在展示测试广告并且您拥有有效的广告单元ID,并且您的应用未违反任何政策,那么您就可以开始使用(如果您的应用存在政策问题,您将通过电子邮件发送)。广告将在可用时显示。

AdView adView = (AdView) findViewById(R.id.adView);
AdRequest adRequest1 = new AdRequest.Builder().build();
adView.loadAd(adRequest1);
adView.setAdListener(new AdListener() {
  @Override
  public void onAdLoaded() {
    // Code to be executed when an ad finishes loading.
    Log.i("Ads", "onAdLoaded");
  }

  @Override
  public void onAdFailedToLoad(int errorCode) {
    // Code to be executed when an ad request fails.


    switch (errorCode){
      case AdRequest.ERROR_CODE_INTERNAL_ERROR:
        Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_INTERNAL_ERROR",Toast.LENGTH_SHORT).show();
        break;
      case AdRequest.ERROR_CODE_INVALID_REQUEST:
        Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_INVALID_REQUEST",Toast.LENGTH_SHORT).show();
        break;
      case AdRequest.ERROR_CODE_NETWORK_ERROR:
        Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_NETWORK_ERROR",Toast.LENGTH_SHORT).show();
        break;
      case AdRequest.ERROR_CODE_NO_FILL:
        Toast.makeText(PlayListsActivity.this,"onAdFailedToLoad banner ERROR_CODE_NO_FILL",Toast.LENGTH_SHORT).show();
        break;
    }
    Log.i("Ads", "onAdFailedToLoad");
  }

  @Override
  public void onAdOpened() {
    // Code to be executed when an ad opens an overlay that
    // covers the screen.
    Log.i("Ads", "onAdOpened");
  }

  @Override
  public void onAdLeftApplication() {
    // Code to be executed when the user has left the app.
    Log.i("Ads", "onAdLeftApplication");
  }

  @Override
  public void onAdClosed() {
    // Code to be executed when when the user is about to return
    // to the app after tapping on an ad.
    Log.i("Ads", "onAdClosed");
  }
});