AdMob没有实时广告出现

时间:2017-03-28 12:00:43

标签: android android-studio admob google-admob

我已经使用Android Studio制作了应用程序,现在我已经完成了应用程序。 我在我的应用程序中添加了一个AdView,并使用了TestAd-UnitId,我收到了测试广告。在我的模拟器上,也在我的手机上。这很有效,我让测试广告正在运行。然后我创建了一个AdMob帐户,并在其中添加了我的应用,创建了一个Bannner广告,就像我在我的应用中一样,并使用了AdMob页面中的adUnitId。但是当我在手机上运行我的应用程序时,根本没有广告。 如果重要:该应用程序不在Play商店中。

我读到你要等几个小时,直到你收到直播广告,但我已经等了12个多小时了,我仍然没有在手机上收到任何广告。

如果您需要,请参阅我的代码:

我的AdView:

<com.google.android.gms.ads.AdView
    android:id="@+id/adView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:layout_constraintBottom_toBottomOf="parent"
    ads:adSize="BANNER"
    ads:adUnitId="@string/banner_ad_unit_id"
    android:layout_marginBottom="16dp"
    android:layout_marginLeft="8dp"
    app:layout_constraintLeft_toLeftOf="parent"
    android:layout_marginRight="8dp"
    app:layout_constraintRight_toRightOf="parent" />

我的onCreate方法:

MobileAds.initialize(getApplicationContext(), "ca-app-pub-hiddenhiddenhide~hiddenhide");

AdView ad = (AdView) findViewById(R.id.adView);
AdRequest request = new AdRequest.Builder().build();
ad.loadAd(request);

1 个答案:

答案 0 :(得分:1)

您需要将此行添加到构建器中。

.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)

所以你需要这样的东西:

AdRequest request = new AdRequest.Builder()
                        .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
                        .build();

如果您想使用自己的手机。你可以在logcat中查找需要添加的id,它看起来像这样:

AdRequest request = new AdRequest.Builder()
                    .addTestDevice("here goes your id of your phone")
                    .build();

您需要这样做的原因是因为在开发时您无法看到添加,因为应用程序未放置在Playstore中。 只要他不在Playstore你就看不到广告。您可以使用刚刚提供的代码创建测试广告

如果你去生产尝试使用这个代码:(它将使用测试设备进行调试和开发,但它将在生产时使用真正的设备添加)

    AdRequest adRequest = new AdRequest.Builder()
            .build();
    if (BuildConfig.DEBUG)
        adRequest = new AdRequest.Builder()
                .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
                .addTestDevice("your id goes here")
                .build();