شروع کنید

AdMob Mediation یک ویژگی است که به شما امکان می‌دهد تبلیغات را از چندین منبع، از جمله شبکه AdMob و منابع تبلیغاتی شخص ثالث، در یک مکان به برنامه‌های خود ارائه دهید. AdMob Mediation با ارسال درخواست‌های تبلیغاتی به چندین شبکه به حداکثر رساندن نرخ پر شدن و افزایش درآمد شما کمک می‌کند تا مطمئن شود بهترین شبکه موجود برای ارائه تبلیغات را پیدا می‌کنید. مطالعه موردی .

پیش نیازها

قبل از اینکه بتوانید میانجیگری را برای یک قالب تبلیغ یکپارچه کنید، باید آن قالب تبلیغ را در برنامه خود ادغام کنید:

تازه در میانجیگری؟ مرور کلی AdMob Mediation را بخوانید.

برای مناقصه: Google Mobile Ads SDK 18.3.0 یا بالاتر.

SDK تبلیغات موبایل را راه اندازی کنید

راهنمای شروع سریع به شما نشان می دهد که چگونه SDK تبلیغات موبایلی را مقداردهی اولیه کنید . در طول آن تماس اولیه، آداپتورهای واسطه نیز مقداردهی اولیه می شوند. برای اطمینان از مشارکت کامل هر شبکه تبلیغاتی در اولین درخواست تبلیغ، مهم است که منتظر بمانید تا مقداردهی اولیه قبل از بارگیری تبلیغات کامل شود.

کد نمونه زیر نشان می دهد که چگونه می توانید وضعیت اولیه سازی هر آداپتور را قبل از درخواست تبلیغ بررسی کنید.

جاوا

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

کاتلین

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

بررسی کنید کدام کلاس آداپتور شبکه تبلیغاتی آگهی را بارگیری کرده است

در اینجا چند کد نمونه وجود دارد که نام کلاس شبکه تبلیغاتی را برای یک آگهی تبلیغاتی ثبت می کند:

جاوا

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

کاتلین

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

برای جزئیات بیشتر در مورد این روش به مستندات ResponseInfo در getMediationAdapterClassName() مراجعه کنید.

شیء تبلیغ خود را با یک نمونه Activity راه اندازی کنید

در سازنده یک شی آگهی جدید (مثلا AdView )، باید یک شی از نوع Context را وارد کنید. این Context در هنگام استفاده از میانجیگری به سایر شبکه های تبلیغاتی منتقل می شود. برخی از شبکه‌های تبلیغاتی به یک Context محدودتر نیاز دارند که از نوع Activity است و ممکن است نتواند تبلیغات را بدون نمونه Activity ارائه کند. بنابراین، توصیه می‌کنیم هنگام راه‌اندازی اشیاء تبلیغاتی، از یک نمونه Activity استفاده کنید تا از تجربه‌ای سازگار با شبکه‌های تبلیغاتی واسطه‌ای خود اطمینان حاصل کنید.

مطمئن شوید که Refresh را در همه رابط‌های کاربری منبع آگهی شخص ثالث برای واحدهای تبلیغات بنری مورد استفاده در AdMob Mediation غیرفعال کنید. این کار از یک به‌روزرسانی مضاعف جلوگیری می‌کند، زیرا AdMob همچنین بر اساس نرخ به‌روزرسانی واحد تبلیغات بنر شما، به‌روزرسانی را راه‌اندازی می‌کند.

از تبلیغات بومی با میانجیگری AdMob استفاده کنید

موارد زیر برخی از بهترین روش‌هایی است که باید هنگام اجرای تبلیغات بومی در AdMob Mediation در نظر بگیرید.

خط مشی ارائه تبلیغات بومی
هر شبکه تبلیغاتی سیاست های خاص خود را دارد. هنگام استفاده از میانجی‌گری، مهم است که به یاد داشته باشید که برنامه شما همچنان باید از خط‌مشی‌های شبکه واسطه‌ای که آگهی را ارائه کرده است، تبعیت کند.
استفاده از loadAd() به جای loadAds()
متد loadAds() فقط تبلیغات گوگل را ارائه می کند. برای تبلیغات واسطه، به جای آن از loadAd() استفاده کنید.

قوانین حفظ حریم خصوصی ایالات متحده و GDPR

اگر نیاز به رعایت قوانین حریم خصوصی ایالت های ایالات متحده یا مقررات عمومی حفاظت از داده (GDPR) دارید، مراحل موجود در تنظیمات مقررات ایالتی ایالات متحده یا تنظیمات GDPR را دنبال کنید تا شرکای میانجی خود را در ایالات متحده AdMob Privacy & Messaging یا لیست شرکای تبلیغاتی GDPR اضافه کنید. عدم انجام این کار می تواند منجر به شکست شرکا در ارائه تبلیغات در برنامه شما شود.

درباره فعال کردن پردازش محدود داده (RDP) و کسب رضایت GDPR با پلت فرم پیام‌رسانی کاربر Google (UMP) SDK بیشتر بیاموزید.