Общие сведения
Vungle MREC в настоящее время находится на стадии бета-тестирования. Чтобы гарантировать успешный запуск, запросите доступ непосредственно у своего персонального менеджера.
Начиная с SDK Vungle версии v6.4.11, Vungle поддерживает рекламные ролики MREC. MREC – это сокращение от "medium rectangle" (прямоугольник среднего размера). В отличие от рекламы внутри передачи, реклама MREC не требует полноэкранного воспроизведения. Как и баннерная реклама, рекламные ролики MREC являются прямоугольными окнами, которые могут быть расположены в любом месте приложения, обычно вверху или внизу экрана, позволяя пользователю продолжать взаимодействовать с приложением, пока воспроизводится реклама. Размер контейнера для отображения рекламы MREC является принятым в отрасли стандартом: 300x250.
Шаг 1. Выполните общую интеграцию
Для выполнения интеграции рекламы MREC в свое приложение для Android или Amazon начните с выполнения инструкций из статьи об общей интеграции. Настоящая статья содержит дополнительную информацию, и подразумевается, что общая интеграция уже выполнена.
Шаг 2. Реализация прослушивателей событий
Реализация прослушивателей событий
Вы можете использовать универсальные обратные вызовы путем реализации LoadAdCallback
для событий загрузки рекламы и PlayAdCallback
для событий воспроизведения рекламы или можете использовать встроенные обратные вызовы при вызове loadAd
и playAd
.
LoadAdCallback
private final LoadAdCallback vungleLoadAdCallback = new LoadAdCallback() {
@Override
public void onAdLoad(String id) {
// Ad has been successfully loaded for the placement
}
@Override
public void onError(String id, VungleException exception) {
// Ad has failed to load for the placement
}
};
// 6.4.x & below
private final LoadAdCallback vungleLoadAdCallback = new LoadAdCallback() {
@Override
public void onAdLoad(String id) {
// Ad has been successfully loaded for the placement
}
@Override
public void onError(String id, Throwable throwable) {
// Ad has failed to load for the placement
}
};
Переопределяемые методы | Описание |
---|---|
onAdLoad(String id) |
Вызывается, когда реклама успешно загружена и должна быть воспроизведена для размещения |
onError(String id) |
Вызывается, когда при попытке воспроизведения рекламы возникает ошибка. Вы сможете просмотреть сообщение об ошибке из getLocalizedMessage VungleException и использовать getExceptionCode для отладки. |
PlayAdCallback
private final PlayAdCallback vunglePlayAdCallback = new PlayAdCallback() {
@Override
public void onAdStart(String id) {
// Ad experience started
}
@Override
public void onAdEnd(String id) {
// Ad experience ended
}
@Override
public void onAdClick(String id) {
// User clicked on ad
}
@Override
public void onAdRewarded(String id) {
// User earned reward for watching an ad
}
@Override
public void onAdLeftApplication(String id) {
// User has left app during an ad experience
}
@Override
public void onError(String id, VungleException exception) {
// Ad failed to play
}
};
// 6.5.x & below
private final PlayAdCallback vunglePlayAdCallback = new PlayAdCallback() {
@Override
public void onAdStart(String placementReferenceId) {
// Ad experience started
}
// Deprecated
@Override
public void onAdEnd(String placementReferenceId, boolean completed, boolean isCTAClicked) {
// Invoked when the ad experience is completed
// isCTAClicked flag indicates whether CTA download button has been triggered
// completed flag will indicate whether user has watched 80% of video or longer.
}
@Override
public void onError(String placementReferenceId, VungleException exception) {
// Ad failed to play
}
};
Переопределяемые методы | Описание |
---|---|
onAdStart(String id) |
Вызывается при успешном запуске и отображении рекламы на устройстве. |
onAdEnd(String id) |
Вызывается после завершения показа рекламы, непосредственно перед возвращением управления основному приложению. |
onAdClick(String id) |
Вызывается, когда пользователь нажимает на видеорекламу или кнопку загрузки. |
onAdRewarded(String id) |
Вызывается, когда пользователь просмотрел 80% видео с вознаграждением и должен его получить. Здесь должно происходить вознаграждение пользователя, и оно будет активироваться только для размещения с вознаграждением. |
onAdLeftApplication(String id) |
Вызывается, когда пользователь выходит из приложения до завершения показа рекламы, например при открытии страницы магазина в рекламе. |
onAdError(String id, VungleException exception) |
Вызывается, когда при попытке воспроизведения рекламы возникает ошибка. Вы сможете просмотреть сообщение об ошибке из getLocalizedMessage VungleException и использовать getExceptionCode для отладки. |
Шаг 3. Загрузка, отображение и закрытие рекламы MREC
Загрузка рекламы MREC
Загрузка рекламы MREC аналогична загрузке полноэкранной рекламы. Однако необходимо настроить место размещения на поддержку канала MREC. Обратитесь к своему персональному менеджеру Vungle, чтобы активировать MREC для размещения.
Отображение рекламы MREC
Так как размер окна просмотра фиксированный, необходимо указать, что контейнер, используемый для отображения рекламы MREC, должен иметь размер 300dp x 250d, а окно просмотра можно разместить в любом месте экрана. Этот контейнер — это RelativeLayOut
.
Вы можете разместить RelativeLayout
в любом месте экрана. Затем необходимо вызвать AdConfig.setAdSize
, чтобы указать размер рекламы AdConfig.AdSize.VUNGLE_MREC
, и передать этот объект при вызове Vungle.getNativeAd
, чтобы получить объект рекламы MREC.
Наконец, вызовите функцию addView
, чтобы связать контейнер с рекламой MREC. Vungle MREC по умолчанию воспроизводит рекламу с включенным звуком, но вы можете задать параметр setMuted
равным true
, чтобы начинать воспроизведение видео с отключенным звуком.
private RelativeLayout mrecContainer = findViewById(...);
AdConfig adConfig = new AdConfig();
adConfig.setAdSize(AdConfig.AdSize.VUNGLE_MREC);
adConfig.setMuted(true);
VungleNativeAd vungleNativeAd = Vungle.getNativeAd("MREC_ID", adConfig, vunglePlayAdCallback);
View nativeAdView = vungleNativeAd.renderNativeView();
mrecContainer.addView(nativeAdView);
Закрытие рекламы MREC
Поскольку окно просмотра рекламы MREC добавлено в окно просмотра вашего контейнера, его также необходимо удалить на случай выхода окна просмотра рекламы за пределы экрана, удаления действия или фрагмента или перезапуска или удаления родительского контейнера окна просмотра. При попытке воспроизвести другую рекламу MREC, не закрыв предыдущую, вы можете столкнуться с неожиданным поведением своего приложения. Поэтому следует вызвать finishDisplayingAd
для прекращения показа рекламы. Мы также рекомендуем удалить событие onAdEnd
окна просмотра.
private VungleNativeAd vungleNativeAd;
// Calling finishDisplayingAd when you want to finish displaying MREC Ad
// will trigger onAdEnd and will tell you when you can remove the child
// MREC view container
vungleNativeAd.finishDisplayingAd();
// And removing empty ad view from container
@Override
public void onAdEnd(String id, boolean completed) {
…
parentView.removeView(nativeAdView);
vungleNativeAd = null;
…
}
Подключение и отключение состояния рекламы в формате MREC
Если пользователь прокрутит рекламу за пределы экрана, необходимо приостановить воспроизведение видео и возобновить его, когда его снова будет видно. Чтобы управлять состояниями приостановки и возобновления, вызовите setAdVisibility
из экземпляра VungleNativeAd
и установите для него значение true
, когда видео отображается, и false
, когда видео уходит за пределы экрана. setAdVisibility
не следует путать с видимостью окна просмотра: этот установщик сообщает SDK Vungle, отображается ли окно просмотра рекламы MREC или нет, и, в зависимости от этого, SDK приостанавливает или возобновляет воспроизведение видео.
- Приостановка воспроизведения рекламы MREC:
vungleNativeAd.setAdVisibility(false);
- Возобновление воспроизведения рекламы MREC:
vungleNativeAd.setAdVisibility(true);
Шаг 4. Настройка рекламы MREC (необязательно)
Вы можете настроить отдельные воспроизводимые вами рекламные ролики, указав в playAd
новый объект adConfig
. Когда объект AdConfig
имеет неопределенное значение, реклама воспроизводится с параметрами конфигурации по умолчанию; если значение определено, его настройки переопределяют настройки установщика AdConfig
. Ниже приводится пример использования AdConfig
:
Vungle.playAd(placementReferenceID, adConfig, vunglePlayAdCallback);
В приведенном выше примере используется объект adConfig
, который содержит настраиваемые параметры конфигурации. Настройте объект AdConfig
следующим образом:
AdConfig adConfig = new AdConfig();
adConfig.setAdOrientation(AdConfig.AUTO_ROTATE);
adConfig.setMuted(true);
Vungle.playAd(placementReferenceID, adConfig, vunglePlayAdCallback);
В таблице ниже перечислены доступные параметры AdConfig
рекламы MREC:
Параметр | Описание |
|
"false", если видео должно начинаться с настройками звука, соответствующими настройкам вашего внешнего приложения; "true", если видео всегда должно начинаться без звука |
|
принимает целое значение порядкового номера для отслеживания количества рекламных роликов, воспроизведенных за один сеанс |
Примечание. Вы можете использовать один и тот же объект AdConfig
для нескольких рекламных роликов.