このガイドでは、Google Mobile Ads SDK を使用して、メディエーションを介して AppLovin の広告を読み込んで表示する方法について説明します。入札とウォーターフォールの両方の統合について説明します。ここでは、広告ユニットのメディエーション設定に AppLovin を追加する方法と、AppLovin SDK とアダプタをアプリに統合する方法について説明します。 Flutter
サポートされている統合と広告フォーマット
AdMob AppLovin のメディエーション アダプタには、次の機能があります。
統合 | |
---|---|
単価設定 | |
滝 | |
フォーマット | |
バナー | 1 |
インタースティシャル | |
特典 |
バナー広告(MREC バナーを除く)はメディエーションでのみサポートされます。入札には、どのタイプのバナー広告も対応していません。
要件
- 最新の Google Mobile Ads SDK
- Flutter 3.7.0 以降
- Android にデプロイする場合:
- Android API レベル 21 以降
- iOS にデプロイするには
- iOS デプロイ ターゲットが 12.0 以降
- Google Mobile Ads SDK で構成された動作する Flutter プロジェクト。詳細については、スタートガイドをご覧ください。
- メディエーションのスタートガイドを完了していること
ステップ 1: AppLovin UI で設定を行う
AdMob 広告ユニットを設定するには、AppLovin の SDK キーと レポート キーが必要です。これらの値を確認するには、AppLovin UI > [アカウント] > [キー] に移動します。
入札のみを統合する場合は、メディエーション設定を構成に進みます。
メディエーションに使用するアプリを選択する
単価設定
この手順は、入札の統合では必要ありません。
滝
AppLovin UI で、[収益化] セクションの [アプリ] を選択して、登録済みのアプリに移動します。利用可能なアプリのリストから、メディエーションに使用するアプリを選択します。
ゾーンを作成
単価設定
この手順は、入札の統合では必要ありません。
滝
AppLovin UI で [収益化] セクションの [ゾーン] を選択して、登録済みのゾーン ID に移動します。アプリに必要なゾーンをすでに作成している場合は、ステップ 2 に進みます。新しいゾーン ID を作成するには、[ゾーンを作成] をクリックします。
[ゾーン ID] の名前を入力し、[プラットフォーム] として [Android] を選択し、[広告の種類] を選択します。
[フラット CPM] または [AppLovin による最適化] を選択して、ゾーンの料金設定を構成します。[フラット CPM] オプションでは、国ごとに CPM を設定できます。次に、[Save] をクリックします。
Android
iOS
ゾーンが作成されると、ゾーン ID が [ゾーン ID] 列に表示されます。
Android
iOS
テストモードをオンにする
AppLovin の MAX テストモード ガイドの手順に沿って、AppLovin のテスト広告を有効にします。
ステップ 2: AdMob UI で AppLovin デマンドを設定する
広告ユニットのメディエーション設定を構成する
GDPR と米国の州規制の広告パートナー リストに AppLovin Corp. を追加
GDPR 設定と米国の州の規制設定の手順に沿って、AdMob 管理画面の GDPR と米国の州の規制の広告パートナー リストに Applovin Corp. を追加します。
ステップ 3: AppLovin SDK とアダプタをインポートする
ステップ 4: AppLovin SDK にプライバシー設定を実装する
EU ユーザーの同意と GDPR
Google の EU ユーザーの同意ポリシーに基づき、デバイス ID と個人データの使用について、欧州経済領域(EEA)のユーザーに対して特定の情報を開示し、同意を得る必要があります。このポリシーには、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 ID を追加します。
ステップ 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
エラーコード | 理由 |
---|---|
-1,009 ~-1,204 | AppLovin SDK からエラーが返されました。詳しくは、AppLovin のドキュメントをご覧ください。 |
101 | リクエストされた広告サイズが、AppLovin でサポートされているバナーサイズと一致しません。 |
103 | コンテキストが null です。 |
104 | AppLovin の入札トークンが空です。 |
105 | 同じゾーンに複数の広告をリクエストしました。AppLovin で読み込める広告は、ゾーンごとに一度に 1 つのみです。 |
106 | 広告を表示する準備ができていません。 |
108 | AppLovin アダプターは、リクエストされた広告フォーマットをサポートしていません。 |
iOS
エラーコード | 理由 |
---|---|
-1,009 ~-1,204 | AppLovin SDK からエラーが返されました。詳しくは、AppLovin のドキュメントをご覧ください。 |
101 | リクエストされた広告サイズが、AppLovin でサポートされているバナーサイズと一致しません。 |
102 | AdMob UI で構成された AppLovin サーバー パラメータが存在しないか、無効です。 |
103 | AppLovin 広告を表示できませんでした。 |
104 | 同じゾーンに複数の広告をリクエストしました。AppLovin で読み込める広告は、ゾーンごとに一度に 1 つのみです。 |
105 | AppLovin SDK キーが見つかりません。 |
107 | 入札トークンが空です。 |
108 | AppLovin アダプターは、リクエストされた広告フォーマットをサポートしていません。 |
110 | AppLovin は読み込み成功のコールバックを送信しましたが、広告は読み込まれませんでした。 |
111 | AppLovin SDK のインスタンスを取得できません。 |
112 | ユーザーが未成年である。 |
AppLovin Flutter メディエーション アダプタの変更履歴
次のバージョン
- Google Mobile Ads Flutter プラグイン バージョン 5.2.0 でビルド、テスト済み。
1.2.0
- AppLovin Android アダプター バージョン 12.6.1.0 との互換性を確認しました。
- AppLovin iOS アダプター バージョン 12.6.1.0 との互換性を確認しました。
- Google Mobile Ads Flutter プラグイン バージョン 5.1.0 でビルド、テストされています。
1.1.0
- GmaMediationApplovin の API が静的ではなくなりました。
- AppLovin Android アダプター バージョン 12.4.3.0 との互換性が確認されました。
- AppLovin iOS アダプター バージョン 12.4.2.0 との互換性が確認されました。
- Google Mobile Ads Flutter プラグイン バージョン 5.1.0 でビルド、テストされています。
1.0.0
- 初回リリース。
- AppLovin Android アダプター バージョン 12.3.0.0 との互換性を確認しました
- AppLovin iOS アダプター バージョン 12.2.1.0 との互換性を確認しました
- Google Mobile Ads Flutter プラグイン バージョン 5.0.0 でビルド、テスト済み。