Интеграция Admob не работает должным образом или некоторые изменения в AdMob недавно изменились? - PullRequest
0 голосов
/ 25 апреля 2018

Раньше, когда я тестировал рекламу, я просто использовал идентификаторы живого рекламного блока от Admob. Если я запускаю приложение в эмуляторе, оно используется для загрузки рекламы в формате SCREEN1, показанном ниже (без наложения текста TestAd). И если я запускаю приложение на устройстве, оно будет показывать рекламу разных издателей рекламы.

Но когда я попытался сделать то же самое сегодня. Если я использую идентификаторы живого рекламного блока, тогда adview будет отображаться как пустое (как на экране 2) и выбрасывает эту информацию в logcat.

I/Ads: No fill from ad server.
W/Ads: Failed to load ad: 3

Если я использую идентификаторы тестового рекламного блока, предоставленные Google, как показано в https://developers.google.com/admob/android/test-ads, тогда будет загружено объявление, как показано на экране SCREEN1.

ЭКРАН 1:

Объявление загружается с идентификатором тестового баннера

enter image description here

ЭКРАН 2:

Объявление не загружается с идентификатором рекламного баннера Admob

enter image description here

В коде не должно быть проблем, поскольку он загружает объявления с помощью идентификаторов тестовых рекламных блоков, но вот код, который я использовал ниже для загрузки рекламы.

Код для загрузки идентификатора баннера:

mAdView = findViewById(R.id.adView) as AdView
val adRequest = AdRequest.Builder().build()
mAdView.loadAd(adRequest)

BannerView В макете:

<com.google.android.gms.ads.AdView
    android:id="@+id/adView"
    android:layout_width="wrap_content"
    android:layout_height="50dp"
    ads:adSize="SMART_BANNER"
    ads:adUnitId="ca-app-pub-3940256099942544/6300978111"
    ads:layout_constraintEnd_toEndOf="parent"
    ads:layout_constraintStart_toStartOf="parent"
    ads:layout_constraintTop_toTopOf="parent"> 
</com.google.android.gms.ads.AdView>

Ответы [ 4 ]

0 голосов
/ 26 апреля 2018

Теперь вы можете тестировать рекламу только на эмуляторе или на устройстве, используя тестовые идентификаторы рекламных блоков.Вы можете получить тестовые идентификаторы рекламных блоков здесь:

https://developers.google.com/admob/android/test-ads

Если вы хотите протестировать объявления с действительными идентификаторами рекламных блоков, вы можете сделать это только после создания подписанного APK и его установкиdevice.

ПРИМЕЧАНИЕ:

Если вы используете действующие идентификаторы рекламных блоков во время тестирования неподписанных apks, они будут пустыми.

0 голосов
/ 25 апреля 2018

Попробуйте этот код для загрузки баннера

mAdView = (AdView) findViewById(R.id.adView);
                adRequest = new AdRequest.Builder()
                        .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
                        .build();
                mAdView.setAdListener(new com.google.android.gms.ads.AdListener() {
                    @Override
                    public void onAdLoaded() {
                        super.onAdLoaded();
                    }
                });
                mAdView.loadAd(adRequest);

И установите высоту android: layout_height = "wrap_content" в макете.

0 голосов
/ 25 апреля 2018

Перейдите по ссылке ниже:

Попробуйте сгенерировать новый идентификатор устройства. В первый раз требуется некоторое время.

http://androtech1tk.000webhostapp.com/2017/09/adding-google-admob-ads-to-android-app

0 голосов
/ 25 апреля 2018

Возможно, причина в том, что ваш AdMob Id приостановлен,
Поэтому, пожалуйста, попробуйте с другим идентификатором adUnit,
Причиной приостановки может быть то, что вы показываете объявление, не добавляя тестирующее устройство много раз с одним и тем же устройством.
Другая причина заключается в том, что когда ваше приложение приостанавливается из магазина игр, время от времени addUnit Id также приостанавливается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...