Реклама
Обзор
GamePush позволяет реализовать показ рекламных объявлений или видео с вознаграждением в игре. Работа с рекламой в GamePush происходит с помощью Менеджера рекламы gp.ads
.
Менеджер управляет баннерами на странице игры, отвечает за:
- Показ рекламы;
- Управление таймерами автоматического обновления;
- Частоту показа рекламы.
Поддерживаемые площадки
Площадки без поддержки
Дополнительные разделы
🗃️ Сторонние рекламные провайдеры
Элементов: 5
Менеджер рекламы
FREEРекламный менеджер управляет баннерами на странице. Его ответственность — показ рекламы, управление таймерами автообновления и частоты показа рекламы.
Доступные свойства менеджера рекламы:
- JavaScript
- Unity
// Проверка включенного AdBlock
gp.ads.isAdblockEnabled;
// Проверка доступности рекламного баннера
gp.ads.isStickyAvailable;
gp.ads.isFullscreenAvailable;
gp.ads.isRewardedAvailable;
gp.ads.isPreloaderAvailable;
// Проверка рекламы
gp.ads.isStickyPlaying;
gp.ads.isFullscreenPlaying;
gp.ads.isRewardedPlaying;
gp.ads.isPreloaderPlaying;
// Проверка включенных рекламных оверлеев
// Включен оверлей обратного отсчета перед показом фулскрин рекламы
gp.ads.isCountdownOverlayEnabled;
// Включен оверлей при неудачном показе rewarded video
gp.ads.isRewardedFailedOverlayEnabled;
// Можно ли на площадке показывать фулскрин рекламу перед началом геймплея
gp.ads.canShowFullscreenBeforeGamePlay;
// Проверка включенного AdBlock
GP_Ads.IsAdblockEnabled();
// Проверка доступности рекламного баннера
GP_Ads.IsFullscreenAvailable();
GP_Ads.IsPreloaderAvailable();
GP_Ads.IsRewardedAvailable();
GP_Ads.IsStickyAvailable();
// Проверка рекламы
GP_Ads.IsFullscreenPlaying();
GP_Ads.IsPreloaderPlaying();
GP_Ads.IsRewardPlaying();
GP_Ads.IsStickyPlaying();
// Проверка включенных рекламных оверлеев
// Включен оверлей обратного отсчета перед показом фулскрин рекламы
GP_Ads.IsCountdownOverlayEnabled();
// Включен оверлей при неудачном показе rewarded video
GP_Ads.IsRewardedFailedOverlayEnabled();
// Можно ли на площадке показывать фулскрин рекламу перед началом геймплея
GP_Ads.CanShowFullscreenBeforeGamePlay();
Вы можете подписаться на следующие базовые события:
- JavaScript
- Unity
// Начался показ рекламы
gp.ads.on('start', () => {});
// Закончился показ рекламы
gp.ads.on('close', (success) => {});
private void OnEnable()
{
GP_Ads.OnAdsStart += OnAdsStart;
GP_Ads.OnAdsClose += OnAdsClose;
}
private void OnDisable()
{
GP_Ads.OnAdsStart -= OnAdsStart;
GP_Ads.OnAdsClose -= OnAdsClose;
}
private void OnAdsStart(){
// Начался показ рекламы
}
private void OnAdsClose(bool success){
// Закончился показ рекламы
}
Fullscreen
FREEFullscreen
баннер или interstitial
- всплывающая, часто полноэкранная реклама с возможностью пропуска (иногда только через несколько секунд). Обычно показывается в переходах между уровнями. Его показ многими площадками запрещен во время самого геймплея. Разрешено показывать лишь в перерывах между игровыми сессиями.
Площадкой VK Games запрещается так же во время навигации, соответственно будем считать это плохой практикой и на других площадках.
Пример вызова:
- JavaScript
- Unity
// Показать fullscreen, возвращает промис
gp.ads.showFullscreen();
// Показать fullscreen с окном обратного отсчета перед показом рекламы
gp.ads.showFullscreen({ showCountdownOverlay: true });
// Начался показ
gp.ads.on('fullscreen:start', () => {});
// Закончился показ
gp.ads.on('fullscreen:close', (success) => {});
// Показать fullscreen
public void ShowFullscreen() => GP_Ads.ShowFullscreen(OnFullscreenStart, OnFullscreenClose);
// Начался показ
private void OnFullscreenStart() => Debug.Log("ON FULLSCREEN START");
// Закончился показ
private void OnFullscreenClose(bool success) => Debug.Log("ON FULLSCREEN CLOSE");
Preloader
FREEPreloader — баннер, появляющийся во время загрузки игры. На многих площадках реализован через Fullscreen баннер, но не завязан на его таймеры (кроме Яндекс.Игр).
Разрешен показ только перед началом игры.
Пример вызова:
- JavaScript
- Unity
// Показать preloader, возвращает промис
gp.ads.showPreloader();
// Начался показ
gp.ads.on('preloader:start', () => {});
// Закончился показ
gp.ads.on('preloader:close', (success) => {});
// Показать preloader
public void ShowPreloader() => GP_Ads.ShowPreloader(OnPreloaderStart, OnPreloaderClose);
// Начался показ
private void OnPreloaderStart() => Debug.Log("ON PRELOADER: START");
// Закончился показ
private void OnPreloaderClose(bool success) => Debug.Log("ON PRELOADER: CLOSE");
Rewarded Video
FREERewarder Video — видеореклама без возможности пропуска, цель которой для игрока — получить награду за просмотр. Запрещается показывать без начисления награды.
Пример вызова:
- JavaScript
- Unity
// Показать rewarded video, возвращает промис
gp.ads.showRewardedVideo();
// Показать rewarded video с опцией показа оверлея
// при неудачном показе rewarded video
gp.ads.showFullscreen({ showCountdownOverlay: true });
// Асинхронно
const success = await gp.ads.showRewardedVideo();
if (success) {
gp.player.add('gold', 5000);
}
// Начался показ
gp.ads.on('rewarded:start', () => {});
// Закончился показ
gp.ads.on('rewarded:close', (success) => {});
// Получена награда
gp.ads.on('rewarded:reward', () => {});
// Показать rewarded video
public void ShowRewarded() => GP_Ads.ShowRewarded("COINS", OnRewardedReward, OnRewardedStart, OnRewardedClose);
// Начался показ
private void OnRewardedStart() => Debug.Log("ON REWARDED: START");
// Получена награда
private void OnRewardedReward(string value)
{
if (value == "COINS")
Debug.Log("ON REWARDED: +150 COINS");
if (value == "GEMS")
Debug.Log("ON REWARDED: +5 GEMS");
}
// Закончился показ
private void OnRewardedClose(bool success) => Debug.Log("ON REWARDED: CLOSE");
Sticky Banner
FREESticky баннер — фиксированный баннер в нижней части экрана, занимает ~50-100px (110px VK Direct Games). Баннер не должен закрывать игровую область.
В панели можно настроить частоту автообновления. Баннер будет обновляться с указанной частотой сразу после старта.
Пример вызова:
- JavaScript
- Unity
// Показать sticky баннер, дальше автообновляется сам
gp.ads.showSticky();
// Обновить sticky баннер, принудительное обновление
gp.ads.refreshSticky();
// Закрыть sticky баннер
gp.ads.closeSticky();
// Открылся баннер
gp.ads.on('sticky:start', () => {});
// Баннер показался на экране
gp.ads.on('sticky:render', () => {});
// Баннер обновился
gp.ads.on('sticky:refresh', () => {});
// Закрылся баннер
gp.ads.on('sticky:close', () => {});
// Показать sticky баннер, дальше автообновляется сам
public void ShowSticky() => GP_Ads.ShowSticky();
// Обновить sticky баннер, принудительное обновление
public void RefreshSticky() => GP_Ads.RefreshSticky();
// Закрыть sticky баннер
public void CloseSticky() => GP_Ads.CloseSticky();
// Открылся баннер
private void OnStickyStart() => Debug.Log("ON STICKY: START");
// Закрылся баннер
private void OnStickyClose() => Debug.Log("ON STICKY: CLOSE");
// Баннер показался на экране
private void OnStickyRender() => Debug.Log("ON STICKY: RENDER");
// Баннер обновился
private void OnStickyRefresh() => Debug.Log("ON STICKY: REFRESH");
Поддерживаемые площадки
Площадки без поддержки
Оставайтесь на связи
С другими разделами документации вы можете ознакомиться здесь. Для начала работы вы можете ознакомиться с нашими туториалами.
Сообщество GamePush в Telegram
: @gs_community.
Для ваших обращений e-mail
: [email protected]
Желаем вам успехов!