إعداد ميزة "توسّط AdMob"

اختيار النظام الأساسي: Android جديد Android iOS Unity Flutter

توسّط AdMob هو عبارة عن ميزة تتيح لك عرض الإعلانات على تطبيقاتك من مصادر متعددة، بما في ذلك شبكة AdMob ومصادر الإعلانات التابعة لجهات خارجية، وذلك من مكان واحد. تساعد ميزة "توسّط AdMob" في زيادة معدّل التعبئة إلى أقصى حد وزيادة معدّل تحقيق الربح المادي من خلال إرسال طلبات الإعلان إلى شبكات متعددة لضمان عثورك على أفضل شبكة متاحة لعرض إعلاناتك. دراسة حالة

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

قبل دمج التوسّط مع أحد أشكال الإعلانات، عليك دمج شكل الإعلان هذا في تطبيقك باتّباع الخطوات التالية:

هل أنت حديث العهد بالتوسّط؟ اطّلِع على نظرة عامة حول "توسّط AdMob".

لتقديم عروض الأسعار: Google Mobile Ads SDK الإصدار 18.3.0 أو إصدار أحدث.

إعداد Google Mobile Ads SDK

يوضّح لك دليل البدء السريع كيفية تهيئة Google Mobile Ads SDK. أثناء عملية التهيئة هذه، يتم أيضًا تهيئة برامج التكيّف الخاصة بالتوسّط. من المهم الانتظار إلى حين اكتمال عملية التهيئة قبل تحميل الإعلانات من أجل التأكّد من مشاركة جميع شبكات الإعلانات بشكل كامل في طلب عرض الإعلان الأول.

تعرض عيّنة الرمز البرمجي التالية كيفية التحقّق من حالة تهيئة كل وسيط قبل تقديم طلب عرض الإعلان.

جافا

public void initialize(Context context) {
  new Thread(
          () ->
              // Initialize the Google Mobile Ads SDK on a background thread.
              MobileAds.initialize(context, this::logAdapterStatus))
      .start();
}

private void logAdapterStatus(InitializationStatus initializationStatus) {
  // Check each adapter's initialization status.
  Map<String, AdapterStatus> statusMap = initializationStatus.getAdapterStatusMap();
  for (Map.Entry<String, AdapterStatus> entry : statusMap.entrySet()) {
    String adapterClass = entry.getKey();
    AdapterStatus status = entry.getValue();
    Log.d(
        TAG,
        String.format(
            "Adapter name: %s, Description: %s, Latency: %d",
            adapterClass, status.getDescription(), status.getLatency()));
  }
}

Kotlin

fun initialize(context: Context) {
  CoroutineScope(Dispatchers.IO).launch {
    // Initialize the Google Mobile Ads SDK on a background thread.
    MobileAds.initialize(context, ::logAdapterStatus)
  }
}

private fun logAdapterStatus(initializationStatus: InitializationStatus) {
  // Check each adapter's initialization status.
  for ((adapterClass, status) in initializationStatus.adapterStatusMap) {
    Log.d(
      TAG,
      "Adapter: $adapterClass, Status: ${status.description}, Latency: ${status.latency}ms",
    )
  }
}

التحقّق من فئة محوّل شبكة الإعلانات التي حمّلت الإعلان

في ما يلي نموذج رمز يسجّل اسم فئة شبكة الإعلانات لإعلان بانر:

جافا

ResponseInfo responseInfo = ad.getResponseInfo();
String adapterClassName = null;
if (responseInfo != null) {
  adapterClassName = responseInfo.getMediationAdapterClassName();
}
Log.d(TAG, "Adapter class name: " + adapterClassName);

Kotlin

Log.d(TAG, "Adapter class name:" + ad.responseInfo?.mediationAdapterClassName)

لمزيد من التفاصيل حول هذه الطريقة، يُرجى الرجوع إلى مستندات ResponseInfo على getMediationAdapterClassName().

تهيئة عنصر الإعلان باستخدام مثيل Activity

في الدالة الإنشائية لكائن إعلان جديد (على سبيل المثال، AdView)، يجب تمرير كائن من النوع Context. يتم نقل Context هذا إلى شبكات إعلانية أخرى عند استخدام التوسّط. تتطلّب بعض شبكات الإعلانات Context أكثر تقييدًا من النوع Activity، وقد لا تتمكّن من عرض الإعلانات بدون مثيل Activity. لذلك، ننصحك بتمرير مثيل Activity عند تهيئة عناصر الإعلان للتحقّق من توفير تجربة متّسقة مع شبكات الإعلانات التي تستخدم التوسّط.

احرص على إيقاف ميزة التحديث في جميع واجهات المستخدم الخاصة بمصادر الإعلانات التابعة لجهات خارجية لوحدات إعلانات البانر المستخدَمة في توسّط AdMob. يمنع ذلك إعادة التحميل المزدوجة لأنّ AdMob يفعّل أيضًا عملية إعادة تحميل استنادًا إلى معدّل إعادة التحميل الخاص بوحدة إعلانات البانر.

استخدام "الإعلانات المدمجة مع المحتوى" من خلال "توسّط AdMob"

في ما يلي بعض أفضل الممارسات التي يجب مراعاتها عند تنفيذ التوسّط باستخدام الإعلانات المدمجة مع المحتوى.

سياسة عرض الإعلانات المدمجة مع المحتوى
لكل شبكة إعلانات سياساتها الخاصة. عند استخدام التوسّط، من المهم تذكُّر أنّ تطبيقك يجب أن يلتزم بسياسات شبكة التوسّط التي قدّمت الإعلان.
استخدام loadAd() بدلاً من loadAds()
لا تعرض الطريقة loadAds() سوى إعلانات Google. بالنسبة إلى الإعلانات التي يتم عرضها من خلال وسيط، استخدِم loadAd() بدلاً من ذلك.

قوانين الخصوصية في الولايات الأمريكية و"اللائحة العامة لحماية البيانات"

إذا كنت بحاجة إلى الالتزام بقوانين الخصوصية في الولايات الأمريكية أو اللائحة العامة لحماية البيانات (GDPR)، اتّبِع الخطوات الواردة في إعدادات اللوائح التنظيمية في الولايات الأمريكية أو إعدادات اللائحة العامة لحماية البيانات لإضافة شركاء التوسّط في قائمة شركاء الإعلانات في الولايات الأمريكية أو قائمة شركاء الإعلانات في اللائحة العامة لحماية البيانات ضمن "الخصوصية والمراسلة" في AdMob. وقد يؤدي عدم اتّباع هذه الخطوات إلى عدم تمكّن الشركاء من عرض الإعلانات على تطبيقك.

اطّلِع على مزيد من المعلومات عن تفعيل المعالجة المحدودة للبيانات (RDP) والحصول على موافقة بموجب "اللائحة العامة لحماية البيانات" (GDPR) باستخدام حزمة تطوير البرامج (SDK) لمنصّة Google User Messaging Platform (UMP).