शुरू करें

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

ज़रूरी बातें

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

क्या मीडिएशन आपके लिए नया है? AdMob मीडिएशन (अलग-अलग नेटवर्क से विज्ञापन दिखाना) की खास जानकारी पढ़ें.

बोली लगाने के लिए: Google मोबाइल विज्ञापन SDK टूल 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)
}

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

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

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

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

इनाम वाले विज्ञापनों का मीडिएशन

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

AdMob यूज़र इंटरफ़ेस (यूआई) में इनाम की वैल्यू सेट करने के बारे में ज़्यादा जानने के लिए, इनाम वाली विज्ञापन यूनिट बनाएं देखें.

नेटिव विज्ञापन की मीडिएशन

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

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

सीसीपीए और जीडीपीआर

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

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