هدف گیری

این راهنما توضیح می‌دهد که چگونه اطلاعات هدف‌یابی را به «کیت توسعه نرم‌افزار تبلیغات تلفن همراه Google» ارائه دهید.

پیش‌نیاز

پیش‌از ادامه دادن، 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)

جاوا

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  // Set your targeting tags.
  .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

برای اعمال کردن برچسب‌های هدف‌یابی از اولین درخواست آگهی، پیکربندی درخواست را درطول مقداردهی اولیه کیت توسعه نرم‌افزار ارائه دهید:

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 AdMob 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.
}

جاوا

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 AdMob 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();

تنظیم درمان سنی

برای کمک به شما در مدیریت رعایت مقررات حریم خصوصی ذی‌ربط مربوط به کودکان و نوجوانان، GMA Next-Gen SDK تنظیمات پردازش سنی ارائه می‌دهد. تنظیم رفتار سنی به شما امکان می‌دهد مشخص کنید که آیا GMA Next-Gen SDK باید محافظت‌های خاصی را برای ارائه آگهی به کودکان، نوجوانان، یا گروه سنی نامشخص اعمال کند یا نه.

می‌توانید با روش setAgeRestrictedTreatment() با RequestConfiguration.Builder API، درمان سنی را تنظیم کنید.

مثال زیر نشان می‌دهد که درخواست‌های آگهی باید درمان سن کودک را دریافت کنند:

Kotlin

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

جاوا

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

برای نشان دادن درمان نوجوانان یا درمان برای گروه سنی نامشخص، تنظیم CHILD را با موارد زیر جایگزین کنید:

  • TEEN
  • UNSPECIFIED

هنگام استفاده از این تنظیم، GMA Next-Gen SDK پارامتر 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

درک تعاملات پردازش سن با TFCD و TFUA

اگر تنظیمات رفتار سنی و تنظیمات TFCD یا TFUA را تنظیم کنید، Google محافظه‌کارانه‌ترین رفتار را اعمال می‌کند.

انتقال درمان سنی با واسطه‌گری AdMob

اگر پردازش سنی را بااستفاده از GMA Next-Gen 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 (Vungle) 7.7.4.2
LY (Line) 3.1.1.1
maio 2.0.9.0
Meta (Facebook) 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

تنظیم کودک‌محور

برای اهداف قانون محافظت از حریم خصوصی آنلاین کودکان (COPPA)، تنظیمی به نام «برچسب‌گذاری برای رفتار کودک‌محور» وجود دارد. با تنظیم این برچسب، تأیید می‌کنید که این اعلان صحیح است و اجازه دارید ازطرف مالک برنامه اقدام کنید. می‌دانید که سوءاستفاده از این تنظیم ممکن است منجر به بسته شدن «حساب Google» شما شود.

به‌عنوان توسعه‌دهنده برنامه، می‌توانید هنگام درخواست آگهی مشخص کنید که آیا می‌خواهید Google محتوای شما را به‌عنوان محتوای کودک‌محور درنظر بگیرد یا نه. اگر نشان دهید که می‌خواهید Google محتوایتان را به‌عنوان محتوای کودک‌محور درنظر بگیرد، ما اقداماتی برای غیرفعال کردن آگهی‌های «علاقه‌محور» و «بازاریابی مجدد» در آن درخواست آگهی انجام می‌دهیم.

می‌توانید تنظیم کودک‌محور را ازطریق setTagForChildDirectedTreatment() اعمال کنید:

  • با setTagForChildDirectedTreatment با TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE تماس بگیرید و اعلام کنید که می‌خواهید محتوایتان برای اهداف «قانون محافظت از حریم خصوصی آنلاین کودکان» به‌عنوان محتوای ویژه کودکان درنظر گرفته شود. این کار از انتقال شناسه تبلیغاتی Android (AAID) جلوگیری می‌کند.

  • با setTagForChildDirectedTreatment با TAG_FOR_CHILD_DIRECTED_TREATMENT_FALSE تماس بگیرید تا اعلام کنید که نمی‌خواهید محتوایتان برای اهداف «قانون محافظت از حریم خصوصی آنلاین کودکان» به‌عنوان محتوای معطوف به کودکان درنظر گرفته شود.

  • اگر نمی‌خواهید مشخص کنید که محتوایتان ازنظر «قانون محافظت از حریم خصوصی آنلاین کودکان» چگونه در درخواست‌های آگهی مدیریت شود، با setTagForChildDirectedTreatment TAG_FOR_CHILD_DIRECTED_TREATMENT_UNSPECIFIED تماس بگیرید.

مثال زیر نشان می‌دهد که می‌خواهید محتوای شما برای اهداف «قانون محافظت از حریم خصوصی آنلاین کودکان» به‌عنوان کودک‌محور درنظر گرفته شود:

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setTagForChildDirectedTreatment(RequestConfiguration.TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

جاوا

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setTagForChildDirectedTreatment(TagForChildDirectedTreatment.TAG_FOR_CHILD_DIRECTED_TREATMENT_TRUE)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);
را تنظیم کنید.

می‌توانید درخواست‌های آگهی‌تان را علامت‌گذاری کنید تا برای کاربران زیر سن رضایت در منطقه اقتصادی اروپا (EEA) پردازش شوند. این ویژگی برای کمک به تسهیل رعایت مقررات کلی حفاظت از داده (GDPR) طراحی شده است. ممکن است تحت «مقررات عمومی حفاظت از داده‌ها» تعهدات قانونی دیگری داشته باشید. راهنمایی‌های اتحادیه اروپا را مرور کنید و با مشاور حقوقی خود مشورت کنید. ابزارهای Google برای تسهیل کردن رعایت استانداردها طراحی شده‌اند و ناشران را از تعهداتشان تحت قانون معاف نمی‌کنند. درباره نحوه تأثیر «مقررات کلی حفاظت از داده» بر ناشران بیشتر بدانید.

هنگام استفاده از این ویژگی، پارامتر «برچسب برای کاربران زیر سن قانونی در اروپا» (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 = RequestConfiguration
  .Builder()
  .setTagForUnderAgeOfConsent(RequestConfiguration.TagForUnderAgeOfConsent.TAG_FOR_UNDER_AGE_OF_CONSENT_TRUE)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

جاوا

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_G
  • MAX_AD_CONTENT_RATING_PG
  • MAX_AD_CONTENT_RATING_T
  • MAX_AD_CONTENT_RATING_MA

کد زیر یک شیء RequestConfiguration را پیکربندی می‌کند تا مشخص کند محتوای آگهی برگشتی باید با یک نامگذاری برچسب محتوای دیجیتال که بالاتر از G نیست مطابقت داشته باشد:

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setMaxAdContentRating(RequestConfiguration.MaxAdContentRating.MAX_AD_CONTENT_RATING_G)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

جاوا

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setMaxAdContentRating(MaxAdContentRating.MAX_AD_CONTENT_RATING_G)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

درباره موارد زیر بیشتر بدانید:

پردازش حریم خصوصی ناشر (نسخه بتا)

میانای برنامه‌سازی کاربردی پردازش حریم خصوصی ناشر (PPT) ابزاری اختیاری است که به برنامه‌ها امکان می‌دهد مشخص کنند که آیا شخصی‌سازی آگهی‌ها را برای همه درخواست‌های آگهی بااستفاده از روش setPublisherPrivacyPersonalizationState() خاموش کنند یا نه. هنگام استفاده از این ویژگی، پارامتر «درمان حریم خصوصی ناشر» (PPT) در همه درخواست‌های آگهی آینده برای باقی‌مانده جلسه گنجانده می‌شود.

به‌طور پیش‌فرض، درخواست‌های آگهی به Google آگهی‌های شخصی‌سازی‌شده ارائه می‌دهد. کد زیر شخصی‌سازی آگهی را برای همه درخواست‌های آگهی خاموش می‌کند:

Kotlin

val requestConfiguration = RequestConfiguration
  .Builder()
  .setPublisherPrivacyPersonalizationState(RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED)
  .build()

MobileAds.setRequestConfiguration(requestConfiguration)

جاوا

RequestConfiguration requestConfiguration = new RequestConfiguration
  .Builder()
  .setPublisherPrivacyPersonalizationState(RequestConfiguration.PublisherPrivacyPersonalizationState.DISABLED)
  .build();

MobileAds.setRequestConfiguration(requestConfiguration);

درخواست آگهی

شیء AdRequest اطلاعات هدف‌یابی را برای ارسال با درخواست آگهی جمع‌آوری می‌کند.

افزودن موارد اضافی شبکه

افزوده‌های شبکه جزئیات اضافه‌ای هستند که همراه با درخواست آگهی ارسال می‌شوند و مختص یک منبع آگهی هستند.

تکه‌کد زیر کلید پارامتر اضافی 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)

جاوا

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