מיקוד

בחירת פלטפורמה: Android iOS Unity Flutter Android (Legacy)

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

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

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

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

לפני שממשיכים, מגדירים את Google Mobile Ads SDK (Legacy).

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 (Legacy).

הגדרת הגבלות שקשורות לגיל

כדי לעזור לכם לעמוד בדרישות של תקנות הפרטיות הרלוונטיות שקשורות לילדים ולבני נוער, Google Mobile Ads SDK (Legacy) מספק הגדרת טיפול לפי גיל. ההגדרה של הגבלות שקשורות לגיל מאפשרת לציין אם Google Mobile Ads SDK (Legacy) צריך להחיל הגנות ספציפיות על הצגת מודעות לילדים, לבני נוער או למשתמשים בגיל לא ידוע.

אפשר להגדיר הגבלות שקשורות לגיל באמצעות ה-method‏ setAgeRestrictedTreatment() עם ה-API‏ RequestConfiguration.Builder.

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

Kotlin

val requestConfiguration =
  MobileAds.getRequestConfiguration()
    .toBuilder()
    // Indicate that ad requests should have child age treatment.
    .setAgeRestrictedTreatment(AgeRestrictedTreatment.CHILD)
    .build()
MobileAds.setRequestConfiguration(requestConfiguration)

Java

RequestConfiguration requestConfiguration =
    MobileAds.getRequestConfiguration().toBuilder()
        // Indicate that ad requests should have child age treatment.
        .setAgeRestrictedTreatment(AgeRestrictedTreatment.CHILD)
        .build();
MobileAds.setRequestConfiguration(requestConfiguration);

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

  • TEEN
  • UNSPECIFIED

כשמשתמשים בהגדרה הזו, Google Mobile Ads SDK (Legacy) כולל פרמטר tfat בבקשות להצגת מודעות. כדי להבין מהו הגיל הרלוונטי לזכאות שחל על המשתמשים שלכם בהתאם לחובות המשפטיות והרגולטוריות שלכם, מומלץ להתייעץ עם יועץ משפטי. מידע נוסף זמין במאמר בנושא תיוג בקשה להצגת מודעה בתג הגבלות שקשורות לגיל.

מעבר לטיפול בהגבלות שקשורות לגיל מתגי TFCD ו-TFUA

ההגדרה של הגבלות שקשורות לגיל מחליפה את ההגדרות .setTagForChildDirectedTreatment() (TFCD) ו-.setTagForUnderAgeOfConsent() (TFUA) שהוצאו משימוש.

בטבלה הבאה מוצגות ההגדרות TFCD ו-TFUA וההגדרות המקבילות שלהן לטיפול בנתוני גיל:

TFCD

TFCD התאמה לפי גיל
TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE AgeRestrictedTreatment.CHILD
TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE AgeRestrictedTreatment.UNSPECIFIED
TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED AgeRestrictedTreatment.UNSPECIFIED
לא הוקצה ערך .setTagForChildDirectedTreatment() AgeRestrictedTreatment.UNSPECIFIED
אין דוח מקביל AgeRestrictedTreatment.TEEN

TFUA

TFUA התאמה לפי גיל
TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE AgeRestrictedTreatment.CHILD
TAG_FOR_UNDER_AGE_OF_CONSENT_FALSE AgeRestrictedTreatment.UNSPECIFIED
TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED AgeRestrictedTreatment.UNSPECIFIED
לא הוקצה ערך .setTagForUnderAgeOfConsent() AgeRestrictedTreatment.UNSPECIFIED
אין דוח מקביל AgeRestrictedTreatment.TEEN

הסבר על אינטראקציות שקשורות לטיפול בנתונים של משתמשים מתחת לגיל 13 באמצעות TFCD ו-TFUA

אם תגדירו את התג TFAT וגם את התגים TFCD או TFUA, ‏ Google תחיל על הבקשות את ההגבלות הכי שמרניות.

העברת נתוני הגיל בתהליך בחירת הרשת (Mediation)

אם הגדרתם את אופן הטיפול בנתוני הגיל באמצעות Google Mobile Ads SDK (Legacy), מתאמי המדיאציה מעבירים את אות הטיפול בנתוני הגיל לערכות SDK של צד שלישי שעוברות מדיאציה.

בטבלה הבאה מפורטות הגרסאות של מתאמי התיווך שתומכות בהעברה של אות הסיווג לפי גיל אל ה-SDK של מקור המודעות החיצוני שמתבצעת דרך תיווך:

שם המתאם למנגנון בחירת הרשת הגרסה המינימלית הנתמכת
AppLovin 13.6.3.0
BidMachine 3.7.1.1
Bigo 5.9.0.1
Chartboost 9.12.1.1
DTExchange (Fyber) 8.4.5.1
i-mobile 2.3.2.4
InMobi 11.3.0.1
IronSource 9.4.3.0
Liftoff Monetize (Vungle) 7.7.4.2
LY (Line) 3.1.1.1
maio 2.0.9.0
מטא (פייסבוק) 6.21.0.4
Mintegral 17.1.61.1
Moloco 4.10.0.0
MyTarget 5.47.1.1
Pangle 8.1.0.3.1
PubMatic 5.1.2.2
Verve 3.9.0.0

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

לצורך 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.

  • מתקשרים אל setTagForChildDirectedTreatment עם TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED אם לא רוצים לציין איך רוצים שיתייחסו לתוכן בהקשר של COPPA בבקשות להצגת מודעות.

בדוגמה הבאה מצוין שאתם רוצים שהתוכן שלכם יסווג כתוכן שמיועד לילדים לצורך עמידה בדרישות ה-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). פיתחנו את התכונה הזו כדי לעזור לכם לציית לדרישות של General Data Protection Regulation (התקנות הכלליות להגנה על מידע, 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);

מידע נוסף על הגדרת סיווג תוכן מקסימלי לכל בקשה להצגת מודעה

הטיפול בפרטיות של בעלי תוכן דיגיטלי (בטא)

‫Publisher Privacy Treatment (או בקיצור PPT) API הוא כלי אופציונלי שמאפשר לאפליקציות לציין אם להשבית את ההתאמה האישית של מודעות לכל הבקשות להצגת מודעות באמצעות השיטה 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"))

כדאי לעיין בדוגמה לטירגוט בהתאמה אישית ב-Ad Manager כדי לראות איך מטמיעים טירגוט בהתאמה אישית באפליקציית ההדגמה של Android API.

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

כדי להוסיף לרמת הבקשה רמת החרגה של קטגוריה ברמת משבצת, משתמשים ב-method‏ 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) לשימוש במכסת תדירות, בפילוח קהל ובטירגוט שלו, בסבב מודעות ברצף ובאמצעי בקרה אחרים להצגת מודעות שמבוססים על קהלים במכשירים שונים.

דוגמה להגדרת מזהה 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() בכך שהוא משמש רק להגנה על המותג.