Баннеры Android


Инициализация

Для показа баннеров форматов 320x50, 300x250 и 728x90 в своем приложении необходимо создать экземпляр класса MyTargetView. MyTargetView - визуальный компонент, наследник ViewGroup, который должен быть добавлен на экран приложения.

Размеры MyTargetView должны задаваться в устройство-независимых пикселях (dp=px*density), т.е. для показа рекламного объявления размером 320 на 50 на устройстве с плотностью 1.5 необходимо задать размер 480 на 75 или больше.

После создания экземпляра его необходимо инициализировать с указанием вашего slotId. Для задания формата, необходимо в метод инициализации передать одно из значений AdSize. По умолчанию устанавливается формат 320x50.
private MyTargetView adView;
 
@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_layout);
 
    // Включение режима отладки
    // MyTargetView.setDebugMode(true);
 
 
    // Создаем экземпляр MyTargetView
    adView = new MyTargetView(this);
     
    // Инициализируем экземпляр, формат 320х50
    adView.init(YOUR_SLOT_ID);
 
 
    // Инициализируем экземпляр, формат 300х250
    // adView.init(YOUR_SLOT_ID, AdSize.BANNER_300x250);
}

Загрузка и показ рекламных объявлений

Созданный и настроенный экземпляр MyTargetView необходимо добавить на экран приложения. Для получения уведомлений (таких как успешная загрузка данных или ошибка загрузки, клик по рекламному объявлению) необходимо создать экземпляр MyTargetView.MyTargetViewListener и установить его в качестве слушателя событий, после чего можно запустить загрузку данных. После успешной загрузки данных можно запустить показ рекламных объявлений.
private MyTargetView adView;
 
@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_layout);
 
 
    RelativeLayout layout = (RelativeLayout) findViewById(R.id.activityLayout);
 
    // Создаем экземпляр MyTargetView
    adView = new MyTargetView(this);
     
    // Инициализируем экземпляр
    adView.init(YOUR_SLOT_ID);
 
    // Устанавливаем LayoutParams
    adViewLayoutParams = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
    adViewLayoutParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
    adView.setLayoutParams(adViewLayoutParams);
     
    // Устанавливаем слушатель событий
    adView.setListener(new MyTargetView.MyTargetViewListener()
    {
        @Override
        public void onLoad(MyTargetView myTargetView)
        {
            // Данные успешно загружены, запускаем показ объявлений
            layout.addView(adView);
        }
 
        @Override
        public void onNoAd(String reason, MyTargetView myTargetView)
        {  
        }
 
 
        @Override
        public void onShow(MyTargetView myTargetView)
        {
        }
 
        @Override
        public void onClick(MyTargetView myTargetView)
        {
        }
    });
     
    // Запускаем загрузку данных
    adView.load();
}
     
@Override
protected void onDestroy()
{
    if (adView != null) adView.destroy();
    super.onDestroy();
}

Ротация

Рекламные объявления ротируются каждые 60 секунд. Вы можете отключить автоматическую ротацию объявлений при инициализации экземпляра MyTargetView, указав дополнительный параметр isRefreshAd. Ротируются только баннеры форматов 320х50 и 728x90, баннеры 300х250 не ротируются.
// Выключение автоматической ротации баннеров
adView.init(YOUR_SLOT_ID, null, false);
Баннер 320x50

Медиация с другими рекламными SDK

Для баннеров поддерживается медиация с Admob SDK и Mopub SDK.

Admob

Admob официально поддерживает медиацию myTarget. Чтобы настроить показ баннеров myTarget при помощи SDK Admob, нужно сделать следующее:

  1. Настроить группу медиации в настройках рекламного блока AdMob Пожалуйста, ознакомьтесь с полной версией инструкции:
    https://developers.google.com/admob/android/mediation/mytarget#step_2_configure_mediation_settings_for_your_admob_ad_unit
  2. Импортировать myTarget SDK и адаптер. Никакого дополнительного кода писать не нужно.
  3. Протестировать интеграцию.

Медиация Mopub

Настройка медиации осуществляется на сайте http://www.mopub.com/

Для создания сети медиации, нужно зайти в раздел Networks и добавить Custom Native Network, где необходимо задать следующие поля:
Поле
Значение
CUSTOM EVENT CLASS
com.my.target.ads.mediation.MyTargetMopubCustomEventBanner
CUSTOM EVENT CLASS DATA
{"slotId":"<your slot id>"}
Настройка параметров

Задание размера

myTarget SDK поддерживает форматы 320х50, 300х250 и 728х90. Они перечислены в интерфейсе MyTargetView.AdSize:
moPubView = new MoPubView(this);
         
Map<String, Object> localExtras = new HashMap<>();
...
localExtras.put("mytarget_adsize", MyTargetView.AdSize.BANNER_320x50);
 
moPubView.setLocalExtras(localExtras);
Вам помогла эта статья?
Да
Нет