Введение
API Offerwall Custom Choice позволяет вам интегрировать собственное решение по монетизации с Offerwall в Google Ad Manager .
Чтобы интегрировать собственное решение для монетизации с Offerwall, выполните следующие шаги по настройке Custom Choice . Вкратце:
Включите опцию «Пользовательский выбор» для вашего Offerwall на вкладке «Конфиденциальность и сообщения» в Менеджере объявлений.
Добавьте пользовательский JavaScript между тегами
<head>
и</head>
сайта, на котором вы опубликовали свой Offerwall.Создайте объект
CustomOfferwallChoice
, как определено в следующих разделах, и зарегистрируйте его в вашем Offerwall в окне.
Пример кода
Чтобы быстро приступить к работе, ознакомьтесь с этим рабочим примером реализации API пользовательского выбора Offerwall.
Использование API
CustomOfferwallChoice
— это объект JavaScript, который вы подключаете к своему Offerwall для интеграции вашей пользовательской реализации монетизации.
// Define your custom choice.
class CustomOfferwallChoice {
// Initialize your custom choice, which may include loading or preparing any
// resources required to function.
async initialize(params: InitializeParams): Promise<InitializeResponseEnum> {...}
// Show your custom choice on the web page, which may be a subscription
// service, micropayments service, rewarded ad, etc.
async show(): Promise<boolean> {...}
}
// Register your custom choice with your Offerwall.
window.googlefc = window.googlefc || {};
window.googlefc.offerwall = window.googlefc.offerwall || {};
window.googlefc.offerwall.customchoice = window.googlefc.offerwall.customchoice || {};
window.googlefc.offerwall.customchoice.registry = new CustomOfferwallChoice();
Определения методов
В этом разделе описывается каждый метод, который требуется реализовать с помощью CustomOfferwallChoice
.
инициализировать
initialize(params: InitializeParams ): Promise< InitializeResponseEnum >
Инициализируйте ваше собственное решение для монетизации. Эта функция вызывается перед любой другой функцией и может быть вызвана не более одного раза при загрузке страницы.
Пример
async initialize(params: InitializeParams): Promise<InitializeResponseEnum> {
// If your custom choice is inoperable on this page, return CUSTOM_CHOICE_DISABLED,
// causing your Offerwall to exclude the custom choice option when rendering.
const isCustomChoiceEnabled: boolean = await this.initializeCustomOfferwallChoice(params);
if (!isCustomChoiceEnabled) {
resolve(googlefc.offerwall.customchoice.InitializeResponseEnum.CUSTOM_CHOICE_DISABLED);
}
// If the user should automatically be granted page access on page load, return
// ACCESS_GRANTED, causing your Offerwall to be ineligible to render on this page.
const isAccessGranted: boolean = await this.shouldUserBeGrantedPageAccess();
if (isAccessGranted) {
resolve(googlefc.offerwall.customchoice.InitializeResponseEnum.ACCESS_GRANTED);
}
// If the user shouldn't automatically be granted page access on page load, return
// ACCESS_NOT_GRANTED, causing your Offerwall to be eligible to render on this page.
resolve(googlefc.offerwall.customchoice.InitializeResponseEnum.ACCESS_NOT_GRANTED);
}
показывать
show(): Promise<boolean>
Предоставьте своё индивидуальное решение для монетизации и обработайте действия пользователя, связанные с монетизацией. Этот метод вызывается вашим Offerwall, когда пользователь выбирает нужный вариант. Монетизация может осуществляться в любой форме, включая подписку, микроплатежи, рекламу с вознаграждением и многое другое. При вызове Offerwall скрывается до тех пор, пока это обещание не будет выполнено, а ваш CustomOfferwallChoice
отвечает за блокировку контента страницы в это время. После выполнения этого обещания ваш CustomOfferwallChoice
должен быть полностью скрыт с веб-страницы.
После разрешения обещания функции show()
необходимо:
Скройте ваше готовое решение по монетизации.
Возвращает логическое значение, указывающее, получил ли пользователь доступ к содержимому страницы:
-
true
: Пользователь получил доступ к содержимому страницы. В этом случае ваш Offerwall не будет отображаться повторно после разрешения обещания. -
false
: Пользователь не получил доступ к содержимому страницы. В этом случае ваш Offerwall будет отображен повторно после разрешения обещания.
-
Пример
async show(): Promise<boolean> {
// Show your custom choice dialog and hide it once the user completes an action.
const didUserGainAccessToPage: boolean = await this.showCustomChoiceDialogUntilUserAction();
resolve(didUserGainAccessToPage);
}
Регистрация индивидуального выбора
Регистрация включает передачу созданного вами объекта CustomOfferwallChoice
в следующий реестр окон: window.googlefc.offerwall.customchoice.registry
Пример
// Register your custom choice with your Offerwall.
window.googlefc = window.googlefc || {};
window.googlefc.offerwall = window.googlefc.offerwall || {};
window.googlefc.offerwall.customchoice = window.googlefc.offerwall.customchoice || {};
window.googlefc.offerwall.customchoice.registry = new CustomOfferwallChoice();
Определения типов API
В этом разделе описывается каждый тип данных в API.
Определения объектов
В этом разделе описывается каждое определение объекта в API.
InitializeParams
Тип объекта параметра для функции инициализации .
Свойство | Тип | Описание |
---|---|---|
offerwallLanguageCode | string | undefined | Код языка вашего Offerwall, который обслуживается, как определено BCP 47 . |
Определения перечислений
В этом разделе описывается каждое определение перечисления в API.
googlefc.offerwall.customchoice.InitializeResponseEnum
Тип перечисления ответа для функции инициализации .
Член перечисления | Описание |
---|---|
CUSTOM_CHOICE_DISABLED | Отключите возможность выбора в вашем Offerwall. Если опция выбора отключена, ваш Offerwall может работать только отображается с другими подходящими вариантами; если другие подходящие варианты отсутствуют, ваш Offerwall никогда не будет отображаться на странице. |
ACCESS_GRANTED | Предоставьте пользователю доступ к странице при её загрузке. Если будет возвращён этот ответ, ваш Offerwall никогда не будет отображаться на странице. |
ACCESS_NOT_GRANTED | Не предоставляйте пользователю доступ к странице при её загрузке. Ваш Offerwall будет отображаться на странице, если будет получен этот ответ. |