Баннерная реклама
Это архивная версия документации. Актуальная документация по всем платформам находится здесь.
Баннер — это настраиваемое объявление, которое занимает часть экрана и реагирует на нажатие.
Типы баннера
Особенности:
- Используется заданная ширина баннера. Высота подбирается автоматически.
- Ширина баннера задается с помощью метода stickySize.
- Высота баннера не должна превышать 15% высоты устройства и не должна быть меньше 50 dp.
Примеры отображения баннера:
Особенности:
- Баннер заполняет весь блок, используя заданные максимальные размеры.
- Ширина и высота баннера задается с помощью метода flexibleSize(int width, int height).
Примеры отображения баннера:
Подключение баннера
Создание BannerAdview
Добавьте объект класса
BannerAdView
в проект с помощью XML-файла или программно.// Создание экземпляра mBannerAdView с помощью XML-файла. mBannerAdView = (BannerAdView) findViewById(R.id.banner_view); // Создание экземпляра mBannerAdView программно. mBannerAdView = new BannerAdView(this);
Установите
AdUnitId
, используя метод setAdUnitId.mBannerAdView.setAdUnitId(<AdUnitId>)
AdUnitId
— уникальный идентификатор рекламного места, который выдается в Партнерском интерфейсе и имеет вид: R-M-XXXXXX-Y.Установите размеры баннера, используя метод setAdSize.
Чтобы задать ширину баннера, вызовите метод stickySize(int width), где width — максимальная ширина баннера.
mBannerAdView.setAdSize(AdSize.stickySize(width));
Чтобы задать ширину и высоту баннера, вызовите метод flexibleSize(int width, int height).
mBannerAdView.setAdSize(AdSize.flexibleSize(width, height));
Ограничение. Требования к размерам баннера при отображении видеорекламыМинимальный размер баннера, в котором поддерживается воспроизведение видео: 300x160 или 160x300 в dp (density-independent pixels).
После создания и настройки объекта класса
BannerAdView
для отслеживания событий (открытие или закрытие рекламы, выход из приложения, успешная и неудачная загрузка рекламы) на объект рекламы можно установить слушатель AdEventListener.
Загрузка рекламы
Все вызовы Mobile Ads SDK следует выполнять с главного потока.
После создания и настройки объекта класса AdView
, рекламу необходимо загрузить.
mBannerAdView.loadAd(adRequest);
Скопировано
Особенности загрузки
AdRequest
передайте код, полученный в интерфейсе Adfox (подробнее смотрите в помощи по Adfox): // Код из интерфейса Adfox для работы с прямыми кампаниями. Map<String, String> parameters = new HashMap<String, String>(); parameters.put("adf_ownerid", "example"); parameters.put("adf_p1", "example"); parameters.put("adf_p2", "example"); parameters.put("adf_pfc", "example"); parameters.put("adf_pfb", "example"); parameters.put("adf_plp", "example"); parameters.put("adf_pli", "example"); parameters.put("adf_pop", "example"); parameters.put("adf_pt", "example"); parameters.put("adf_pd", "example"); parameters.put("adf_pw", "example"); parameters.put("adf_pv", "example"); parameters.put("adf_prr", "example"); parameters.put("adf_pdw", "example"); parameters.put("adf_pdh", "example"); parameters.put("adf_puid1", "example"); final AdRequest adRequest = AdRequest.builder().withParameters(parameters).build();
Скопировано
Пример работы с баннерной рекламой
Следующий код демонстрирует создание и настройку объекта 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>
... public class BannerExample extends Activity { ... private static final String adUnitId = "YOUR_adUnitId"; 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(AdSize.FULL_WIDTH)); // Код из интерфейса Adfox для работы с прямыми кампаниями. Map<String, String> parameters = new HashMap<String, String>(); parameters.put("adf_ownerid", "example"); parameters.put("adf_p1", "example"); parameters.put("adf_p2", "example"); parameters.put("adf_pfc", "example"); parameters.put("adf_pfb", "example"); parameters.put("adf_plp", "example"); parameters.put("adf_pli", "example"); parameters.put("adf_pop", "example"); parameters.put("adf_pt", "example"); parameters.put("adf_pd", "example"); parameters.put("adf_pw", "example"); parameters.put("adf_pv", "example"); parameters.put("adf_prr", "example"); parameters.put("adf_pdw", "example"); parameters.put("adf_pdh", "example"); parameters.put("adf_puid1", "example"); // Создание объекта таргетирования рекламы. final AdRequest adRequest = AdRequest.builder().withParameters(parameters).build(); // Регистрация слушателя для отслеживания событий, происходящих в баннерной рекламе. mBannerAdView.setAdEventListener(new BannerAdEventListener() { @Override public void onAdLoaded() { ... } }); // Загрузка объявления. mBannerAdView.loadAd(adRequest); } }
Скопировано
Если реклама подключена данным образом, после запуска приложения появится баннер:
- demo-banner-yandex