البدء

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

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

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

هل أنت مستخدم جديد للتوسّط؟ القراءة نظرة عامة على "توسّط AdMob".

لعروض الأسعار: الإصدار 18.3.0 من حزمة "SDK لإعلانات Google على الأجهزة الجوّالة" أو أعلى.

إعداد حزمة تطوير البرامج (SDK) لعرض الإعلانات للأجهزة الجوّالة

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

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

Java

import com.google.android.gms.ads.MobileAds;
import com.google.android.gms.ads.initialization.AdapterStatus;
import com.google.android.gms.ads.initialization.InitializationStatus;
import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;

public class MainActivity extends AppCompatActivity {

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        new Thread(
                () ->
                    // Initialize the Google Mobile Ads SDK on a background thread.
                    MobileAds.initialize(
                        this,
                        initializationStatus -> {
                          Map<String, AdapterStatus> statusMap =
                              initializationStatus.getAdapterStatusMap();
                          for (String adapterClass : statusMap.keySet()) {
                            AdapterStatus status = statusMap.get(adapterClass);
                            Log.d(
                                "MyApp",
                                String.format(
                                    "Adapter name: %s, Description: %s, Latency: %d",
                                    adapterClass, status.getDescription(), status.getLatency()));
                          }
                          // Start loading ads here...
                        }))
            .start();
    }
}

Kotlin

import com.google.android.gms.ads.MobileAds
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch

class MainActivity : AppCompatActivity() {
  override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)

    val backgroundScope = CoroutineScope(Dispatchers.IO)
    backgroundScope.launch {
      // Initialize the Google Mobile Ads SDK on a background thread.
      MobileAds.initialize(this@MainActivity) { initializationStatus ->
        val statusMap =
          initializationStatus.adapterStatusMap
        for (adapterClass in statusMap.keys) {
          val status = statusMap[adapterClass]
          Log.d(
            "MyApp", String.format(
              "Adapter name: %s, Description: %s, Latency: %d",
              adapterClass, status!!.description, status.latency
            )
          )
        }
        // Start loading ads here...
      }
    }
  }
}

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

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

Java

public void onAdLoaded() {
  Log.d("Banner adapter class name: " + ad.getResponseInfo().getMediationAdapterClassName());
}

Kotlin

override fun onAdLoaded() {
  Log.d("Banner adapter class name:" + ad.responseInfo.mediationAdapterClassName)
}

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

إعداد عنصر الإعلان باستخدام مثيل "النشاط"

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

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

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

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

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

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

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

مزيد من المعلومات عن تفعيل المعالجة المحدودة للبيانات (RDP) والحصول على "اللائحة العامة لحماية البيانات" الموافقة مع منصة Google User Messaging Platform (UMP) حزمة SDK: