Не удается отобразить баннеры AdMob в моей активности

Я хочу показывать рекламу в своей деятельности. Для этого я добавил следующие строки в манифест:

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<activity
        android:name="com.google.android.gms.ads.AdActivity"
        android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
        android:theme="@android:style/Theme.Translucent" />

по активности xml есть:

<com.google.android.gms.ads.AdView
    android:id="@+id/adView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"
    ads:adSize="BANNER"
    ads:adUnitId="@string/banner_ad">
</com.google.android.gms.ads.AdView>

и по активности:

private AdView mAdView;
....
 mAdView = (AdView) findViewById(R.id.adView);
 if (Utils.IS_ADMOB_IN_DEBUG) {
        adRequest = new AdRequest.Builder().
                addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
                .addTestDevice("00000F800094960000B45A000000D22")
                .build();
    } else {
        adRequest = new AdRequest.Builder().build();
    }
mAdView.setAdListener(new AdListener() {
        @Override
        public void onAdLoaded() {
        }

        @Override
        public void onAdClosed() {
        }

        @Override
        public void onAdFailedToLoad(int errorCode) {
        }

        @Override
        public void onAdLeftApplication() {
        }

        @Override
        public void onAdOpened() {
            super.onAdOpened();
        }
    });

    mAdView.loadAd(adRequest);

Я добавил идентификатор рекламного блока в строку banner_ad.

Несмотря на мои усилия, я не могу ничего показать на adView. Все работает идеально для режима отладки. Просто в режиме отладки.

Любое предложение, пожалуйста?


person gogoloi    schedule 12.07.2017    source источник
comment
Когда вы говорите, что это работает в режиме отладки, вы имеете в виду, что видите тестовую рекламу, но не видите правильную рекламу, когда вы не на своем тестовом устройстве. Вы смотрели в logcat, иногда, если запрос объявления не удается, он сообщит вам   -  person Boardy    schedule 12.07.2017
comment
Все выглядит нормально в режиме отладки. I/Ads: Объявление завершилось загрузкой. В противном случае я получаю W / Ads: Failed to load ad: 0   -  person gogoloi    schedule 12.07.2017
comment
Вы используете новую учетную запись Admob. Поиск ошибки Google привел к этому сообщению SO (stackoverflow.com/questions/38378002/). Похоже, что пройдет некоторое время, прежде чем ваша учетная запись начнет работать и обслуживать добавления, один из комментариев предположил, что это заняло около часа, хотя я предполагаю, что потенциально это может занять до 24 часов.   -  person Boardy    schedule 12.07.2017
comment
Я вижу сейчас эту ошибку. Не знаю, что означает: 07-12 18:49:01.613 13273-13273/ro.cc.cc E/ViewRootImpl: sendUserActionEvent() mView == null 07-12 18:49:01.922 13273-13273/ro.cc .cc D/ghiduldrumetului.ro:ActivityHome: onStop   -  person gogoloi    schedule 12.07.2017
comment
sendUserActionEvent() mView == null записывается красным на logcat   -  person gogoloi    schedule 12.07.2017
comment
Вы получаете сообщение об ошибке Failed to load ad: 0. Если вы только что зарегистрировались в AdMob, пройдет некоторое время, прежде чем серверы Google смогут отправить вам правильное объявление, когда оно не находится в режиме отладки. Подождите пару часов, может быть, даже день и попробуйте еще раз, и вы должны начать видеть рекламу, когда не в режиме отладки.   -  person Boardy    schedule 12.07.2017


Ответы (1)


При создании учетной записи AdMob НЕОБХОДИМО также добавить платежную информацию.

person gogoloi    schedule 12.07.2017