このガイドでは、ターゲット設定情報を Google Mobile Ads 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 Google Mobile Ads SDK (beta) 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 Google Mobile Ads SDK (beta) 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();
子供向けの設定
児童オンライン プライバシー保護法(COPPA: Children's Online Privacy Protection Act)に基づき、「子供向け取り扱いタグ」という設定が用意されています。このタグを設定することによって、この通知内容が正確であり、アプリの所有者を代理する権限があることを証明できます。子供向けの設定を不正に利用すると、Google アカウントは削除される場合があります。
アプリのデベロッパーは、広告リクエストの際に、コンテンツを子供向けとして取り扱うかどうかを指定できます。子供向けコンテンツとして扱うよう指定した場合、その広告リクエストでは、インタレスト ベース広告(IBA)とリマーケティング広告を無効にする措置が取られます。
子供向けの設定は、setTagForChildDirectedTreatment()
を使って適用できます。
コンテンツを、COPPA に基づく子供向けのものとして取り扱うよう指定するには、
setTagForChildDirectedTreatment
をTAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE
に設定して呼び出します。これにより、Android 広告 ID(AAID)が送信されなくなります。COPPA に基づく子供向けコンテンツとしての取り扱いを望まない場合は、
setTagForChildDirectedTreatment
をTAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE
に設定して呼び出します。COPPA に関してコンテンツをどのように取り扱うかを広告リクエストで指定しない場合は、
setTagForChildDirectedTreatment
をTAG_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()
があります。このメソッドでは次のオプションを使用できます。
欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理するよう指定するには、
setTagForUnderAgeOfConsent()
をTAG_FOR_UNDER_AGE_OF_CONSENT_TRUE
に設定して呼び出します。これにより、Android 広告 ID(AAID)も送信されなくなります。欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理しないように指定するには、
setTagForUnderAgeOfConsent()
をTAG_FOR_UNDER_AGE_OF_CONSENT_FALSE
に設定して呼び出します。欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理するかどうか指定しない場合は、
setTagForUnderAgeOfConsent()
をTAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED
に設定して呼び出します。
次の例では、広告リクエストに 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);
子供向けの設定を有効にするタグと 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(ベータ版)
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
オブジェクトは、広告リクエストと一緒に送るターゲット設定情報を収集します。
ネットワークについての情報を追加する
ネットワークについての追加情報は、広告リクエストとともに送信される追加の詳細情報で、1 つの広告ソースに固有のものです。
次のコード スニペットでは、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 デモアプリでカテゴリの除外を利用するには、アド マネージャーのカテゴリ除外のサンプルをご覧ください。
パブリッシャー指定の識別子
フリークエンシー キャップ、オーディエンス セグメンテーションやターゲット設定、広告のローテーション設定などユーザー属性に基づき各種端末に広告を配信する機能に、パブリッシャー指定の識別子(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()
と異なっています。