البدء

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

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

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

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

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

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

إعداد حزمة 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);

        MobileAds.initialize(this, new OnInitializationCompleteListener() {
            @Override
            public void onInitializationComplete(InitializationStatus 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...
            }
        });
    }
}

Kotlin

import com.google.android.gms.ads.MobileAds

MobileAds.initialize(this) { 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 UI. لتنفيذ ذلك، ضَع علامة في المربّع تطبيق على جميع الشبكات في مجموعات التوسّط حتى تصبح المكافأة متسقة في جميع الشبكات. لا تقدم بعض شبكات المواقع الإعلانية قيمة أو نوع المكافأة على الإطلاق. ومن خلال تجاوز قيمة المكافأة، تكون المكافأة متسقة بغض النظر عن شبكة الإعلانات التي عرضت الإعلان.

ولمزيد من المعلومات عن إعداد قيم المكافأة في واجهة مستخدم AdMob، يُرجى الرجوع إلى إنشاء وحدة إعلانية بمكافأة.

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

في ما يلي بعض أفضل الممارسات التي يجب وضعها في الاعتبار عند تنفيذ التوسط الأصلي.

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

CCPA واللائحة العامة لحماية البيانات

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

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