आरंभ करें

AdMob मीडिएशन की सुविधा की मदद से, अपने ऐप्लिकेशन पर कई सोर्स से विज्ञापन दिखाए जा सकते हैं. इनमें AdMob नेटवर्क और तीसरे पक्ष के विज्ञापन स्रोत शामिल हैं. AdMob मीडिएशन की मदद से, कई नेटवर्क को विज्ञापन अनुरोध भेजे जा सकते हैं. इससे, विज्ञापन दिखाने के लिए सबसे सही नेटवर्क ढूंढने में मदद मिलती है. साथ ही, आपके विज्ञापन दिखाने की दर (फ़िल दर) और कमाई करने की क्षमता बढ़ती है. केस स्टडी.

ज़रूरी शर्तें

किसी विज्ञापन फ़ॉर्मैट के लिए मीडिएशन को इंटिग्रेट करने से पहले, आपको उस विज्ञापन फ़ॉर्मैट को अपने ऐप्लिकेशन में इंटिग्रेट करना होगा:

क्या आपने पहले कभी मीडिएशन का इस्तेमाल नहीं किया है? AdMob मीडिएशन के बारे में खास जानकारी पढ़ें.

बिडिंग के लिए: Google Mobile Ads SDK 18.3.0 या इसके बाद का वर्शन.

Mobile Ads SDK को शुरू करना

तुरंत शुरू करने की गाइड में, Mobile Ads 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)
}

इस तरीके के बारे में ज़्यादा जानने के लिए, getMediationAdapterClassName() पर ResponseInfo दस्तावेज़ देखें.

गतिविधि के इंस्टेंस की मदद से, अपने विज्ञापन ऑब्जेक्ट को शुरू करना

किसी नए विज्ञापन ऑब्जेक्ट (उदाहरण के लिए, AdView) के कंस्ट्रक्टर में, आपको टाइप Context का ऑब्जेक्ट पास करना होगा. मीडिएशन का इस्तेमाल करते समय, यह Context अन्य विज्ञापन नेटवर्क को भेजा जाता है. कुछ विज्ञापन नेटवर्क को ज़्यादा पाबंदी वाले Context की ज़रूरत होती है, जो Activity टाइप का होता है. हो सकता है कि वे Activity इंस्टेंस के बिना विज्ञापन न दिखा पाएं. इसलिए, हमारा सुझाव है कि विज्ञापन ऑब्जेक्ट को शुरू करते समय, Activity इंस्टेंस को पास करें. इससे, मीडिएशन वाले विज्ञापन नेटवर्क के साथ एक जैसा अनुभव मिलता रहेगा.

AdMob मीडिएशन में इस्तेमाल की जाने वाली बैनर विज्ञापन यूनिट के लिए, तीसरे पक्ष के सभी विज्ञापन स्रोत यूज़र इंटरफ़ेस (यूआई) में रीफ़्रेश करने की सुविधा बंद करना न भूलें. इससे, विज्ञापन दो बार रीफ़्रेश होने से बचता है. ऐसा इसलिए होता है, क्योंकि AdMob आपकी बैनर विज्ञापन यूनिट के रीफ़्रेश रेट के आधार पर भी रीफ़्रेश को ट्रिगर करता है.

AdMob मीडिएशन की सुविधा के साथ नेटिव विज्ञापनों का इस्तेमाल करना

AdMob मीडिएशन में नेटिव विज्ञापन लागू करते समय, इन सबसे सही तरीकों का ध्यान रखें.

नेटिव विज्ञापन दिखाने से जुड़ी नीति
हर विज्ञापन नेटवर्क की अपनी नीतियां होती हैं. मीडिएशन का इस्तेमाल करते समय, यह याद रखना ज़रूरी है कि आपके ऐप्लिकेशन को अब भी उस मीडिएटेड नेटवर्क की नीतियों का पालन करना होगा जिसने विज्ञापन दिया है.
loadAds() के बजाय loadAd() का इस्तेमाल करें
loadAds() तरीका सिर्फ़ Google के विज्ञापन दिखाता है. मीडिएट किए गए विज्ञापनों के लिए, इसके बजाय loadAd() का इस्तेमाल करें.

अमेरिका के निजता कानून और जीडीपीआर

अगर आपको अमेरिका के निजता कानूनों या सामान्य डेटा से जुड़े सुरक्षा कानून (जीडीपीआर) का पालन करना है, तो अपने मीडिएशन पार्टनर को AdMob की निजता और मैसेज सेवा के अमेरिका के राज्यों या जीडीपीआर विज्ञापन पार्टनर की सूची में जोड़ने के लिए, अमेरिका के कानूनों के पालन की सेटिंग या जीडीपीआर सेटिंग में दिए गए निर्देशों का पालन करें. ऐसा न करने पर, पार्टनर आपके ऐप्लिकेशन पर विज्ञापन नहीं दिखा पाएंगे.

Google User Messaging Platform (UMP) SDK टूल की मदद से, सीमित डेटा प्रोसेसिंग (आरडीपी) को चालू करने और जीडीपीआर की सहमति पाने के बारे में ज़्यादा जानें.