מיקוד

הפלטפורמה: Android iOS Unity Flutter

במדריך הזה מוסבר איך לספק מידע על טירגוט ל-Google Mobile Ads SDK.

כדי לראות דוגמה שעובדת, אפשר להוריד את אפליקציית Android API Demo.

הורדת הדגמה של API

דרישות מוקדמות

RequestConfiguration

RequestConfiguration אוסף מידע על טירגוט שחל באופן גלובלי על כל בקשה להצגת מודעה. מידע על תגי טירגוט זמינים מופיע במסמכי התיעוד של RequestConfiguration.Builder.

כדי לעדכן את הגדרות הבקשה, צריך לקבל אובייקט Builder מההגדרות הקיימות, לבצע את העדכונים הרצויים ולהגדיר אותו באופן הבא:

Kotlin

val requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
    .toBuilder()
    .build();
MobileAds.setRequestConfiguration(requestConfiguration);

כדי לוודא ששינויי ההגדרה של הבקשה יחולו על כל הבקשות להצגת מודעות, צריך להגדיר את הבקשה לפני הפעלת Google Mobile Ads SDK.

הגדרה של תוכן לילדים

לצורך חוק הגנת הפרטיות של ילדים באינטרנט (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_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_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(PublisherPrivacyPersonalizationState.DISABLED)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration = MobileAds.getRequestConfiguration()
    .toBuilder()
    .setPublisherPrivacyPersonalizationState(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()
adLoader.loadAd(adRequest)

Java

Bundle extras = new Bundle();
extras.putString("collapsible", "bottom");
AdRequest adRequest = new AdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();
adLoader.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.

.addCustomTargeting("age", Arrays.asList("24", "25", "26"))
כדאי לעיין בדוגמה לטירגוט בהתאמה אישית ב-Ad Manager כדי לראות איך מטמיעים טירגוט בהתאמה אישית באפליקציית ההדגמה של Android API.

החרגות של קטגוריות

אפשר להוסיף לרמה של בקשה רמת החרגה של קטגוריה באמצעות השיטה 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", arrayListOf(6,284));
// Set the content to sedan, station wagon and SUV automotive values.
extras.putIntegerArrayList("IAB_CONTENT_2_2", arrayListOf(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

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");

AdManagerAdRequest requestWithContent = new AdManagerAdRequest.Builder()
    .setNeighboringContentUrls(urls)
    .build();

ההבדל בין .setNeighboringContentUrls() לבין .setContentUrl() הוא שמשתמשים ב-.setNeighboringContentUrls() רק כדי להגן על המותג.