Перейти к основному содержимому
Версия: 3.3.1

Методы Обратного Вызова Для Отслеживания Дохода От Рекламы

Appodeal SDK позволяет вам получить данные о доходе от рекламы на уровне показа с помощью Ad Revenue Callbacks. Эти данные включают в себя такую информацию, как название рекламной сети, доход, тип рекламы, и т.д.

Данные о доходе от рекламы на уровне показа могут использоваться для отправки в сторонние SDK, такие как Firebase, для всех поддерживаемых рекламных сетей.

Если вы уже интегрировали Firebase, который включен в Appodeal SDK, используя инструкцию, то данные о доходе от рекламы будут отправлены автоматически, можете почитать подробнее здесь во втором шаге.

Минимальные требования:

Appodeal SDK 3.0.1+

Реализация Методов Обратного Вызова

Appodeal.setAdRevenueCallbacks(object : AdRevenueCallbacks {
override fun onAdRevenueReceive(revenueInfo: RevenueInfo) {
// Вызывается всякий раз, когда SDK получает информацию о доходах по рекламе.
}
}
примечание

Вcе callback методы вызываются в главном потоке.

Примечание Admob

Для получения дохода от рекламы на уровне показов от Admob вам также необходимо включить эту настройку в вашей учетной записи AdMob.

Перейдите в Admob Account SettingsAccount → включите Impression-level ad revenue переключатель.

Описание Appodeal Ad Revenue

RevenueInfo - представляет информацию о доходах от рекламных сетей.

ПараметрТипОписание
networkNameStringИмя рекламной сети, гарантированно не пустое.
demandSourceStringИмя источника спроса и имя участника торгов в случае показа в результате торгов в реальном времени, гарантированно не пустое.
adUnitNameStringУникальное название рекламного блока гарантированно не пустое.
placementStringИмя плейсмента в Appodeal гарантированно не пустое.
revenueDoubleСумма дохода от объявления или 0, если его не существует.
adTypeIntТип рекламы Appodeal.
adTypeStringStringТип рекламы Appodeal в строковом представлении.
platformStringНазвание платформы Appodeal.
revenueCurrencyRevenueCurrencyТекущая валюта, поддерживаемая Appodeal (USD).
currencyStringТекущая валюта, поддерживаемая Appodeal (USD) в строковом представлении.
revenuePrecisionStringТочность дохода.
ВАРИАНТЫ ТОЧНОСТИ ДОХОДА:
  1. exact - программный доход - это итоговая цена аукциона;
  2. publisher_defined - доход от кросс-промо кампаний;
  3. estimated - доход на основе исторических данных сети eCPM и pricefloors;
  4. undefined**` - сумма дохода не определена.

Вариант использования

Помните:

Если вы интегрировали аналитику, например Firebase, используя это руководство с Appodeal, то никаких дополнительных действий не требуется.

Если вы используете в проекте свою собственную аналитику, то воспользуйтесь примером ниже:

override fun onAdRevenueReceive(revenueInfo: RevenueInfo) {
// AppsFlyer
val customParams = mapOf(
Scheme.AD_UNIT to revenueInfo.adUnitName,
Scheme.AD_TYPE to revenueInfo.adTypeString,
)
AppsFlyerAdRevenue.logAdRevenue(
revenueInfo.networkName,
MediationNetwork.appodeal,
Currency.getInstance(Locale.US),
revenueInfo.revenue,
customParams
)

// Adjust
val adRevenue = AdjustAdRevenue(AdjustConfig.AD_REVENUE_SOURCE_PUBLISHER).apply {
setRevenue(revenueInfo.revenue, revenueInfo.currency)
setAdRevenueNetwork(revenueInfo.networkName)
setAdRevenueUnit(revenueInfo.adUnitName)
}
Adjust.trackAdRevenue(adRevenue)

// Firebase
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.AD_IMPRESSION) {
param(FirebaseAnalytics.Param.AD_PLATFORM, revenueInfo.platform)
param(FirebaseAnalytics.Param.SOURCE, revenueInfo.networkName)
param(FirebaseAnalytics.Param.AD_FORMAT, revenueInfo.adTypeString)
param(FirebaseAnalytics.Param.AD_UNIT_NAME, revenueInfo.adUnitName)
param(FirebaseAnalytics.Param.CURRENCY, revenueInfo.currency)
param(FirebaseAnalytics.Param.VALUE, revenueInfo.revenue)
}
}