Баннерная реклама

Внимание.

Это архивная версия документации. Актуальная документация по всем платформам находится здесь.

Баннер — это настраиваемое объявление, которое занимает часть экрана и реагирует на нажатие.

  1. Типы баннера
  2. Подключение баннера
  3. Пример работы с баннерной рекламой

Типы баннера

Особенности:

  1. Используется заданная ширина баннера. Высота подбирается автоматически.
  2. Ширина баннера задается с помощью метода stickySize.
  3. Высота баннера не должна превышать 15% высоты устройства и не должна быть меньше 50 dp.

Примеры отображения баннера:

Подключение баннера

Создание Adview

  1. Добавьте объект класса BannerAdView в проект с помощью XML-файла или программно.

    // Создание экземпляра mBannerAdView с помощью XML-файла.
            mBannerAdView = (BannerAdView) findViewById(R.id.banner_view);
    
    // Создание экземпляра mBannerAdView программно.
            mBannerAdView = new BannerAdView(this);
  2. Установите AdUnitId, используя метод setAdUnitId.

    mBannerAdView.setAdUnitId(<AdUnitId>)

    AdUnitId — уникальный идентификатор рекламного места, который выдается в Партнерском интерфейсе и имеет вид: R-M-XXXXXX-Y.

  3. Установите размеры баннера, используя метод setAdSize.

    Чтобы задать ширину баннера, вызовите метод stickySize(int width), где width — максимальная ширина баннера.

    mBannerAdView.setAdSize(AdSize.stickySize(width));
    Ограничение. Требования к размерам баннера при отображении видеорекламы

    Минимальный размер баннера, в котором поддерживается воспроизведение видео: 300x160 или 160x300 в dp (density-independent pixels).

  4. После создания и настройки объекта класса BannerAdView для отслеживания событий (открытие или закрытие рекламы, выход из приложения, успешная и неудачная загрузка рекламы) на объект рекламы можно установить слушатель AdEventListener.

Загрузка рекламы

Примечание.

Все вызовы Mobile Ads SDK следует выполнять с главного потока.

После создания и настройки объекта класса BannerAdView, рекламу необходимо загрузить. Для загрузки рекламы, используйте метод loadAd, принимающий в качестве параметра объект AdRequest (Builder, опционально принимающий данные для таргетирования рекламы).

Пример работы с баннерной рекламой

Следующий код демонстрирует создание и настройку объекта BannerAdView, регистрацию слушателя, а также загрузку баннера:

...
<LinearLayout>
    ...
    <com.yandex.mobile.ads.banner.BannerAdView
        android:id="@+id/banner_ad_view"
        android:layout_width=“match_parent”
        android:layout_height="wrap_content"/>
</LinearLayout>
...
private BannerAdView mBannerAdView;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        ...
        // Создание экземпляра mAdView.
        mBannerAdView = (BannerAdView) findViewById(R.id.banner_ad_view);
        mBannerAdView.setAdUnitId(AdUnitId);
        mBannerAdView.setAdSize(AdSize.stickySize(maxBannerWidthDp));

        // Создание объекта таргетирования рекламы.
        final AdRequest adRequest = new AdRequest.Builder().build();

        // Регистрация слушателя для отслеживания событий, происходящих в баннерной рекламе.
        mBannerAdView.setAdEventListener(new BannerAdEventListener() {
            @Override
            public void onAdLoaded() {
                ...
            }
            
            @Override
            public void onAdFailedToLoad(AdRequestError adRequestError) {
                ...
            }

            @Override
            public void onLeftApplication() {
                ...
            }

            @Override
            public void onReturnedToApplication() {
                ...
            }
        });

        // Загрузка объявления.
        mBannerAdView.loadAd(adRequest);
    }
}

Если реклама подключена данным образом, после запуска приложения появится баннер:

Чтобы посмотреть, как баннерная реклама будет отображаться в приложении, используйте демонстрационный AdUnitId:
YANDEX_AD_UNIT_ID = "demo-banner-yandex"
ADCOLONY_AD_UNIT_ID = "demo-banner-adcolony"
ADMOB_AD_UNIT_ID = "demo-banner-admob"
APPLOVIN_AD_UNIT_ID = "demo-banner-applovin"
CHARTBOOST_AD_UNIT_ID = "demo-banner-chartboost"
MINTEGRAL_AD_UNIT_ID = "demo-banner-mintegral"
MYTARGET_AD_UNIT_ID = "demo-banner-mytarget"
STARTAPP_AD_UNIT_ID = "demo-banner-startapp"
VUNGLE_AD_UNIT_ID = "demo-banner-vungle"