Panduan ini menjelaskan cara memberikan informasi penargetan ke Google Mobile Ads SDK.
Prasyarat
Sebelum melanjutkan, siapkan GMA Next-Gen SDK.
RequestConfiguration
RequestConfiguration
mengumpulkan informasi penargetan yang diterapkan secara global ke setiap permintaan iklan. Untuk
mengetahui tag penargetan yang tersedia, lihat
RequestConfiguration.Builder
dokumentasi.
Buat objek RequestConfiguration dengan tag penargetan yang Anda butuhkan menggunakan
buildernya, lalu tetapkan konfigurasi dengan memanggil
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);
Untuk menerapkan tag penargetan dari permintaan iklan pertama, berikan konfigurasi permintaan selama inisialisasi 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();
Setelan yang ditujukan untuk anak-anak
Untuk tujuan Children's Online Privacy Protection Act (COPPA), ada setelan yang disebut "tag perlakuan untuk anak-anak". Dengan menetapkan tag ini, Anda menyatakan bahwa notifikasi ini akurat dan Anda berwenang untuk bertindak atas nama pemilik aplikasi. Anda memahami bahwa penyalahgunaan setelan ini dapat menyebabkan penghentian Akun Google Anda.
Sebagai developer aplikasi, Anda dapat menunjukkan apakah Anda ingin agar Google memperlakukan konten Anda sebagai ditujukan untuk anak-anak atau tidak saat membuat permintaan iklan. Jika Anda menunjukkan bahwa Anda ingin Google memperlakukan konten Anda sebagai ditujukan untuk anak-anak, kami akan mengambil langkah-langkah untuk menonaktifkan iklan IBA dan pemasaran ulang pada permintaan iklan tersebut.
Anda dapat menerapkan setelan yang ditujukan untuk anak-anak melalui
setTagForChildDirectedTreatment():
Panggil
setTagForChildDirectedTreatmentdenganTAG_FOR_CHILD_DIRECTED_TREATMENT_TRUEuntuk menunjukkan bahwa Anda ingin konten Anda diperlakukan sebagai ditujukan untuk anak-anak untuk tujuan COPPA. Tindakan ini mencegah transmisi ID iklan Android (AAID).Panggil
setTagForChildDirectedTreatmentdenganTAG_FOR_CHILD_DIRECTED_TREATMENT_FALSEuntuk menunjukkan bahwa Anda tidak ingin konten Anda diperlakukan sebagai ditujukan untuk anak-anak untuk tujuan COPPA.Panggil
setTagForChildDirectedTreatmentdenganTAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIEDjika Anda tidak ingin menunjukkan bagaimana Anda ingin konten Anda diperlakukan sehubungan dengan COPPA dalam permintaan iklan.
Contoh berikut menunjukkan bahwa Anda ingin konten Anda diperlakukan sebagai ditujukan untuk anak-anak untuk tujuan 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);
Pengguna yang berusia di bawah usia legal
Anda dapat menandai permintaan iklan untuk menerima perlakuan bagi pengguna yang berusia di bawah usia legal di Wilayah Ekonomi Eropa (EEA). Fitur ini adalah dirancang untuk membantu memfasilitasi kepatuhan terhadap General Data Protection Regulation (GDPR). Perlu diketahui bahwa Anda mungkin memiliki kewajiban hukum lainnya berdasarkan GDPR. Tinjau panduan Uni Eropa dan tanyakan kepada konsultan hukum Anda. Perlu diingat bahwa alat Google dirancang untuk memfasilitasi kepatuhan dan tidak menghilangkan kewajiban penayang mana pun berdasarkan hukum tersebut. Pelajari lebih lanjut pengaruh GDPR terhadap penayang.
Saat menggunakan fitur ini, parameter Tag Untuk Pengguna yang Berusia di bawah Usia Legal di Eropa (TFUA) akan disertakan dalam permintaan iklan. Parameter ini menonaktifkan iklan yang dipersonalisasi, termasuk pemasaran ulang, untuk semua permintaan iklan. Permintaan untuk vendor iklan pihak ketiga, seperti piksel pengukuran iklan dan server iklan pihak ketiga, juga dinonaktifkan.
Seperti setelan yang ditujukan untuk anak-anak, ada metode di
RequestConfiguration.Builder untuk menetapkan parameter TFUA:
setTagForUnderAgeOfConsent(),
dengan opsi berikut.
Panggil
setTagForUnderAgeOfConsent()denganTAG_FOR_UNDER_AGE_OF_CONSENT_TRUEuntuk menunjukkan bahwa Anda ingin permintaan iklan menerima perlakuan bagi pengguna yang berusia di bawah usia legal di Wilayah Ekonomi Eropa (EEA). Tindakan ini juga mencegah transmisi ID iklan Android (AAID).Panggil
setTagForUnderAgeOfConsent()denganTAG_FOR_UNDER_AGE_OF_CONSENT_FALSEuntuk menunjukkan bahwa Anda tidak ingin permintaan iklan menerima perlakuan bagi pengguna yang berusia di bawah usia legal di Wilayah Ekonomi Eropa (EEA).Panggil
setTagForUnderAgeOfConsent()denganTAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIEDuntuk menunjukkan bahwa Anda belum menentukan apakah permintaan iklan harus menerima perlakuan bagi pengguna yang berusia di bawah usia legal di Wilayah Ekonomi Eropa (EEA).
Contoh berikut menunjukkan bahwa Anda ingin TFUA disertakan dalam permintaan iklan Anda:
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);
Tag untuk mengaktifkan setelan yang Ditujukan untuk anak-anak
dan setTagForUnderAgeOfConsent() tidak boleh ditetapkan secara bersamaan ke true.
Jika demikian, setelan yang ditujukan untuk anak-anak akan diprioritaskan.
Pemfilteran konten iklan
Untuk mematuhi Kebijakan Iklan yang Tidak Sesuai Google Play yang mencakup penawaran terkait dalam iklan, semua iklan dan penawaran terkait yang ditampilkan dalam aplikasi Anda harus sesuai untuk rating konten aplikasi Anda, meskipun kontennya sendiri mematuhi kebijakan Google Play.
Alat seperti rating konten iklan maksimum dapat membantu Anda memiliki kontrol yang lebih besar atas konten iklan yang ditampilkan kepada pengguna. Anda dapat menetapkan rating konten maksimum untuk membantu mematuhi kebijakan platform.
Aplikasi dapat menetapkan rating konten iklan maksimum untuk permintaan iklan mereka menggunakan metode
setMaxAdContentRating. Iklan AdMob yang ditampilkan saat dikonfigurasi memiliki rating konten pada atau di bawah level tersebut. Nilai yang mungkin untuk tambahan jaringan ini didasarkan pada
klasifikasi label konten digital, dan harus salah satu
string berikut:
MAX_AD_CONTENT_RATING_GMAX_AD_CONTENT_RATING_PGMAX_AD_CONTENT_RATING_TMAX_AD_CONTENT_RATING_MA
Kode berikut mengonfigurasi objek RequestConfiguration untuk menentukan bahwa konten iklan yang ditampilkan harus sesuai dengan penetapan label konten digital yang tidak lebih tinggi dari G:
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);
Pelajari lebih lanjut cara menetapkan rating konten maksimum untuk setiap permintaan iklan.
Perlakuan Privasi Penayang (Beta)
Publisher Privacy Treatment (PPT) API adalah alat opsional yang memungkinkan aplikasi menunjukkan apakah akan menonaktifkan personalisasi iklan untuk semua permintaan iklan menggunakan metode.setPublisherPrivacyPersonalizationState() Saat menggunakan fitur ini, parameter perlakuan privasi penayang (PPT) akan disertakan dalam semua permintaan iklan mendatang untuk sisa sesi.
Secara default, permintaan iklan ke Google menayangkan iklan yang dipersonalisasi. Kode berikut menonaktifkan personalisasi iklan untuk semua permintaan iklan:
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);
Permintaan iklan
Objek AdRequest mengumpulkan informasi penargetan yang akan dikirim
dengan permintaan iklan.
Menambahkan tambahan jaringan
Tambahan jaringan adalah detail tambahan yang dikirim dengan permintaan iklan yang khusus untuk satu sumber iklan.
Cuplikan kode berikut menetapkan kunci parameter tambahan collapsible dengan nilai bottom ke 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);
Penargetan kustom
Anda dapat meneruskan pasangan nilai kunci kustom untuk menargetkan kampanye Google Ad Manager (item baris). Contoh berikut meneruskan pasangan nilai kunci kustom dalam permintaan iklan:
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();
Anda dapat meneruskan beberapa nilai untuk kunci sebagai daftar string. Misalnya, untuk menargetkan individu berusia 20-an, bukan hanya yang berusia 25 tahun.
Kotlin
.putCustomTargeting("age", listOf("24", "25", "26"))
Java
.putCustomTargeting("age", Arrays.asList("24", "25", "26"));
Pengecualian kategori
Anda dapat menambahkan tingkat pengecualian kategori tingkat slot ke permintaan menggunakan
addCategoryExclusion()
metode:
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();
Lihat contoh Pengecualian Kategori Ad Manager untuk mengetahui penerapan pengecualian kategori di aplikasi Demo API Android.
ID yang diberikan penayang
Anda dapat menetapkan ID yang diberikan penayang (PPID) untuk digunakan dalam pembatasan frekuensi, penargetan dan segmentasi audiens, rotasi iklan berurutan, serta kontrol penayangan iklan berbasis audiens lainnya di seluruh perangkat.
Berikut contoh cara menetapkan PPID:
Kotlin
val adRequest = AdRequest.Builder("AD_UNIT_ID")
.setPublisherProvidedId("AB123456789")
.build()
Java
AdRequest adRequest = new AdRequest.Builder("AD_UNIT_ID")
.setPublisherProvidedId("AB123456789")
.build();
Lihat contoh PPID Ad Manager untuk mengetahui penerapan ID yang diberikan penayang (PPID) di aplikasi Demo API Android.
Sinyal yang diberikan penayang
Anda dapat mengirim data audiens dan kontekstual sebagai sinyal yang diberikan penayang (PPS) dalam permintaan iklan. Dengan PPS, Anda dapat menggunakan data pengguna untuk meningkatkan monetisasi terprogram dengan mengomunikasikan karakteristik audiens Anda kepada bidder di semua jenis transaksi, menggunakan taksonomi standar, tanpa perlu membagikan ID pengguna. Karakteristik audiens Anda dapat mencakup data perilaku dan berbasis minat (Taksonomi Audiens IAB 1.1) dan data kontekstual (Taksonomi Konten 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 Konten
Untuk memberikan URL konten untuk iklan yang ditargetkan konten dan keamanan merek, tambahkan hal berikut:
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();
Keamanan merek (Beta)
Aplikasi yang menampilkan konten dinamis yang ditujukan untuk berbagai audiens dapat memberikan daftar URL singkat:
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() berbeda dengan .setContentUrl() karena hanya digunakan untuk keamanan merek.