במדריך הזה מוסבר איך לספק פרטי טירגוט ל-Google Mobile Ads SDK.
כדי לראות דוגמה שעובדת, אפשר להוריד את אפליקציית Android API Demo.דרישות מוקדמות
- קוראים את המדריך לתחילת העבודה.
RequestConfiguration
RequestConfiguration
אוסף מידע על טירגוט שחל באופן גלובלי על כל בקשה להצגת מודעה. מידע על תגי טירגוט זמינים מופיע במאמרי העזרה בנושא RequestConfiguration.Builder.
כדי לעדכן את הגדרת הבקשה, צריך לקבל את ה-builder מההגדרה הקיימת, לבצע את העדכונים הרצויים ולהגדיר אותו באופן הבא:
Kotlin
val requestConfiguration = MobileAds.getRequestConfiguration()
MobileAds.setRequestConfiguration(requestConfiguration)Java
RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration();
MobileAds.setRequestConfiguration(requestConfiguration);כדי לוודא שכל הבקשות להצגת מודעות יחולו על השינויים בהגדרת הבקשה, צריך להגדיר את הבקשה לפני הפעלת Google Mobile Ads SDK.
הגדרה של תוכן לילדים
לצורך Children's Online Privacy Protection Act (חוק הגנת הפרטיות של ילדים באינטרנט, COPPA), יש הגדרה שנקראת 'תיוג לצורך טיפול בהתאם להנחיות בנושא תוכן שמיועד לילדים'. הגדרת התג הזה מעידה שההודעה הזו מדויקת ושיש לך הרשאה לפעול בשם הבעלים של האפליקציה. ברור לך שניצול לרעה של ההגדרה הזו עלול לגרום לסגירת חשבון Google שלך.
כשאתם, בתור מפתחי אפליקציות, שולחים בקשה להצגת מודעה, אתם יכולים לציין אם אתם רוצים ש-Google תתייחס לתוכן שלכם כתוכן שמיועד לילדים. אם תציינו שאתם רוצים ש-Google תתייחס לתוכן שלכם כתוכן שמותאם לילדים, נשבית פרסום מבוסס-עניין ומודעות רימרקטינג בבקשה הזו להצגת מודעה.
אפשר להחיל את ההגדרה 'מיועד לילדים' דרך
setTagForChildDirectedTreatment():
מתקשרים אל
setTagForChildDirectedTreatmentעםTAG_FOR_CHILD_DIRECTED_TREATMENT_TRUEכדי לציין שרוצים שהתוכן יטופל כתוכן לילדים בהתאם ל-COPPA. הפעולה הזו מונעת את ההעברה של מזהה הפרסום ב-Android (AAID).מתקשרים אל
setTagForChildDirectedTreatmentעםTAG_FOR_CHILD_DIRECTED_TREATMENT_FALSEכדי לציין שלא רוצים שהתוכן יטופל כתוכן שמיועד לילדים לצורך עמידה בדרישות של COPPA.אם אתם לא רוצים לציין איך לטפל בתוכן שלכם בהתאם ל-COPPA בבקשות להצגת מודעות, אתם יכולים להשתמש בערך
setTagForChildDirectedTreatmentעםTAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED.
בדוגמה הבאה מצוין שאתם רוצים שהתוכן שלכם יסווג כתוכן שמיועד לילדים לצורך עמידה בדרישות COPPA:
Kotlin
val requestConfiguration =
MobileAds.getRequestConfiguration()
.toBuilder()
.setTagForChildDirectedTreatment(RequestConfiguration.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
.build()
MobileAds.setRequestConfiguration(requestConfiguration)Java
RequestConfiguration requestConfiguration =
MobileAds.getRequestConfiguration().toBuilder()
.setTagForChildDirectedTreatment(
RequestConfiguration.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
.build();
MobileAds.setRequestConfiguration(requestConfiguration);משתמשים מתחת לגיל המינימלי
אתם יכולים לסמן בקשות להצגת מודעות כמודעות שיוצגו למשתמשים מתחת לגיל ההסכמה שנמצאים באזור הכלכלי האירופי (EEA). פיתחנו את התכונה הזו כדי לעזור לכם לפעול בהתאם לתקנה הכללית להגנה על מידע (GDPR). שימו לב: ייתכן שיש לכם חובות משפטיות נוספות בכפוף ל-GDPR. מומלץ לעיין בהנחיות של האיחוד האירופי ולפנות לייעוץ משפטי. חשוב לזכור שהכלים של Google מיועדים לסייע לציות לחוק, ולא פוטרים בעלי אפליקציות מהמחויבויות שלהם בכפוף לחוק. מידע נוסף על ההשפעה של GDPR על בעלי אתרים
כשמשתמשים בתכונה הזאת, בקשות להצגת מודעות כוללות פרמטר Tag For Users under the Age of Consent in Europe (תג לציון הצגה למשתמשים מתחת לגיל ההסכמה באירופה, TFUA). הפרמטר הזה משבית את האפשרות לפרסום מותאם אישית, כולל רימרקטינג, בכל הבקשות להצגת מודעות. בנוסף, הוא משבית העברה של בקשות לספקי מודעות של צד שלישי, למשל בקשות לפיקסלים למדידת מודעות ובקשות לשרתי מודעות של צד שלישי.
בדומה להגדרות של תוכן לילדים, יש שיטה ב-RequestConfiguration.Builder להגדרת הפרמטר TFUA:
setTagForUnderAgeOfConsent(),
עם האפשרויות הבאות.
מבצעים קריאה ל-
setTagForUnderAgeOfConsent()עםTAG_FOR_UNDER_AGE_OF_CONSENT_TRUEכדי לציין שרוצים שהבקשה להצגת מודעה תטופל עבור משתמשים מתחת לגיל ההסכמה באזור הכלכלי האירופי (EEA). הפעולה הזו גם מונעת את ההעברה של מזהה הפרסום ב-Android (AAID).מפעילים את
setTagForUnderAgeOfConsent()עםTAG_FOR_UNDER_AGE_OF_CONSENT_FALSEכדי לציין שאתם לא רוצים שהבקשה להצגת מודעה תטופל עבור משתמשים מתחת לגיל ההסכמה באזור הכלכלי האירופי (EEA).מפעילים את
setTagForUnderAgeOfConsent()עםTAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIEDכדי לציין שלא הגדרתם אם הבקשה להצגת מודעה צריכה לעבור תהליך טיפול שמותאם למשתמשים מתחת לגיל ההסכמה באזור הכלכלי האירופי (EEA).
בדוגמה הבאה מצוין שרוצים לכלול TFUA בבקשות להצגת מודעות:
Kotlin
val requestConfiguration =
MobileAds.getRequestConfiguration()
.toBuilder()
.setTagForUnderAgeOfConsent(RequestConfiguration.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
.build()
MobileAds.setRequestConfiguration(requestConfiguration)Java
RequestConfiguration requestConfiguration =
MobileAds.getRequestConfiguration().toBuilder()
.setTagForUnderAgeOfConsent(RequestConfiguration.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
הקוד הבא מגדיר אובייקט RequestConfiguration כדי לציין שתוכן המודעות שמוחזר צריך להתאים לסיווג של תווית תוכן דיגיטלי שלא גבוה מ-G:
Kotlin
val requestConfiguration =
MobileAds.getRequestConfiguration()
.toBuilder()
.setMaxAdContentRating(RequestConfiguration.MAX_AD_CONTENT_RATING_G)
.build()
MobileAds.setRequestConfiguration(requestConfiguration)Java
RequestConfiguration requestConfiguration =
MobileAds.getRequestConfiguration().toBuilder()
.setMaxAdContentRating(RequestConfiguration.MAX_AD_CONTENT_RATING_G)
.build();
MobileAds.setRequestConfiguration(requestConfiguration);מידע נוסף על הגדרת סיווג תוכן מקסימלי לכל בקשה להצגת מודעה
התייחסות לפרטיות של בעלי תוכן דיגיטלי (בטא)
API Publisher Privacy Treatment (PPT) הוא כלי אופציונלי שמאפשר לאפליקציות לציין אם להשבית את התאמת המודעות אישית לכל בקשות המודעות באמצעות השיטה setPublisherPrivacyPersonalizationState(). כשמשתמשים בתכונה הזו, פרמטר של אמצעי הגנה על הפרטיות של בעל האתר (PPT) נכלל בכל הבקשות העתידיות להצגת מודעות למשך שארית הסשן.
כברירת מחדל, כשנשלחות ל-Google בקשות להצגת מודעות, המערכת מציגה מודעות בהתאמה אישית. הקוד הבא משבית את ההתאמה האישית של מודעות לכל הבקשות להצגת מודעות:
Kotlin
val requestConfiguration =
MobileAds.getRequestConfiguration()
.toBuilder()
.setPublisherPrivacyPersonalizationState(
RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED
)
.build()
MobileAds.setRequestConfiguration(requestConfiguration)Java
RequestConfiguration requestConfiguration =
MobileAds.getRequestConfiguration().toBuilder()
.setPublisherPrivacyPersonalizationState(
RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED)
.build();
MobileAds.setRequestConfiguration(requestConfiguration);בקשה להצגת מודעה
האובייקט AdManagerAdRequest אוסף מידע על טירגוט כדי לשלוח אותו עם בקשה להצגת מודעה.
הוספת ערוצים או חבילות
תוספים לרשת הם פרטים נוספים שנשלחים עם בקשה להצגת מודעה, שספציפיים למקור מודעות יחיד.
בקטע הקוד הבא מוגדר מפתח פרמטר נוסף של collapsible עם ערך של bottom ב-Google:
Kotlin
val extras = Bundle()
extras.putString("collapsible", "bottom")
val adRequest =
AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, extras).build()
adView.loadAd(adRequest)Java
Bundle extras = new Bundle();
extras.putString("collapsible", "bottom");
AdRequest adRequest =
new AdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build();
adView.loadAd(adRequest);מיקוד מותאם אישית
אפשר להעביר צמדים מותאמים אישית של מפתח וערך כדי לטרגט קמפיינים (פריטי מיקום) ב-Google Ad Manager. בדוגמה הבאה מועבר צמד מותאם אישית של מפתח/ערך בבקשה להצגת מודעה:
Kotlin
// Example: Pass custom targeting "age=25".
val newRequest = AdManagerAdRequest.Builder().addCustomTargeting("age", "25").build()Java
// Example: Pass custom targeting "age=25".
AdManagerAdRequest newRequest =
new AdManagerAdRequest.Builder().addCustomTargeting("age", "25").build();אפשר להעביר כמה ערכים למפתח כרשימה של מחרוזות. לדוגמה, כדי למקד לאנשים באמצע שנות ה-20 ולא רק לאנשים בני 25.
Kotlin
.addCustomTargeting("age", listOf("24", "25", "26"))Java
.addCustomTargeting("age", Arrays.asList("24", "25", "26"))החרגות של קטגוריות
אפשר להוסיף לרמה של בקשה רמת החרגה של קטגוריה של משבצת באמצעות השיטה
addCategoryExclusion():
Kotlin
// Example: Exclude "automobile" and "boat" categories.
val newRequest =
AdManagerAdRequest.Builder()
.addCategoryExclusion("automobile")
.addCategoryExclusion("boat")
.build()Java
// Example: Exclude "automobile" and "boat" categories.
AdManagerAdRequest newRequest =
new AdManagerAdRequest.Builder()
.addCategoryExclusion("automobile")
.addCategoryExclusion("boat")
.build();כדאי לעיין בדוגמה להחרגות של קטגוריות ב-Ad Manager כדי לראות איך להטמיע החרגות של קטגוריות באפליקציית ההדגמה של Android API.
מזהים שניתנו על ידי בעלי התוכן הדיגיטלי
אפשר להגדיר מזהה שסופק על ידי בעל התוכן הדיגיטלי (PPID) לשימוש במכסת תדירות, בפילוח קהלים ובטירגוט קהלים, בסבב מודעות עוקב ובאמצעי בקרה אחרים להצגת מודעות שמבוססות על קהלים במכשירים שונים.
דוגמה להגדרת מזהה PPID:
Kotlin
val adRequest = AdManagerAdRequest.Builder().setPublisherProvidedId("AB123456789").build()Java
AdManagerAdRequest adRequest =
new AdManagerAdRequest.Builder().setPublisherProvidedId("AB123456789").build();כדאי לעיין בדוגמה ל-PPID ב-Ad Manager כדי לראות הטמעה של מזהים שניתנים על ידי בעל התוכן הדיגיטלי (PPID) באפליקציית ההדגמה של Android API.
אותות שמספקים בעלי תוכן דיגיטלי
אתם יכולים לשלוח נתונים על קהלים ונתונים הקשריים כאותות שמספקים בעלי תוכן דיגיטלי (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 =
AdManagerAdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter::class.java, 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", new ArrayList<>(Arrays.asList(6, 284)));
// Set the content to sedan, station wagon and SUV automotive values.
extras.putIntegerArrayList("IAB_CONTENT_2_2", new ArrayList<>(Arrays.asList(4, 5, 6)));
AdManagerAdRequest request =
new AdManagerAdRequest.Builder().addNetworkExtrasBundle(AdMobAdapter.class, extras).build();כתובת URL של תוכן
כדי לספק כתובת URL של תוכן למודעות שמטרגטות תוכן ולהגנה על המותג, מוסיפים את השורות הבאות:
Kotlin
val builder = AdManagerAdRequest.Builder()
builder.setContentUrl("https://www.example.com")
val request = builder.build()Java
AdManagerAdRequest.Builder builder = new AdManagerAdRequest.Builder();
builder.setContentUrl("https://www.example.com");
AdManagerAdRequest 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 = AdManagerAdRequest.Builder().setNeighboringContentUrls(urls).build()Java
List<String> urls =
Arrays.asList(
"https://www.mycontenturl1.com",
"https://www.mycontenturl2.com",
"https://www.mycontenturl3.com",
"https://www.mycontenturl4.com");
AdManagerAdRequest requestWithContent =
new AdManagerAdRequest.Builder().setNeighboringContentUrls(urls).build();ההגדרה .setNeighboringContentUrls() שונה מההגדרה .setContentUrl() בכך שהיא משמשת רק להגנה על המותג.