الاستهداف

يشرح هذا الدليل كيفية توفير معلومات الاستهداف لطلب إعلان. للحصول على مثال عملي، يمكنك تنزيل تطبيق Android API التجريبي.

تنزيل عرض توضيحي لواجهة برمجة التطبيقات

المتطلبات الأساسية

RequestConfiguration

RequestConfiguration هو كائن يجمع معلومات الاستهداف لتطبيقها على مستوى العالم من خلال طريقة MobileAds ثابتة.

لتحديث تهيئة الطلب، احصل على أداة إنشاء من التهيئة الحالية، وأجرِ أي تحديثات مطلوبة، وعيِّنها على النحو التالي:

Java

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

Kotlin

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

الموقع باعتباره موجّهًا للأطفال

بموجب قانون حماية خصوصية الأطفال على الإنترنت (COPPA)، ثمة إعداد يسمى "وضع علامة للتعامل مع الموقع باعتباره موجّهًا للأطفال". من خلال ضبط هذه العلامة، أنت تقرّ بأنّ هذا الإشعار دقيق وأنك مفوَّض بالتصرف نيابةً عن مالك التطبيق. وتدرك أنّ إساءة استخدام هذا الإعداد قد تؤدي إلى إنهاء حسابك على Google.

بصفتك مطور تطبيقات، يمكنك تحديد ما إذا كنت تريد أن تتعامل Google مع المحتوى الذي تقدمه باعتباره موجّهًا للأطفال عند تقديم طلب إعلان. إذا أشرت إلى رغبتك في أن تتعامل Google مع محتواك بصفته موجّهًا للأطفال، نتخذ الخطوات اللازمة لإيقاف الإعلانات التي تستهدف الاهتمامات وإعلانات تجديد النشاط التسويقي على طلب الإعلان هذا.

يمكن استخدام هذا الإعداد مع جميع إصدارات حزمة تطوير البرامج (SDK) "لخدمات Google Play" من خلال RequestConfiguration.Builder.setTagForChildDirectedTreatment(int):

  • يمكنك الاتصال بـ 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:

Java

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

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setTagForChildDirectedTreatment(RequestConfiguration.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 للإشارة إلى أنّك تريد ألا يتم التعامل مع طلب الإعلان للمستخدمين دون سن الرشد في المنطقة الاقتصادية الأوروبية.

  • يمكنك الاتصال بالرقم setTagForUnderAgeOfConsent() مع TAG_FOR_UNDER_AGE_OF_CONSENT_UNSPECIFIED للإشارة إلى أنّك لم تحدّد ما إذا كان يجب التعامل مع طلب الإعلان للمستخدمين دون سن الرشد في المنطقة الاقتصادية الأوروبية.

يشير المثال التالي إلى أنّك تريد تضمين TFUA في طلبات إعلاناتك:

Java

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

Kotlin

var 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:

Java

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

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setMaxAdContentRating(RequestConfiguration.MAX_AD_CONTENT_RATING_G)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

يمكنك الاطّلاع على المقالات التالية:

معالجة خصوصية الناشرين (إصدار تجريبي)

واجهة المعالجة المتعلقة بالخصوصية للناشرين (PPT) API هي أداة اختيارية تتيح للتطبيقات تحديد ما إذا كان يجب إيقاف تخصيص الإعلانات لجميع طلبات الإعلانات، وذلك باستخدام طريقة setPublisherPrivacyPersonalizationState(). عند استخدام هذه الميزة، يتم تضمين مَعلمة معالجة خصوصية الناشر (PPT) في جميع طلبات الإعلانات المستقبلية لبقية الجلسة.

ويتم تلقائيًا عرض إعلانات مخصّصة لطلبات الإعلانات على Google. يعمل الرمز التالي على إيقاف تخصيص الإعلانات لجميع طلبات الإعلانات:

Java

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

Kotlin

var requestConfiguration = MobileAds.getRequestConfiguration()
  .toBuilder()
  .setPublisherPrivacyPersonalizationState(PublisherPrivacyPersonalizationState.DISABLED)
  .build()
MobileAds.setRequestConfiguration(requestConfiguration)

طلب الإعلان

يجمع الكائن AdManagerAdRequest معلومات الاستهداف ليتم إرسالها مع طلب إعلان.

الاستهداف المخصّص

يمكنك ضبط أزواج المفتاح/القيمة المخصّصة لاستهداف حملات "مدير إعلانات Google" (العناصر) حتى AdManagerAdRequest.Builder.addCustomTargeting():

Java

// Example: Pass custom targeting "age=25".
AdManagerAdRequest newRequest = new AdManagerAdRequest.Builder()
    .addCustomTargeting("age", "25")
    .build();

Kotlin

// Example: Pass custom targeting "age=25".
var newRequest = AdManagerAdRequest.Builder()
  .addCustomTargeting("age", "25")
  .build()

يمكنك تمرير قيم متعددة لمفتاح كقائمة من السلاسل. على سبيل المثال، لاستهداف الأفراد في منتصف العشرينات بدلاً من سن 25 عامًا فقط.

.addCustomTargeting("age", Arrays.asList("24", "25", "26"))

اطّلِع على مثال الاستهداف المخصّص في "مدير الإعلانات" لتنفيذ استهداف مخصّص في التطبيق التجريبي لواجهة برمجة تطبيقات Android.

استثناءات الفئات

يمكنك إضافة مستوى استبعاد فئة على مستوى الخانة إلى أحد الطلبات باستخدام طريقة addCategoryExclusion() المتوفّرة من خلال AdManagerAdRequest.Builder:

Java

// Example: Exclude "automobile" and "boat" categories.
AdManagerAdRequest newRequest = new AdManagerAdRequest.Builder()
    .addCategoryExclusion("automobile")
    .addCategoryExclusion("boat")
    .build();

Kotlin

// Example: Exclude "automobile" and "boat" categories.
var newRequest = AdManagerAdRequest.Builder()
  .addCategoryExclusion("automobile")
  .addCategoryExclusion("boat")
  .build()

اطّلِع على مثال على استثناءات الفئات في "مدير الإعلانات" لتنفيذ استثناءات الفئات في تطبيق Android API التجريبي.

المعرّفات المقدَّمة من الناشر

يمكنك ضبط المعرّف المقدَّم من الناشر (PPID) لاستخدامه في تحديد عدد مرات الظهور، وتصنيف الجمهور واستهدافه، والعرض المتسلسل للإعلانات، وغيرها من عناصر التحكم في عرض الإعلانات التي تستند إلى الجمهور على جميع الأجهزة.

في ما يلي مثال على ضبط المعرّف المقدَّم من الناشر (PPID):

Java

AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder()
    .setPublisherProvidedId("AB123456789")
    .build();

Kotlin

var adRequest = AdManagerAdRequest.Builder()
  .setPublisherProvidedId("AB123456789")
  .build()

اطّلِع على مثال على المعرّف المقدَّم من الناشر (PPID) على "مدير الإعلانات" للاطّلاع على تنفيذ المعرّفات المقدَّمة من الناشر (PPID) في تطبيق Android API التجريبي.

إشارات مقدَّمة من الناشر

يمكنك إرسال الجمهور والبيانات السياقية على شكل إشارات مقدَّمة من الناشر (PPS) في طلبات الإعلان. مع PPS، يمكنك استخدام بيانات المستخدمين لتحسين تحقيق الربح الآلي من خلال إعلام مقدمي عروض الأسعار بخصائص جمهورك في جميع أنواع المعاملات، وذلك باستخدام التصنيفات العادية بدون الحاجة إلى مشاركة معرّفات المستخدمين. يمكن أن تشمل خصائص جمهورك البيانات السلوكية والاهتمامات (تصنيف IAB للجمهور 1.1) والبيانات السياقية (تصنيف المحتوى الصادر عن مكتب IAB للإصدار 2.2).

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

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()
  .addNetworkExtrasBundle(AdMobAdapter::class.java, extras)
  .build()

عنوان URL الخاص بالمحتوى

لتوفير عنوان URL للمحتوى للإعلانات التي تستهدف المحتوى وأمان العلامة التجارية، يمكنك طلب الرمز setContentUrl() عند إنشاء AdManagerAdRequest:

Java

AdManagerAdRequest.Builder builder = new AdManagerAdRequest.Builder();
builder.setContentUrl("https://www.example.com");
AdManagerAdRequest request = builder.build();

Kotlin

val builder = AdManagerAdRequest.Builder()
builder.setContentUrl("https://www.example.com")
val request = builder.build()

أمان العلامة التجارية (إصدار تجريبي)

يمكن للتطبيقات التي تعرض محتوى ديناميكيًا موجَّهًا لشرائح مختلفة من الجمهور تقديم قائمة قصيرة بعناوين URL باستخدام طريقة setNeighboringContentUrls() عند إنشاء AdManagerAdRequest:

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

Kotlin

var urls = mutableListOf("https://www.mycontenturl1.com", "https://www.mycontenturl2.com",
                         "https://www.mycontenturl3.com", "https://www.mycontenturl4.com")
var requestWithContent = AdManagerAdRequest.Builder()
  .setNeighboringContentUrls(urls)
  .build()

تختلف .setNeighboringContentUrls() عن .setContentUrl() في أنها تُستخدم فقط لأمان العلامة التجارية.