AppLovin をメディエーションと統合する

このガイドでは、Google Mobile Ads SDK でメディエーションを使用して AppLovin の広告を読み込んで表示する方法を説明します。入札とウォーターフォールの両方の統合について説明します。また、広告ユニットのメディエーション設定に AppLovin を追加する方法と、AppLovin SDK とアダプタを Flutter アプリに統合する方法についても取り上げます。

サポートされている統合と広告フォーマット

AppLovin 用の AdMob メディエーション アダプタには、次の機能があります。

統合
入札単価
ウォーターフォール
フォーマット
バナー  1
インタースティシャル
特典

ウォーターフォールでサポートされているバナーサイズは 320×50 と 728×90 のみです。入札ではバナー広告はサポートされていません。

要件

  • Google Mobile Ads SDK のバージョンが最新であること
  • Flutter 3.7.0 以降
  • Android にデプロイするには
    • Android API レベル 23 以上
  • iOS にデプロイするには
    • iOS のデプロイ対象のバージョンが 12.0 以降であること
  • Google Mobile Ads SDK で構成された動作中の Flutter プロジェクト。詳しくは、スタートガイドをご覧ください。
  • メディエーションのスタートガイドの手順を完了していること

ステップ 1: AppLovin UI で構成を設定する

AppLovin アカウントに登録するか、ログインします。

AdMob 広告ユニットを設定するには、AppLovin の SDK キーレポートキーが必要です。これらの値を確認するには、AppLovin UI > [Account] > [Keys] に移動します。

入札のみを統合する場合は、メディエーション設定の構成に進みます。

メディエーション用のアプリを選択する

入札単価

入札統合の場合、この手順は必要ありません。

ウォーターフォール

AppLovin UI で、[Monetization] セクションの [Applications] を選択して、登録済みのアプリに移動します。利用可能なアプリのリストから、メディエーションで使用するアプリを選択します。

ゾーンを作成する

入札単価

入札統合の場合、この手順は必要ありません。

ウォーターフォール

AppLovin の UI で、[Monetization] セクションの [Zones] を選択して、登録済みのゾーン ID にアクセスします。アプリに必要なゾーンをすでに作成している場合は、ステップ 2 に進みます。新しいゾーン ID を作成するには、[ゾーンを作成] をクリックします。

[ゾーン ID] の名前を入力し、[プラットフォーム] として [Android] を選択して、[広告タイプ] を選択します。

[料金設定] で [固定 CPM] または [AppLovin による最適化] を選択して、ゾーンの料金設定を構成します。[固定 CPM] オプションでは、国ごとに CPM を設定できます。次に、[Save] をクリックします。

Android

iOS

ゾーンを作成すると、[ゾーン ID] 列にゾーン ID が表示されます。

Android

iOS

app-ads.txt を更新する

Authorized Sellers for Apps app-ads.txt は、承認されたチャネルでのみアプリ広告枠を販売できるようにする IAB Tech Lab が推進しているイニシアチブです。広告収益の大幅な減少を防ぐためには、app-ads.txt ファイルを実装する必要があります。まだ設定していない場合は、アプリの app-ads.txt ファイルを設定します。

Applovin に app-ads.txt を実装するには、AppLovin を app-ads.txt ファイルに追加します。

テストモードをオンにする

AppLovin の MAX テストモードガイドの手順に沿って、AppLovin テスト広告を有効にします。

ステップ 2: AdMob の UI で AppLovin のデマンドを設定する

広告ユニットのメディエーション設定を構成する

Android

手順については、Android のガイドの手順 2 をご覧ください。

iOS

手順については、iOS のガイドの手順 2 をご覧ください。

GDPR と米国の州規制の広告パートナー リストに AppLovin Corp. を追加する

欧州の規制に関する設定米国の州の規制に関する設定の手順に沿って、AdMob 管理画面の欧州および米国の州の規制に関する広告パートナーのリストに Applovin Corp. を追加します。

ステップ 3: AppLovin の SDK とアダプタをインポートする

pub.dev を介した統合

パッケージの pubspec.yaml ファイルに、Applovin SDK とアダプタの最新バージョンを含む次の依存関係を追加します。

dependencies:
  gma_mediation_applovin: ^

手動による統合

Applovin 向けの Google モバイル広告メディエーション プラグインの最新バージョンをダウンロードし、ダウンロードしたファイルを解凍して、解凍したプラグイン フォルダ(およびそのコンテンツ)を Flutter プロジェクトに追加します。次に、次の依存関係を追加して、pubspec.yaml ファイルでプラグインを参照します。

dependencies:
  gma_mediation_applovin:
    path: path/to/local/package

ステップ 4: AppLovin SDK にプライバシー設定を実装する

Google の EU ユーザーの同意ポリシーに準拠するには、欧州経済領域(EEA)、英国、スイスのユーザーに対して特定の情報を開示し、法律で義務付けられている場合は、Cookie やその他のローカル ストレージの使用、広告のパーソナライズを目的とした個人データの収集、共有、使用についてユーザーの同意を得る必要があります。このポリシーには、EU の e プライバシー指令と一般データ保護規則(GDPR)の要件が反映されています。パブリッシャー様には、同意がメディエーション チェーン内の各広告ソースに反映されていることを確認する責任があります。 Google は、同意に関するユーザーの選択をそのようなネットワークに自動的に渡すことはできません。

AppLovin は、共有設定から同意文字列を読み取り、それに応じて同意ステータスを設定することをサポートしています。

同意文字列を共有設定に書き込む CMP を使用していない場合は、GmaMediationApplovin.setHasUserConsent() メソッドと GmaMediationApplovin.setIsAgeRestrictedUser() メソッドを使用できます。次のサンプルコードは、同意情報を AppLovin SDK に渡す方法を示しています。これらのオプションは、Google Mobile Ads SDK を初期化する前に設定する必要があります。そうすることで、AppLovin SDK に正しく転送されます。

import 'package:gma_mediation_applovin/gma_mediation_applovin.dart';
// ...

GmaMediationApplovin.setHasUserConsent(true);
GmaMediationApplovin.setIsAgeRestrictedUser(true);

詳しくは、AppLovin のプライバシー設定をご覧ください。

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

米国の州のプライバシー法では、ユーザーが「個人情報」の「販売」を拒否する権利を保障することが求められています(用語は法律の定義に基づく)。「販売者」のホームページにある「個人情報を販売しない」リンクから販売を拒否することができます。米国のプライバシー関連州法遵守ガイドでは、Google 広告の配信で制限付きデータ処理を有効にできますが、Google がこの設定をメディエーション チェーン内の各広告ネットワークに適用することはできません。そのため、メディエーション チェーン内で個人情報の販売に関与する可能性のある広告ネットワークを特定し、各ネットワークのガイダンスに沿って州法を遵守する必要があります。

AppLovin 用の Google Mobile Ads メディエーション プラグインには、GmaMediationApplovin.setDoNotSell() メソッドが含まれています。次のサンプルコードは、同意情報を AppLovin SDK に渡す方法を示しています。これらのオプションは、Google Mobile Ads SDK を初期化する前に設定して、AppLovin SDK に正しく転送されるようにする必要があります。

import 'package:gma_mediation_applovin/gma_mediation_applovin.dart';
// ...

GmaMediationApplovin.setDoNotSell(true);

詳しくは、AppLovin のプライバシーに関するドキュメントをご覧ください。

ステップ 5: 必要なコードを追加する

Android

AppLovin の統合に、追加のコードは必要ありません。

iOS

SKAdNetwork の統合

AppLovin のドキュメントに沿って、プロジェクトの Info.plist ファイルに SKAdNetwork 識別子を追加します。

ステップ 6: 実装をテストする

テスト広告を有効にする

AdMob 用のテストデバイスを登録し、Applovin UI でテストモードを有効にしてください。

テスト広告を確認する

Applovin からテスト広告を受信していることを確認するには、Applovin(入札)と Applovin(ウォーターフォール)の広告ソースを使用して、広告インスペクタで単一の広告ソースのテストを有効にします。

省略可能なステップ

ネットワーク固有のパラメータ

AppLovin アダプタは、AppLovinMediationExtras オブジェクトを広告リクエストに渡して、ネットワーク固有のパラメータを設定することをサポートしています。次のサンプルコードは、isMuted パラメータを使用して動画広告の音声を無効にする方法を示しています。

AppLovinMediationExtras applovinExtras = AppLovinMediationExtras(isMuted: true)

AdRequest request = AdRequest(
    keywords: <String>['foo', 'bar'],
    contentUrl: 'http://foo.com/bar.html',
    mediationExtras: [applovinExtras],
);

最適化

起動アクティビティに GmaMediationApplovin.initializeSdk('sdkKey') の呼び出しを追加すると、アプリの起動と同時に AppLovin がイベントをトラッキングできるようになります。

エラーコード

アダプタが AppLovin から広告を受信できなかった場合は、次のクラスの ResponseInfo を使用して、広告レスポンスから根本原因のエラーを確認できます。

Android

com.google.ads.mediation.applovin.mediation.ApplovinAdapter
com.google.ads.mediation.applovin.AppLovinMediationAdapter

iOS

GADMAdapterAppLovin
GADMAdapterAppLovinRewardBasedVideoAd
GADMediationAdapterAppLovin

広告の読み込みに失敗した場合に AppLovin アダプタがスローするコードとメッセージは次のとおりです。

Android

エラーコード 理由
-1009 ~-1、204 AppLovin SDK がエラーを返しました。詳しくは、AppLovin のドキュメントをご覧ください。
101 リクエストされた広告サイズが、AppLovin がサポートするバナーサイズと一致しません。
103 コンテキストが null です。
104 AppLovin の入札トークンが空です。
105 同じゾーンに対して複数の広告がリクエストされました。AppLovin では、ゾーンごとに一度に 1 つの広告しか読み込めません。
106 広告を表示する準備ができていません。
108 AppLovin アダプタは、リクエストされた広告フォーマットをサポートしていません。
109 Context が Activity インスタンスではありません。
110 サーバー パラメータが無効です(SDK キーが null など)。
112 ユーザーが子供である。

iOS

エラーコード 理由
-1009 ~-1、204 AppLovin SDK がエラーを返しました。詳しくは、AppLovin のドキュメントをご覧ください。
101 リクエストされた広告サイズが、AppLovin がサポートするバナーサイズと一致しません。
102 AdMob 管理画面で設定された AppLovin サーバー パラメータが存在しないか、無効です。
103 AppLovin 広告を表示できませんでした。
104 同じゾーンに対して複数の広告がリクエストされました。AppLovin では、ゾーンごとに一度に 1 つの広告しか読み込めません。
105 AppLovin SDK キーが見つかりません。
107 入札トークンが空です。
108 AppLovin アダプタは、リクエストされた広告フォーマットをサポートしていません。
110 AppLovin は読み込み成功のコールバックを送信しましたが、読み込まれた広告は 1 つもありませんでした。
111 AppLovin SDK のインスタンスを取得できません。
112 ユーザーが子供である。
113 AppLovin SDK の共有インスタンスが初期化されていません。
114 AppLovin SDK が入札トークンを返さない。

AppLovin Flutter メディエーション アダプタの変更履歴

バージョン 2.3.2

  • Google Mobile Ads Flutter プラグイン バージョン 6.0.0 でビルドおよびテスト済み。

バージョン 2.3.1

  • Google Mobile Ads Flutter プラグイン バージョン 6.0.0 でビルドおよびテスト済み。

バージョン 2.3.0

  • Google Mobile Ads Flutter プラグイン バージョン 6.0.0 でビルドおよびテスト済み。

バージョン 2.2.1

  • Google Mobile Ads Flutter プラグイン バージョン 6.0.0 でビルドおよびテスト済み。

バージョン 2.2.0

  • Google Mobile Ads Flutter プラグイン バージョン 6.0.0 でビルドおよびテスト済み。

バージョン 2.1.0

  • Google Mobile Ads Flutter プラグイン バージョン 5.3.1 でビルドおよびテストされています。

バージョン 2.0.0

  • Google Mobile Ads Flutter プラグイン バージョン 5.3.1 でビルドおよびテストされています。

バージョン 1.2.0

  • Google Mobile Ads Flutter プラグイン バージョン 5.1.0 でビルドおよびテスト済み。

バージョン 1.1.0

  • Google Mobile Ads Flutter プラグイン バージョン 5.1.0 でビルドおよびテスト済み。

バージョン 1.0.0

  • 初回リリース。
  • Google Mobile Ads Flutter プラグイン バージョン 5.0.0 でビルドおよびテスト済み。