メディエーション

このガイドでは、メディエーション アダプタを Flutter アプリに統合する方法について説明します。

前提条件

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

メディエーションを初めてご利用の場合は、メディエーションの概要を読む。

Mobile Ads SDK を初期化する

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

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

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  
  MobileAds.instance.initialize()
    .then((initializationStatus) {
      initializationStatus.adapterStatuses.forEach((key, value) {
        debugPrint('Adapter status for $key: ${value.description}');
      });
  });
  
  runApp(MyApp());
}

Gradle の設定を更新する(Android のみ)

プラグインの Android API を使用できるように、settings.gradle ファイルに次の行を追加します。

def flutterProjectRoot = rootProject.projectDir.parentFile.toPath()
def plugins = new Properties()
def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins')
if (pluginsFile.exists()) {
    pluginsFile.withInputStream { stream -> plugins.load(stream) }
}

plugins.each { name, path ->
    def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile()
    include ":$name"
    project(":$name").projectDir = pluginDirectory
}

パートナー ネットワークの依存関係を追加する

メディエーション アダプターとその依存関係を Android プロジェクトと iOS プロジェクトに追加する必要があります。これらは、Android ではアプリレベルの build.gradle ファイルを更新し、iOS では Podfile を更新することで追加できます。Google は、AndroidiOS の両方に対応したオープンソースのアダプタを GitHub で公開しています。

各パートナー ネットワークの AndroidiOS のドキュメントで、アプリにアダプターを追加する方法について詳細なガイダンスをご覧ください。

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

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

final bannerAd = AdManagerBannerAd(
      size: [AdSize.banner],
      adUnitId: '<your-ad-unit>',
      listener: AdManagerBannerAdListener(
        onAdLoaded: (ad) {
          debugPrint('$ad loaded: ${ad.responseInfo?.mediationAdapterClassName}');
        },
      ),
      request: AdManagerAdRequest(),
    );

メディエーションとバナー広告を使用する

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

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

ネイティブ メディエーションを実装する際のおすすめの方法は次のとおりです。

ネイティブ広告プレゼンテーション ポリシー
各広告ネットワークには独自のポリシーがあります。メディエーションを使用する場合は、広告を提供したメディエーション対象ネットワークのポリシーにアプリが準拠している必要があります。

米国のプライバシー関連州法と GDPR

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

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