展示机会层级的广告收入

当广告发生展示时,Google Mobile Ads SDK for React Native 会提供与该次展示相关联的广告收入数据。您可以使用此数据来计算用户的生命周期价值 (LTV),也可以将此数据传送到分析平台或第三方归因合作伙伴。

本指南介绍了如何在 React Native 原生应用中实现展示机会层级的广告收入数据捕获。

前提条件

在继续操作之前,请确保满足以下条件:

每种广告格式都支持 onAdPaid 事件回调。在广告生命周期内,Google Mobile Ads SDK for React Native 会监控展示事件,并以赚取的 AdValue 载荷作为参数调用该处理脚本。

以下示例在激励广告上注册了付费事件监听器,记录了赚取的广告收入数据,并展示了广告:

const rewarded = await RewardedAd.load(adRequest);

rewarded.adEventCallback = {
  onAdPaid(adValue: AdValue) {
    const revenue = adValue.amountMicros / 1000000;
    console.log(`Earned ad revenue: ${revenue} ${adValue.currencyCode}`);
    console.log(`Precision level: ${adValue.precision}`);
  },
};

rewarded.show();

我们建议您执行以下操作:

  • 对于全屏广告,请在加载广告后、展示广告之前,在广告对象上设置监听器。对于横幅广告和原生广告,请将 onAdPaid 回调作为属性传递给 <BannerAdView /> 或 <NativeAdView /> 组件。此流程可确保您不会错过任何付费事件回调。

  • 当 Google Mobile Ads SDK for React Native 调用 onAdPaid 回调时,将展示机会层级的广告收入信息发送到您的首选分析服务器。此流程可确保您不会错过回调,并保持数据一致。

了解 AAP 集成

如需详细了解如何将广告收入数据传送到分析平台,请参阅以下应用归因合作伙伴 (AAP) 指南:

了解 AdValue 对象

AdValue 对象表示展示某个广告可赚取的货币价值,包括货币代码和精度类型。下表列出了 AdValue 对象属性:

属性 说明
amountMicros 广告收入(以微单位表示),其中 1000000 微单位等于一个货币单位,例如 1.00 美元或 1.00 欧元。
currencyCode 广告价值的 ISO 4217 货币代码,例如 USD 或 EUR。
precision 广告价值的精确度。下表详细介绍了每个精确度级别:
  • UNKNOWN:未知的广告价值。如果启用了生命周期价值回 ping,但数据不足,就会返回此值。
  • ESTIMATED:根据汇总数据估算的广告价值。
  • PUBLISHER_PROVIDED:发布商提供的广告附加值,例如中介组中的人工每千次展示费用。
  • PRECISE:为广告所付费用的精确值。

在 AdMob 中介中,AdMob 会尝试为经过优化的广告来源提供 ESTIMATED 值。如需了解详情,请参阅优化中介中的瀑布流广告来源。 如果广告来源未经优化,或者没有足够多的汇总数据,无法进行估算,Google Mobile Ads SDK for React Native 会返回 PUBLISHER_PROVIDED 精确度类型。

来自出价广告来源的测试展示

通过测试请求,触发出价广告来源的展示机会层级的广告收入事件后,您只会收到以下值:

  • UNKNOWN:表示精度类型。
  • 0:表示广告价值。

如需详细了解如何发送测试广告请求,请参阅启用测试设备。