広告インスペクタ

広告インスペクタ は、承認済みのデバイスにおいて、モバイルアプリ内でテスト広告リクエストを直接分析できるアプリ内オーバーレイです。 Google Mobile Ads SDK バージョン 7.68.0 以降に付属しており、コーディングなしでご利用いただけます。

バージョン 8.5.0 より前の Mobile Ads SDK で広告インスペクタを使用する場合、以下を行うことができます。

  • 広告ユニットを検査する
  • 第三者アダプタを検査する
  • 広告が想定どおりに表示されているか確認する
  • エラーを特定し、解決方法の詳細を表示する
  • リクエストごとに各広告ネットワークのメディエーションの詳細を表示する
  • 第三者のメディエーションの広告ソースを個別にテストする
  • 各広告ユニットでウォーターフォール メディエーションが正しく設定されていることを確認する
  • カスタム イベントの統合をテストする

Mobile Ads SDK バージョン 8.5.0 以降の広告インスペクタでは、次のこともできます。

  • 各広告ネットワークの入札の詳細をリクエストごとに表示する
  • 各広告ネットワークの入札の詳細とウォーターフォール メディエーションの詳細をリクエストごとに表示する
  • 第三者によって入札された広告ソースまたはウォーターフォール メディエーションの広告ソースを個別にテストする
  • 各広告ユニットで入札とウォーターフォール メディエーションが正しく設定されていることを確認する

このガイドでは、広告インスペクタの起動方法とさまざまな機能の使い方を説明します。

前提条件

広告インスペクタを使用するには、次の準備が必要です。

  • Google Mobile Ads SDK バージョン 7.68.0 以降を使用します。

広告インスペクタを起動

広告インスペクタは、アプリのどこからでも次の方法で起動できます。

  1. テストデバイスの登録時に AdMob 管理画面で選択したジェスチャーを使用します。
  2. 提供された API を使ってプログラムで起動します。
  3. デバッグ メニューの起動ボタンを使用

ジェスチャーを使って起動する

ジェスチャーを使って広告インスペクタを起動するために、アプリに変更を加える必要はありません。テストデバイス用に AdMob で設定したジェスチャー(ダブルフリックまたはシェイク)を実行するだけです。詳細

AdMob 管理画面でジェスチャーを設定し、設定が反映されるまで 15 分待機したら、アプリで広告リクエストを作成して、設定したジェスチャーが Google Mobile Ads SDK に認識されるようにする必要があります。指定したジェスチャーが機能しない場合は、広告を読み込んでからアプリを再起動し、もう一度ジェスチャーをお試しください。

プログラムから起動する

広告インスペクタはプログラムで起動することもできます。

Swift

GADMobileAds.sharedInstance().presentAdInspector(from: viewController) { error in
  // Error will be non-nil if there was an issue and the inspector was not displayed.
}

Objective-C

[GADMobileAds.sharedInstance presentAdInspectorFromViewController:viewController
  completionHandler:^(NSError *error) {
    // Error will be non-nil if there was an issue and the inspector was not displayed.
}];

この API は、プログラム経由または AdMob 管理画面から登録されたテストデバイスで動作します。

この API に渡されたビュー コントローラの全体が、すでに画面に表示されている(viewDidAppear: の呼び出しが済んでいる)ことを確認します。渡されたビュー コントローラが表示処理の途中の場合(ビュー コントローラの viewDidLoad 関数で API が呼び出される場合など)は、広告インスペクタが表示されません。

広告ユニットを表示してトラブルシューティングする

広告インスペクタを起動するとメイン画面が表示され、入札設定またはメディエーション設定がなされた AdMob アプリ ID と関連付けられた、AdMob 管理画面内の全広告ユニットのリストが次のように表示されます。

広告インスペクタを使用する前に、Google Mobile Ads SDK を初期化することをおすすめします。

広告ユニットのメディエーション ウォーターフォールの詳細を表示する

広告ユニットをタップして、その SDK リクエストログを表示します。このログには、最新の広告リクエストで広告が配信された(または配信できなかった)時点までのメディエーション ウォーターフォールの詳細が表示されます。

Disclosure Indicator を使って各リクエストを展開すると、そのリクエストのメディエーション ウォーターフォールの結果が表示され、そのリクエストでエラーや遅延があった場合はその情報も確認できます。

第三者の広告ソースの場合、エラー メッセージは広告ソースから直接送信されます。詳しい情報が必要な場合は、ご利用の第三者広告ソースにお問い合わせください。

広告ユニットの入札の詳細を表示する

前提条件: Google Mobile Ads SDK 8.5.0 以降

入札を初めて使用する場合は、概要をご覧ください。

SDK リクエストログには、広告リクエストで呼び出された入札広告ソースが表示されます。SDK リクエストログの広告ユニットをタップすると、入札オークションの各広告ソースの詳細が表示されます。

入札結果の項目は、実施可能な順に表示されるように並べ替えられています。

  • リストの最上部に表示されるのは、そのオークションで落札された広告ネットワークです。

  • その次に表示されるのは、問題のある広告ネットワークです。こうした問題を解決するには、トラブルシューティングの手順をご覧ください。

  • さらにその下には、広告の配信や入札をまったくしなかった広告ネットワークが表示されます。こうした広告ネットワークは、その広告ソースの設定や判断材料が原因で入札単価が設定されなかった場合があり、さまざまな問題を示唆している可能性があります。詳しくは、広告ソースの設定ガイドを確認するか、広告ソースに直接お問い合わせください。

  • リストの一番下には、入札で落札できなかった広告ネットワークが表示されます。

メディエーション ウォーターフォールでは、入札オークションで落札した広告ソースを eCPM 値に基づいて配置できます。

メディエーション ウォーターフォールで広告ソースが呼び出されると、その広告ソースの広告が配信されます。メディエーション ウォーターフォールにおける入札の詳しい仕組みは「入札とウォーターフォール方式の広告ソースが両方含まれるメディエーション グループ」の例 2例 3 でご確認ください。

広告ユニットの高度なデバッグ

広告ユニットのトラブルシューティングを行う際は、広告リクエストとレスポンスを確認して問題の原因を特定したり、Google サポートと共有してデバッグを支援したりすると役に立ちます。ウォーターフォール チェーンの上部にあるメニュー アイコンをタップし、[広告リクエストとレスポンスを共有] を選択して、広告リクエストとレスポンスをすべてエクスポートします。これにより、独自のアプリでネットワーク トレースを実行する手間が省けます。

また、リクエスト文字列と同じメニューで [第三者の入札パラメータ] オプションをタップすると、デコードされた第三者の入札パラメータを確認できます。これにより、問題が発生している可能性のあるサードパーティ入札パラメータの詳細を確認できるため、アプリのデバッグや、ネットワークがシグナルを正常に収集していることの検証に役立ちます。

利用可能なアダプタを確認する

[アダプタ] タブをクリックすると、アプリの入札またはメディエーションの構成に含まれる広告ソースに関連付けられたすべてのサードパーティ アダプタのリストが表示されます。カードを開くと、初期化ステータスと SDK バージョンを確認できます。サポートされているサードパーティ アダプタに加えて、カスタム イベント アダプタも表示できます。カスタム イベントを使用すると、AdMob でサポートされていない広告ネットワークを使用できます。カスタム イベントは、アダプタのリストで固有のクラス名によって標準のサードパーティ アダプタと区別できます。広告インスペクタでは、クラス名とステータス情報に加え、AdMob ウェブ インターフェースでこれらのカスタム イベントに割り当てられたラベルも表示されます。

アダプタが見つからない、または初期化できない場合は、広告インスペクタを使って発見された問題のトラブルシューティングを行うをご覧ください。

広告ユニットをテストする

アプリの UI で広告ユニットに移動しなくても広告ユニットをテストしたい場合は、広告インスペクタの広告ユニットの詳細画面から直接テストできます。また、複数の広告ユニットを一度にテストしたり、テスト用の広告リクエストを非同期で読み込んで表示したり、単一の広告ソースのテストを行ったりすることもできます。

広告テスト

このセクションで説明する Ad inspector 広告テストは、単一の広告ソースのテストと組み合わせて使用することで、ベースの広告エクスペリエンスを検証し、メディエーション設定を検証するのに適したツールです。

広告ユニットをテストする準備ができたら、広告インスペクタ画面の上部にある [テスト広告をリクエスト] ボタンをタップして、広告インスペクタの広告テストをトリガーします。テスト結果は、SDK リクエストログの [Requested from ad inspector] というヘッダーの下に表示されます。

アプリで広告インスペクタを使用する方法

単一の広告ソースをテストする

広告インスペクタには、1 つの入札またはウォーターフォール メディエーションの広告ソースからの広告だけを配信するように、アプリ内の広告リクエストを制限する機能があります。これにより、第三者アダプタが正しく実装されているか、広告ソースが想定どおりに広告を配信しているかを検証できます。

この機能を有効にするには、画面下部の [単独の広告ソースのテスト] スイッチを有効にします。これにより、次の広告ソース選択ダイアログが表示されます。

単一の広告ソースをテストするには、Google Mobile Ads SDK を初期化する必要があります。

ここで、テストする単独の広告ソースを選択できます。広告ソースを選択すると、次の画面が表示されます。

単独の広告ソースのテスト設定は、その後に同じセッションで作成される広告リクエストにも適用されます。ただし、そのセッションで以前にキャッシュされた広告のうち、まだ表示されていないものには適用されません。したがって、単独の広告ソースのテストを有効にする際は、キャッシュ済みの広告(指定した広告ソースの広告の代わりに配信される可能性あり)を無効にするため、アプリを強制的に再起動することをおすすめします。

アプリを再起動すると、すべての広告ユニットのプレースメントには、選択したネットワークからの広告のみが表示されます。単独の広告ソースのテストを実施している間に広告インスペクタを起動すると、次のようにテスト中の広告ソースが表示されます。

単独の広告ソースのテストモードでは、リクエストされた広告ユニットの入札またはメディエーションがその広告ソースで設定されているかどうかにかかわらず、すべての広告リクエストに対してその広告ソースの広告が配信されるようになります。テストしている広告ソースが広告ユニットのメディエーション ウォーターフォールに含まれていない場合は、「広告掲載なし」というエラー メッセージが表示されます。

単独の広告ソースのテストでは、広告ユニットをタップすると SDK リクエストログが表示されます。これにより、単独の広告ソースのテストが有効になった後に発生した広告リクエストに対して、その広告ソースから広告が配信されたかどうかを確認できます。広告ソースが広告の読み込みに失敗すると、エラーを説明するエラー メッセージが表示されます。

選択した広告ソースの複数のインスタンスがメディエーション ウォーターフォールに追加されていた場合、広告が配信されるか、広告が配信されずにウォーターフォールが終了するまで、ウォーターフォール内で広告ソースを呼び出す各インスタンスが表示されます。

単独の広告ソースのテストを停止する

テストを停止するには、スイッチをオフにします。

すると、次の再起動画面に確認メッセージが表示されます。

テストを停止した後は、テスト対象だった広告ソースのキャッシュ済みの広告を無効にするため、アプリの再起動を強制することをおすすめします。

デバッグ出力全体をコピーする

広告インスペクタでは、AdMob アプリの詳細、アダプターの初期化ステータス、すべての広告ユニットのテスト結果など、ツールからデバッグ出力全体を含む JSON 文字列をコピーできます。

コピーするには、[広告インスペクタの JSON がクリップボードにコピーされました] というメッセージが表示されるまでアプリアイコンを 7 回タップします。