インプレッションが発生すると、そのインプレッションに関連する広告収入データが Google Mobile Ads SDK for React Native によって提供されます。このデータを使用して、ユーザーのライフタイム バリュー(LTV)を計算したり、データを分析プラットフォームやサードパーティのアトリビューション パートナーに転送したりできます。
このガイドでは、React Native アプリにインプレッション単位の広告収益データ キャプチャを実装する方法について説明します。
前提条件
先に進む前に、次のことを実施してください。
AdMob の管理画面でインプレッション単位の広告収益を有効にします。詳細については、AdMob 管理画面のインプレッション単位の広告収益を使用するをご覧ください。
少なくとも 1 つの広告フォーマットを実装します。
有料イベント ハンドラを登録する
各広告フォーマットは、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 統合の詳細
広告収益データを分析プラットフォームに転送する方法について詳しくは、次の App Attribution Partner(AAP)のガイドをご覧ください。
AdValue オブジェクトについて
AdValue オブジェクトは、広告で得られた金銭的価値を表します。これには、通貨コードと精度タイプが含まれます。次の表に、AdValue オブジェクトのプロパティを示します。
| プロパティ | 説明 |
|---|---|
amountMicros |
広告収入(マイクロ単位)。1000000 マイクロが 1 通貨単位(1.00 米ドル、1.00 ユーロなど)に相当します。 |
currencyCode |
広告価値の ISO 4217 通貨コード(例: USD、EUR)。 |
precision |
広告価値の精度レベル。次のリストに、各精度レベルの詳細を示します。
|
AdMob メディエーションでは、AdMob は最適化された広告ソースの ESTIMATED 値を提供しようとします。詳しくは、メディエーションでウォーターフォールの広告ソースを最適化するをご覧ください。
広告ソースが最適化されていない場合や、推定に十分な集計データがない場合、Google Mobile Ads SDK for React Native は PUBLISHER_PROVIDED 精度タイプを返します。
入札広告ソースからのインプレッションをテストする
テスト リクエストを通じて入札広告ソースでインプレッション単位の広告収益イベントが発生すると、次の値のみが返されます。
UNKNOWN: 精度タイプを示します。
0: 広告の価値を示します。
テスト広告リクエストの送信について詳しくは、テストデバイスを有効にするをご覧ください。