AdMob メディエーションを設定する

AdMob メディエーションは、AdMob ネットワークや第三者広告ソースなど、複数のソースからの広告を 1 か所でアプリに配信できる機能です。広告配信に最適なネットワークが見つかるように AdMob メディエーションが複数のネットワークに広告リクエストを送信し、広告掲載率の最大化と収益の拡大を支援します。事例紹介

前提条件

ある広告フォーマットについてメディエーションを組み込むには、その広告フォーマットをあらかじめアプリに組み込んでおく必要があります。

メディエーションを初めてご利用の場合は、AdMob メディエーションの概要をご覧ください。

Google Mobile Ads SDK for React Native を初期化する

クイック スタートガイドでは、Google Mobile Ads SDK for React Native を初期化する方法を説明します。この初期化の呼び出し中に、メディエーション アダプタも初期化されます。最初の広告リクエストにすべての広告ネットワークが参加できるようにするため、広告を読み込むのは初期化が完了するまで待ってからにしてください。

次のサンプルコードは、広告リクエストを行う前に各アダプタの初期化状況を確認する方法を示しています。

TypeScript

import {InitializationStatus, initialize} from '@google/mobile-ads';
import {useEffect, useState} from 'react';
import {Text, View} from 'react-native';

/**
 * Root application component demonstrating Google Mobile Ads SDK initialization
 * with mediation adapters.
 */
export function App() {
  const [isInitialized, setIsInitialized] = useState<boolean>(false);

  useEffect(() => {
    // Initialize the Google Mobile Ads SDK.
    initialize({}, (status: InitializationStatus) => {
      console.log('Mobile Ads SDK initialized successfully:', status);

      // Optionally log the adapter states.
      for (const [adapterName, adapterStatus] of Object.entries(
        status.adapterStatusMap,
      )) {
        console.log(
          `Adapter: ${adapterName}, State: ${adapterStatus.state}, ` +
            `Description: ${adapterStatus.description}, Latency: ${adapterStatus.latencyMs} ms`,
        );
      }

      setIsInitialized(true);
    });
  }, []);

  return (
    <View>
      <Text>
        {isInitialized ? 'Mobile Ads SDK Ready' : 'Initializing SDK...'}
      </Text>
    </View>
  );
}

広告を読み込んだ広告ネットワーク アダプター クラスを確認する

次のサンプルコードでは、バナー広告の広告ネットワーク クラス名をログに記録しています。

TypeScript

BannerAd.load(
  {
    adUnitId: AD_UNIT_ID,
    adSize: AdSize.BANNER,
  },
  {
    onAdLoaded: (ad: BannerAd) => {
      const responseInfo = ad.getResponseInfo();
      console.log(
        `Adapter class name: ${responseInfo.loadedAdSourceResponseInfo?.adapterClassName}`,
      );
    },
  },
);

AdMob メディエーションで使用するバナー広告ユニットについては、すべての第三者広告ソースの管理画面で更新を無効にしてください。これにより、更新の重複を防ぐことができます。AdMob でもバナー広告ユニットのリフレッシュ レートに基づいて更新が行われるためです。

AdMob メディエーションでネイティブ広告を使用する

ネイティブ メディエーションを実装する際に考慮すべきベスト プラクティスをいくつかご紹介します。

ネイティブ広告の表示に関するポリシー
各広告ネットワークには独自のポリシーがあります。メディエーションを使用する場合、アプリは広告を配信するメディエーション対象ネットワークのポリシーに準拠する必要があることに注意してください。

米国のプライバシー関連州法および GDPR

米国のプライバシー関連州法または一般データ保護規則(GDPR)を遵守する必要がある場合は、米国の州規制の設定または GDPR 設定の手順に沿って、AdMob の「プライバシーとメッセージ」の米国の州または GDPR 広告パートナーのリストにメディエーション パートナーを追加してください。追加しない場合、アプリに広告が配信されないことがあります。

制限付きデータ処理(RDP)を有効にする方法と、Google User Messaging Platform(UMP)SDK を使用して GDPR 同意を取得する方法の詳細をご確認ください。