Targeting

このガイドでは、ターゲット設定情報を Google Mobile Ads SDK に設定する方法を説明します。

前提条件

続行する前に、設定してくださいGMA Next-Gen SDK

RequestConfiguration

RequestConfiguration は、すべての広告リクエストにグローバルに適用されるターゲット設定情報を収集します。使用可能なターゲット設定タグについては、 の RequestConfiguration.Builder ドキュメントをご覧ください。

ビルダーを使用して必要なターゲット設定タグを含む RequestConfiguration オブジェクトを作成し、 それを呼び出して構成を設定します MobileAds.setRequestConfiguration()

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  // Set your targeting tags.
  .setTagForChildDirectedTreatment(RequestConfiguration.TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  // Set your targeting tags.
  .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

最初の広告リクエストからターゲット設定タグを適用するには、SDK の初期化時にリクエスト構成を指定します。

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  // Set your targeting tags.
  .setTagForChildDirectedTreatment(RequestConfiguration.TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()

CoroutineScope(Dispatchers.IO).launch {
  // Initialize GMA Next-Gen SDK on a background thread.
  MobileAds.initialize(
    this@MainActivity,
    InitializationConfig
      // Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713
      .Builder("SAMPLE_APP_ID")
      .setRequestConfiguration(requestConfiguration)
      .build()
  ) {
    // Adapter initialization is complete.
  }
  // Other methods on MobileAds can now be called.
}

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
    .Builder()
    // Set your targeting tags.
    .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
    .build();

new Thread(
    () -> {
      // Initialize GMA Next-Gen SDK on a background thread.
      MobileAds.initialize(
          this,
          // Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713
          new InitializationConfig
              .Builder("SAMPLE_APP_ID")
              .setRequestConfiguration(requestConfiguration)
              .build(),
          initializationStatus -> {
            // Adapter initialization is complete.
          });
      // Other methods on MobileAds can now be called.
    })
    .start();

年齢に応じた取り扱いを設定する

子どもや未成年を対象にしたプライバシーに関する規則のコンプライアンス管理をサポートするため、GMA Next-Gen SDK には年齢に応じた取り扱いの設定が用意されています。年齢に応じた取り扱いの設定では、GMA Next-Gen SDK で 子ども、未成年者、または年齢未指定のユーザーのための広告配信保護対策を適用するかどうかを指定できます。

年齢に応じた取り扱いは、setAgeRestrictedTreatment() メソッドと RequestConfiguration.Builder API で設定できます。

子どもの取り扱いを広告リクエストに適用する場合の例を次に示します。

Kotlin

val requestConfiguration =
  RequestConfiguration.Builder()
    // Indicate that ad requests should have child age treatment.
    .setAgeRestrictedTreatment(AgeRestrictedTreatment.CHILD)
    .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration =
    new RequestConfiguration.Builder()
        // Indicate that ad requests should have child age treatment.
        .setAgeRestrictedTreatment(AgeRestrictedTreatment.CHILD)
        .build();
MobileAds.setRequestConfiguration(requestConfiguration);

13 歳以上の未成年者または年齢未指定のユーザーの取り扱いを指定するには、CHILD の設定を次のように置き換えます。

  • TEEN
  • UNSPECIFIED

この設定を使用すると、GMA Next-Gen SDK は広告リクエストに tfat パラメータを含めます。年齢に応じた取り扱いをユーザーにどのように適用するかは、法律および規制上の義務に基づき、弁護士に相談のうえ判断してください。詳しくは、 広告リクエストに年齢に応じた取り扱いのタグを設定するをご覧ください。

TFCD と TFUA から年齢に応じた取り扱いに移行する

年齢に応じた取り扱いの設定は、非推奨となった .setTagForChildDirectedTreatment()(TFCD)設定と .setTagForUnderAgeOfConsent()(TFUA)設定に代わるものです。

次の表に、TFCD と TFUA の設定と、対応する年齢に応じた取り扱いを示します。

TFCD

TFCD 年齢に応じた取り扱い
TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE AgeRestrictedTreatment.CHILD
TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE AgeRestrictedTreatment.UNSPECIFIED
TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED AgeRestrictedTreatment.UNSPECIFIED
.setTagForChildDirectedTreatment() が未設定 AgeRestrictedTreatment.UNSPECIFIED
同等のものはありません AgeRestrictedTreatment.TEEN

TFUA

TFUA 年齢に応じた取り扱い
TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE AgeRestrictedTreatment.CHILD
TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE AgeRestrictedTreatment.UNSPECIFIED
TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED AgeRestrictedTreatment.UNSPECIFIED
.setTagForUnderAgeOfConsent() が未設定 AgeRestrictedTreatment.UNSPECIFIED
同等のものはありません AgeRestrictedTreatment.TEEN

年齢に応じた取り扱いと TFCD および TFUA の関係について

年齢に応じた取り扱いの設定と TFCD または TFUA の設定を両方とも設定した場合は、最も厳格な制限が適用されます。

子ども向けの設定

setAgeRestrictedTreatment()

児童オンライン プライバシー保護法(COPPA)に基づき、「子供向け取り扱いタグ」という設定が用意されています。 このタグを設定することによって、この通知内容が正確であり、アプリの所有者を代理する権限があることを証明できます。子供向けの設定を不正に利用すると、Google アカウントは削除される場合があります。

アプリ デベロッパーは、広告リクエストの際に、コンテンツを子ども向けとして取り扱うかどうかを指定できます。子供向けコンテンツとして扱うように示すと、その広告リクエストについてはインタレスト ベース広告(IBA)とリマーケティング広告を無効にする措置が取られます。

子供向けの設定は、 setTagForChildDirectedTreatment() を使って適用できます。

  • setTagForChildDirectedTreatmentTAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE に設定して呼び出すと、COPPA の目的でコンテンツを子供向けとして取り扱うよう指定できます。これにより、Android 広告 ID (AAID)の送信が防止されます。

  • setTagForChildDirectedTreatmentTAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE に設定して呼び出すと、COPPA の目的でコンテンツを子ども向けとして取り扱わないよう指定できます。

  • COPPA に関してコンテンツをどのように取り扱うかを広告リクエストで指定しない場合は、setTagForChildDirectedTreatmentTAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED に設定して呼び出します。

次の例では、COPPA の目的でコンテンツを子ども向けとして取り扱うよう指定しています。

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setTagForChildDirectedTreatment(RequestConfiguration.TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

欧州経済領域(EEA)の同意年齢に満たないユーザーについては、その広告リクエストにマークを付けることで適切な取り扱いを受けることができます。この機能は 一般 データ保護規則(GDPR)の準拠に向けた対応をサポートするためのものです。なお、GDPR の下では他の法的義務が課せられる場合もありますので、 欧州連合(EU)のガイダンスをご確認のうえ、お客様の顧問弁護士にご相談ください。なお、Google が提供するツールの目的は、法令遵守をサポートすることであり、パブリッシャー様を法的義務から解放することではありません。 GDPR がパブリッシャー様に与える影響の詳細

この機能を使用する場合は、広告リクエストに TFUA(Tag For Users under the Age of Consent in Europe: 同意年齢に満たない欧州ユーザー向け取り扱いタグ)パラメータが追加されます。広告リクエストにこのパラメータが追加されている場合、リマーケティングなどによるパーソナライズド広告の配信が無効になります。第三者広告ベンダー(広告測定ピクセルや第三者広告サーバーなどの事業者)へのリクエストも無効にします。

子供向けの設定と同様、 RequestConfiguration.Builder には TFUA パラメータを設定するためのメソッド setTagForUnderAgeOfConsent() があります。 このメソッドでは次のオプションを使用できます。

  • setTagForUnderAgeOfConsent()TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE に設定して呼び出すと、欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理するよう指定できます。これにより、Android 広告 ID (AAID)の送信も防止されます。

  • setTagForUnderAgeOfConsent()TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE に設定して呼び出すと、欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理しないように指定できます。

  • setTagForUnderAgeOfConsent()TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED に設定して呼び出すと、欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理するかどうか指定しないよう指定できます。

次の例では、広告リクエストに TFUA を含めるよう指定しています。

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setTagForUnderAgeOfConsent(RequestConfiguration.TagForUnderAgeOfConsent.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setTagForUnderAgeOfConsent(TagForUnderAgeOfConsent.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

子供向けの設定を有効にするタグと Child-directed setting and setTagForUnderAgeOfConsent() に設定する値を、同時に両方とも true にしないでください。両方ともその値にすると、子ども向けの設定が優先されます。

広告コンテンツのフィルタリング

広告内の関連する提案を含む Google Play の 不適切な広告に関するポリシーに準拠するため、アプリ内で表示されるすべての広告および関連する提案は、アプリの コンテンツ レーティングに適合したものである必要があります。これはコンテンツ自体が Google Play のポリシーに準拠している場合でも同様です。

広告レーティングの上限などのツールを使用すると、ユーザーに表示する広告のコンテンツをより細かく管理できます。コンテンツのレーティングの上限を設定すると、プラットフォーム ポリシーの準拠にも役立ちます。

アプリでは、広告リクエストの広告レーティングの上限を setMaxAdContentRating メソッドを使って設定できます。上限を設定した場合は、指定されたレベル以下のコンテンツのレーティングの AdMob 広告が返されます。このネットワーク追加メソッドで使用できる値は、 デジタル コンテンツ ラベルの分類に基づいており、次の 文字列のいずれかになります。

  • MAX_AD_CONTENT_RATING_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_AD_CONTENT_RATING_MA

次のコードは、G 以下のデジタル コンテンツ ラベルに対応する広告コンテンツを返すように、RequestConfiguration オブジェクトを設定しています。

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setMaxAdContentRating(RequestConfiguration.MaxAdContentRating.MAX_AD_CONTENT_RATING_G)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setMaxAdContentRating(MaxAdContentRating.MAX_AD_CONTENT_RATING_G)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

詳しくは、広告リクエストごとにコンテンツのレーティングの上限を設定する をご覧ください

Publisher Privacy Treatment(ベータ版)

The Publisher Privacy Treatment (PPT)API は、アプリがすべての広告リクエストで広告の パーソナライズをオフにするかどうかを指定できるオプションのツールです。 setPublisherPrivacyPersonalizationState() メソッドを使用します。この機能を使用すると、それ以降の残りのセッションのすべての広告リクエストに、パブリッシャーのプライバシーに関する取り扱い(PPT)のパラメータが含まれるようになります。

デフォルトでは、Google への広告リクエストに対してパーソナライズド広告が配信されます。次のコードは、すべての広告リクエストで広告のパーソナライズを無効にしています。

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setPublisherPrivacyPersonalizationState(RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setPublisherPrivacyPersonalizationState(RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

広告リクエスト

AdRequest オブジェクトは、広告リクエストとともに送信するターゲット設定情報を収集します。

ネットワークについての追加情報を追加する

ネットワークについての追加情報は、広告リクエストとともに送信される追加の詳細情報で、各広告のソースに固有のものです。

次のコード スニペットでは、collapsible の追加パラメータキーを bottom の値とともに Google に設定します。

Kotlin

val extras = Bundle()
extras.putString("collapsible", "bottom")
val adRequest =
  NativeAdRequest.Builder("AD_UNIT_ID", listOf(NativeAd.NativeAdType.NATIVE))
    .setGoogleExtrasBundle(extras)
    .build()
NativeAdLoader.load(adRequest, adCallback)

Java

Bundle extras = new Bundle();
extras.putString("collapsible", "bottom");
NativeAdRequest adRequest =
  new NativeAdRequest.Builder("AD_UNIT_ID", Arrays.asList(NativeAd.NativeAdType.NATIVE))
    .setGoogleExtrasBundle(extras)
    .build();
NativeAdLoader.load(adRequest, adCallback);

カスタム ターゲティング

カスタムの Key-Value ペアを渡して、Google アド マネージャー キャンペーンの広告申込情報のターゲットを設定できます。広告リクエストでカスタムの Key-Value ペアを渡す方法の例を次に示します。

Kotlin

// Example: Pass custom targeting "age=25".
val newRequest = AdRequest.Builder("AD_UNIT_ID")
  .putCustomTargeting("age", "25")
  .build()

Java

// Example: Pass custom targeting "age=25".
AdRequest newRequest = new AdRequest.Builder("AD_UNIT_ID")
  .putCustomTargeting("age", "25")
  .build();

文字列のリストとして、キーに複数の値を渡すことができます。たとえば、25 歳に加えて 20 代半ばのユーザーにターゲットを設定するには、次のように指定します。

Kotlin

.putCustomTargeting("age", listOf("24", "25", "26"))

Java

.putCustomTargeting("age", Arrays.asList("24", "25", "26"));

カテゴリの除外

addCategoryExclusion() メソッドを使用して、リクエストにスロット単位でカテゴリの除外レベルを追加できます。

Kotlin

// Example: Exclude "automobile" and "boat" categories.
val newRequest = AdRequest.Builder("AD_UNIT_ID")
  .addCategoryExclusion("automobile")
  .addCategoryExclusion("boat")
  .build()

Java

// Example: Exclude "automobile" and "boat" categories.
AdRequest newRequest = new AdRequest.Builder("AD_UNIT_ID")
    .addCategoryExclusion("automobile")
    .addCategoryExclusion("boat")
    .build();

Android API デモアプリでカテゴリの除外を利用するには、Google アド マネージャーのカテゴリ除外のサンプル をご覧ください。

パブリッシャー指定の識別子

フリークエンシー キャップ、オーディエンス セグメンテーションやターゲット設定、広告のローテーション設定などユーザー属性に基づき各種端末に広告を配信する機能に、パブリッシャー指定の識別子(PPID)を設定できます。

PPID を設定する例を次に示します。

Kotlin

val adRequest = AdRequest.Builder("AD_UNIT_ID")
  .setPublisherProvidedId("AB123456789")
  .build()

Java

AdRequest adRequest = new AdRequest.Builder("AD_UNIT_ID")
    .setPublisherProvidedId("AB123456789")
    .build();

Android API デモアプリで PPID を実装するには、アド マネージャーの PPID のサンプル をご覧ください。

パブリッシャー提供のシグナル

広告リクエストでオーディエンス データとコンテキスト データを パブリッシャー提供のシグナル (PPS)として送信できます。PPS を使用すると、ユーザー識別子を共有することなく、標準の分類を使用して、すべての 取引タイプの入札者にオーディエンスの特性を伝えることにより、ユーザーデータを使用して プログラマティックな収益化を改善できます。オーディエンスの特性には、行動や興味に基づくデータ(IAB オーディエンスの分類 1.1)やコンテキスト データ(IAB コンテンツの分類 2.2)を含めることができます。

Kotlin

val extras = Bundle()
// Set the demographic to an audience with an "Age Range" of 30-34 and an
// interest in mergers and acquisitions.
extras.putIntegerArrayList("IAB_AUDIENCE_1_1", arrayListOf(6,284))
// Set the content to sedan, station wagon and SUV automotive values.
extras.putIntegerArrayList("IAB_CONTENT_2_2", arrayListOf(4,5,6))

val request = AdRequest.Builder("AD_UNIT_ID")
  .setGoogleExtrasBundle(extras)
  .build()

Java

Bundle extras = new Bundle();
// Set the demographic to an audience with an "Age Range" of 30-34 and an
// interest in mergers and acquisitions.
extras.putIntegerArrayList("IAB_AUDIENCE_1_1", arrayListOf(6,284));
// Set the content to sedan, station wagon and SUV automotive values.
extras.putIntegerArrayList("IAB_CONTENT_2_2", arrayListOf(4,5,6));

AdRequest request = new AdRequest.Builder("AD_UNIT_ID")
  .setGoogleExtrasBundle(extras)
  .build();

コンテンツの URL

コンテンツ ターゲット広告とブランド保護のためにコンテンツの URL を指定するには、以下を追加します。

Kotlin

val builder = AdRequest.Builder("AD_UNIT_ID")
builder.setContentUrl("https://www.example.com")
val request = builder.build()

Java

AdRequest.Builder builder = new AdRequest.Builder("AD_UNIT_ID")
builder.setContentUrl("https://www.example.com");
AdRequest request = builder.build();

ブランド保護(ベータ版)

さまざまなユーザー向けに動的コンテンツを表示するアプリでは、URL の簡単なリストを指定できます。

Kotlin

val urls = mutableListOf("https://www.mycontenturl1.com", "https://www.mycontenturl2.com",
                         "https://www.mycontenturl3.com", "https://www.mycontenturl4.com")
val requestWithContent = AdRequest.Builder("AD_UNIT_ID")
  .setNeighboringContentUrls(urls)
  .build()

Java

ArrayList<String> urls = new ArrayList<String>();
urls.add("https://www.mycontenturl1.com");
urls.add("https://www.mycontenturl2.com");
urls.add("https://www.mycontenturl3.com");
urls.add("https://www.mycontenturl4.com");
AdRequest requestWithContent = new AdRequest.Builder("AD_UNIT_ID")
    .setNeighboringContentUrls(urls)
    .build();

.setNeighboringContentUrls() は、ブランド保護のみに使用されるという点で .setContentUrl() と異なっています。