Баннеры – это прямоугольные графические или текстовые объявления, которые занимают определенное место на экране. Они остаются на экране, пока пользователь взаимодействует с интерфейсом, и могут автоматически обновляться через определенные промежутки времени. Если вы только начинаете работать с мобильной рекламой, рекомендуем начать именно с них. История успеха.
В этом руководстве рассказывается, как интегрировать баннеры в приложение Unity. Помимо фрагментов кода и инструкций, оно содержит информацию о правильном выборе размера баннеров и ссылки на дополнительные ресурсы.
Требования
Прежде чем продолжить, настройте Google Mobile Ads Unity Plugin.
Всегда используйте тестовые объявления
В приведенном ниже образце кода содержится идентификатор рекламного блока, который можно использовать для запроса тестовых объявлений. Он специально настроен так, чтобы в ответ на каждый запрос возвращать тестовые объявления, а не рабочие.
Однако после того, как вы зарегистрируете приложение в веб-интерфейсе AdMob и создадите собственные идентификаторы рекламных блоков для использования в приложении, вам нужно будет настроить свое устройство как тестовое.
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
Инициализация Google Mobile Ads Unity Plugin
Перед загрузкой объявлений инициализируйте Google Mobile Ads Unity Plugin, вызвав MobileAds.Initialize(). Это нужно сделать только один раз, желательно при запуске приложения.
using GoogleMobileAds;
using GoogleMobileAds.Api;
public class GoogleMobileAdsDemoScript : MonoBehaviour
{
public void Start()
{
// Initialize Google Mobile Ads Unity Plugin.
MobileAds.Initialize((InitializationStatus initStatus) =>
{
// This callback is called once the MobileAds SDK is initialized.
});
}
}
Если вы используете медиацию, дождитесь обратного вызова, прежде чем загружать объявления. Это гарантирует, что все адаптеры медиации будут инициализированы.
Пример BannerView
В следующем образце кода подробно описано, как использовать представление баннера. В примере создается экземпляр представления баннера, используется AdRequest для загрузки объявления в представление баннера, а затем расширяются его возможности за счет обработки событий жизненного цикла.
Как создать представление баннера
Чтобы использовать представление баннера, сначала нужно создать его экземпляр.
Замените AD_UNIT_ID идентификатором своего рекламного блока.
Конструктор BannerView имеет следующие параметры:
adUnitId– идентификатор рекламного блока для загрузки баннера.AdSize– размер баннера, который вы хотите использовать.AdPosition– позиция, на которой должны размещаться баннеры.
Как создать представление баннера с настраиваемой позицией (необязательно)
Если вы хотите разместить баннер в определенном месте экрана, а не там, где предлагается в значениях AdPosition, используйте конструктор с координатами X и Y в качестве параметров:
Левый верхний угол баннера размещается в точке с координатами x и y, переданными конструктору. Начало координат находится в левом верхнем углу экрана.
Как создать представление баннера с собственным размером (необязательно)
Помимо константы AdSize, вы также можете указать собственный размер объявления:
Загрузка баннера
Чтобы загрузить объявление, создайте объект AdRequest и передайте его в метод LoadAd().
// Send a request to load an ad into the banner view.
bannerView.LoadAd(new AdRequest());
Как отслеживать события просмотра баннера
Чтобы настроить поведение объявления, вы можете подключить ряд событий в его жизненном цикле, например загрузку, открытие или закрытие. Чтобы отслеживать эти события, зарегистрируйте делегат:
bannerView.OnBannerAdLoaded += () =>
{
// Raised when an ad is loaded into the banner view.
};
bannerView.OnBannerAdLoadFailed += (LoadAdError error) =>
{
// Raised when an ad fails to load into the banner view.
};
bannerView.OnAdPaid += (AdValue adValue) =>
{
// Raised when the ad is estimated to have earned money.
};
bannerView.OnAdImpressionRecorded += () =>
{
// Raised when an impression is recorded for an ad.
};
bannerView.OnAdClicked += () =>
{
// Raised when a click is recorded for an ad.
};
bannerView.OnAdFullScreenContentOpened += () =>
{
// Raised when an ad opened full screen content.
};
bannerView.OnAdFullScreenContentClosed += () =>
{
// Raised when the ad closed full screen content.
};
Удаление представления баннера
Чтобы удалить баннер, вызовите метод Destroy() для освобождения ресурсов:
if (bannerView != null)
{
// Always destroy the banner view when no longer needed.
bannerView.Destroy();
bannerView = null;
}
Если баннер не загружается, рекомендуем обновить его, а не удалять и создавать заново. Подробнее о том, как обновить объявление…
Как обновить объявление
Если вы настроили обновление рекламного блока, то вам не нужно запрашивать другое объявление, когда не удается загрузить текущее. Google Mobile Ads Unity Plugin учитывает частоту обновления, заданную в интерфейсе AdMob. Если вы не включили обновление, отправьте новый запрос. Подробнее о том, как настроить частоту обновления рекламных блоков, читайте в статье Как настроить автоматическое обновление для баннеров.
Размеры баннеров
Большие адаптивные баннеры – это формат, предназначенный для макетов без прокрутки. По сравнению со стандартными фиксированными адаптивными баннерами у этих баннеров больше максимальная высота (до 20% высоты экрана, от 50 до 150 dp). Это пространство оптимизировано для видеоконтента.
В таблице ниже перечислены стандартные размеры баннеров.
| Размер в dp (Ш x В) | Описание | Доступность | Константа AdSize |
|---|---|---|---|
| 320 x 50 | Стандартный баннер | Телефоны и планшеты | BANNER |
| 320 x 100 | Большой баннер | Телефоны и планшеты | LARGE_BANNER |
| 300 x 250 | Средний прямоугольник (IAB) | Телефоны и планшеты | MEDIUM_RECTANGLE |
| 468 x 60 | Полноразмерный баннер IAB | Планшеты | FULL_BANNER |
| 728 x 90 | Полноразмерный баннер IAB | Планшеты | LEADERBOARD |
| Заданная ширина x Адаптивная высота | Адаптивный баннер | Телефоны и планшеты | Н/Д |
| Ширина экрана x 32|50|90 | Смарт-баннер | Телефоны и планшеты | SMART_BANNER |
| Подробнее об адаптивных баннерах, которые должны заменить смарт-баннеры… | |||
Дополнительные ресурсы
- Пример HelloWorld. Минимальная реализация всех форматов объявлений.