ディスプレイ タイプのカスタム ネイティブ広告フォーマットと Open Measurement

このガイドでは、カスタムのネイティブ広告フォーマットをオープン型測定と統合する方法について説明します。

前提条件

統合

動画アセットを含まないカスタムのネイティブ広告フォーマットで Open Measurement を使用する場合は、ご自身で Open Measurement API を呼び出す必要があります。ディスプレイ タイプのカスタム ネイティブ広告フォーマットの Open Measurement は、Mobile Ads SDK バージョン 18.1.1 以降でのみサポートされています。

動画アセットでカスタムのネイティブ広告フォーマットを使用している場合は、このガイドの手順に従う必要はありません。Mobile Ads SDK によって動画アセットの視認性がトラッキングされます。

次に、NativeCustomTemplateAd でオープン測定を使用する方法を見てみましょう。一般に、視認性の測定を開始してカスタム広告ビューを登録する場合は、Mobile Ads SDK に通知する必要があります。

広告を読み込む

オープン測定を使用するかどうかにかかわらず、広告の読み込み方法は同じです。NativeCustomTemplateAd をリクエストする方法を示すメソッドを次に示します。

public void loadAd() {
   AdLoader adLoader = new AdLoader.Builder(context, "YOUR-AD-UNIT-ID")
    .forCustomTemplateAd("YOUR-TEMPLATE-ID",
      new NativeCustomTemplateAd.OnCustomTemplateAdLoadedListener() {
          @Override
          public void onCustomTemplateAdLoaded(NativeCustomTemplateAd ad) {
              // Register your view and begin open measurement.
              // We will define this method below.
              MyActivity.this.registerOpenMeasurementAndShowAd(ad);
          }
      },
      new NativeCustomTemplateAd.OnCustomClickListener() {
          @Override
          public void onCustomClick(NativeCustomTemplateAd ad, String s) {
              // Handle the click action
          }
      })
    .withAdListener( ... )
    .withNativeAdOptions( ... )
    .build();
}

ビューを登録して測定を開始する

NativeCustomTemplateAd でオープン測定を有効にするには、NativeCustomTemplateAd に関連付けられた DisplayOpenMeasurement オブジェクトを使用してカスタム広告ビューを登録します。DisplayOpenMeasurement オブジェクトには、コンテナビューをオープン測定として登録するための setView() メソッドが用意されています。

また、広告の測定を開始するよう SDK に明示的に伝える必要もあります。そのためには、NativeCustomTemplateAdDisplayOpenMeasurement オブジェクトで start() メソッドを呼び出します。start() メソッドはメインスレッドから呼び出す必要があります。以降の呼び出しには影響しません。

画面のサンプルを次に示します。

public void  registerOpenMeasurementAndShowAd(NativeCustomTemplateAd ad) {

...
// Show ad
...
displayCustomTemplateAd(ad)
// Begin Open Measurement
// The FrameLayout that will contain your native custom ad
FrameLayout customTemplateAdFrame = (FrameLayout) findViewById(R.id.custom_ad_frame);
ad.getDisplayOpenMeasurement().setView(customTemplateAdFrame);
ad.getDisplayOpenMeasurement().start();

}

なお、ビューを登録する前に広告を表示する必要があります。広告の表示については、カスタムのネイティブ広告フォーマットをご覧ください。

customTemplateAdFrame レイアウトは NativeCustomTemplateAd の広告コンテナであり、ビューの境界ボックス内にすべてのアセットが含まれている必要があります。

IAB の認定

アプリをリリースすると測定データの受信が開始されますが、IAB 認定プロセスが完了するまでデータは認定されません。