このガイドでは、ターゲット設定情報を 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();
子ども向けの設定
児童オンライン プライバシー保護法(COPPA)に基づき、「子供向け取り扱いタグ」という設定が用意されています。このタグを設定することによって、この通知内容が正確であり、アプリの所有者を代理する権限があることを証明できます。子供向けの設定を不正に利用すると、Google アカウントは削除される場合があります。
アプリ デベロッパーは、広告リクエストの際に、コンテンツを子ども向けとして取り扱うかどうかを指定できます。コンテンツを子供向けとして扱うように示すと、その広告リクエストについてはインタレスト ベース広告(IBA)とリマーケティング広告を無効にする措置が取られます。
子供向けの設定は、
setTagForChildDirectedTreatment() を使って適用できます。
TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUEを指定してsetTagForChildDirectedTreatmentを呼び出すと、COPPA の目的でコンテンツを子ども向けとして取り扱うよう指定できます。これにより、Android 広告 ID (AAID)が送信されなくなります。TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSEを指定してsetTagForChildDirectedTreatmentを呼び出すと、COPPA の目的でコンテンツを子ども向けとして取り扱わないよう指定できます。COPPA に関してコンテンツをどのように取り扱うかを広告リクエストで指定しない場合は、
TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIEDを指定してsetTagForChildDirectedTreatmentを呼び出します。
次の例では、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() があります。
このメソッドでは次のオプションを使用できます。
TAG_FOR_UNDER_AGE_OF_CONSENT_TRUEを指定してsetTagForUnderAgeOfConsent()を呼び出すと、欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理するよう指定できます。これにより、Android 広告 ID (AAID)も送信されなくなります。TAG_FOR_UNDER_AGE_OF_CONSENT_FALSEを指定してsetTagForUnderAgeOfConsent()を呼び出すと、欧州経済領域(EEA)の同意年齢に満たないユーザーに適した方法で広告リクエストを処理しないように指定できます。TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIEDを指定してsetTagForUnderAgeOfConsent()を呼び出すと、欧州経済領域(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);
子供向けの設定を有効にするタグと setTagForUnderAgeOfConsent() に設定する値を、同時に両方とも true にしないでください。両方ともその値にすると、子ども向けの設定が優先されます。
広告コンテンツのフィルタリング
広告内の関連する提案を含む Google Play の 不適切な広告に関するポリシーに準拠するため、アプリ内で表示されるすべての広告および関連する提案は、アプリの コンテンツ レーティングに適合したものである必要があります。これはコンテンツ自体が Google Play のポリシーに準拠している場合でも同様です。
広告レーティングの上限などのツールを使用すると、ユーザーに表示する広告のコンテンツをより細かく管理できます。コンテンツのレーティングの上限を設定すると、プラットフォーム ポリシーの準拠にも役立ちます。
アプリでは、広告リクエストの広告レーティングの上限を
setMaxAdContentRating
メソッドを使って設定できます。上限を設定した場合は、指定されたレベル以下のコンテンツのレーティングの AdMob 広告が返されます。このネットワーク追加メソッドで使用できる値は、
デジタル コンテンツ ラベルの分類に基づいており、次の
文字列のいずれかになります。
MAX_AD_CONTENT_RATING_GMAX_AD_CONTENT_RATING_PGMAX_AD_CONTENT_RATING_TMAX_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 オブジェクトは、広告リクエストとともに送信するターゲット設定情報を収集します。
ネットワークについての追加情報を追加する
ネットワークについての追加情報は、広告リクエストとともに送信される追加の詳細情報で、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 デモアプリでカテゴリの除外を利用するには、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() と異なっています。