Не удается загрузить баннерную рекламу Admob, код ошибки: 3 не заполнено - PullRequest
0 голосов
/ 16 ноября 2018

Я включил AdBob Banner & Interstitial в свое приложение. Я заметил, что некоторые рекламные баннеры не загружаются. У меня отладочный код ошибки, когда объявления не загружаются, код ошибки является общим Ошибка: 3 Это означает Нет заполнения ошибка. Я добавил баннер и рекламные вставки на 3-4 экранах.
Теперь проблема в том, что работает только один идентификатор баннера на экране, и все рекламные вставки работают нормально, но некоторые из баннеров не работают. (на экране надреза) .
Когда я изменил идентификатор баннера на всех экранах на тот же, который был запущен должным образом, и все экраны работают нормально и для надреза.
Я тестировал этот случай в нуге, орео, маршмелло и т. Д. Обычный экран и метка экрана.
Я просто замечаю, что некоторые устройства, работающие с надрезом, загружают не все объявления. Но все нормальные экраны работают нормально. Так что я не могу получить точную проблему.
Примечание. Во время тестирования все устройства работают в одной и той же сети Wi-Fi.
Я не знаю, если что-то не так с другим идентификатором устройства. Но все идентификаторы устройства имеют одинаковые настройки в моей учетной записи admob. Согласно моему тесту, что-то не так с моим идентификатором AdUnit. Но не могу понять, в чем проблема.
Я заметил еще один случай. Если я добавил Testing id в запрос, то он также работает. Я получил хеш устройства из журнала Android.

I/Ads: Use AdRequest.Builder.addTestDevice("XXXXXXXXXX") to get test ads on this device.
.addTestDevice("XXXXXXXXXX")


Если есть какая-то дополнительная техника отладки, то это учетная запись AdMob, тогда, пожалуйста, поделитесь со мной, чтобы я мог проверить подробно. Может ли кто-нибудь помочь мне проверить этот вопрос подробно? Пожалуйста, прокомментируйте, если кому-то нужно больше объяснений.

Ответы [ 2 ]

0 голосов
/ 19 ноября 2018

Я пробовал комбинацию устройств, работающих на разных ОС.Наконец-то я получил решение.Я написал этот код, когда приложение не удалось с кодом ошибки 3 (без ошибки заполнения)

<com.google.android.gms.ads.AdView
        xmlns:ads="http://schemas.android.com/apk/res-auto"
        android:id="@+id/adView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_alignParentBottom="true"
        ads:adSize="SMART_BANNER"
        ads:adUnitId="XXXXXXXXXXXXXXXX>
    </com.google.android.gms.ads.AdView> 

Сейчас Согласно Google образец кода Я должен использовать ширину с match_parent , поэтому я изменил ширину с match_parent , но при этом произошла та же ошибка.Наконец, я изменил тип размера с помощью BANNER , и теперь он работает на всех устройствах.(Демонстрационный код Google использует тип BANNER) Я только что попробовал этот размер, и теперь на всех устройствах размещается рекламный баннер.Не уверен, но в соответствии с моим сценарием тестирования объявление было неудачным, какое устройство имеет большое разрешение (соотношение более 16: 9, например, соотношение 19: 9, 1080 x 2280 пикселей) и тип размера баннера After Set, например BANNER , прекрасно работает сбольшое разрешение также.

0 голосов
/ 17 ноября 2018
public static final int ERROR_CODE_NO_FILL

Запрос объявления был успешным, но объявление не было возвращено из-за отсутствия рекламных ресурсов .

Постоянное значение: 3

Источник: документация https://developers.google.com/android/reference/com/google/android/gms/ads/AdRequest#ERROR_CODE_NO_FILL

В вашем коде нет ничего плохого, проблема в том, что AdMob не всегда имеет объявление для возврата по вашему запросу. Возможные причины могут быть

- вы только что зарегистрировали свой идентификатор издателя, поскольку для начала показа объявлений требуется некоторое время

- Вы отфильтровали несколько объявлений

...