इस गाइड में, आपको अपने Android ऐप्लिकेशन में मीडिएशन अडैप्टर इंटिग्रेट करने का तरीका बताया गया है.
ज़रूरी शर्तें
किसी विज्ञापन फ़ॉर्मैट के लिए मीडिएशन इंटिग्रेट करने से पहले, आपको उस विज्ञापन फ़ॉर्मैट को अपने ऐप्लिकेशन में इंटिग्रेट करना होगा:
- बैनर विज्ञापन
- इंटरस्टीशियल विज्ञापन
- नेटिव विज्ञापन
- इनाम वाले विज्ञापन
- इनाम वाले इंटरस्टीशियल विज्ञापन
क्या आपने पहले कभी मीडिएशन का इस्तेमाल नहीं किया है? मीडिएशन के बारे में जानकारी पढ़ें.
बिडिंग के लिए: Google Mobile Ads SDK 18.3.0 या इसके बाद का वर्शन.
Google Mobile Ads SDK को शुरू करना
आसानी से शुरू करने की गाइड में, को शुरू करने का तरीका बताया गया है Google Mobile Ads SDK. शुरू करने के लिए किए जाने वाले कॉल के दौरान, मीडिएशन अडैप्टर भी शुरू हो जाते हैं. विज्ञापन लोड करने से पहले, शुरू करने की प्रक्रिया पूरी होने का इंतज़ार करना ज़रूरी है. इससे यह पक्का किया जा सकता है कि विज्ञापन दिखाने के पहले अनुरोध पर, हर विज्ञापन नेटवर्क से विज्ञापन दिखाए जा सकें.
यहां दिए गए सैंपल कोड में, विज्ञापन दिखाने का अनुरोध करने से पहले, हर अडैप्टर के शुरू होने का स्टेटस देखने का तरीका बताया गया है.
Java
public void initialize(Context context) {
new Thread(
() ->
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, this::logAdapterStatus))
.start();
}
private void logAdapterStatus(InitializationStatus initializationStatus) {
// Check each adapter's initialization status.
Map<String, AdapterStatus> statusMap = initializationStatus.getAdapterStatusMap();
for (Map.Entry<String, AdapterStatus> entry : statusMap.entrySet()) {
String adapterClass = entry.getKey();
AdapterStatus status = entry.getValue();
Log.d(
TAG,
String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status.getDescription(), status.getLatency()));
}
}
Kotlin
fun initialize(context: Context) {
CoroutineScope(Dispatchers.IO).launch {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, ::logAdapterStatus)
}
}
private fun logAdapterStatus(initializationStatus: InitializationStatus) {
// Check each adapter's initialization status.
for ((adapterClass, status) in initializationStatus.adapterStatusMap) {
Log.d(
TAG,
"Adapter: $adapterClass, Status: ${status.description}, Latency: ${status.latency}ms",
)
}
}
यह देखना कि किस विज्ञापन नेटवर्क अडैप्टर क्लास ने विज्ञापन लोड किया है
यहां बैनर विज्ञापन के लिए, विज्ञापन नेटवर्क क्लास का नाम लॉग करने वाला सैंपल कोड दिया गया है:
Java
ResponseInfo responseInfo = ad.getResponseInfo();
String adapterClassName = null;
if (responseInfo != null) {
adapterClassName = responseInfo.getMediationAdapterClassName();
}
Log.d(TAG, "Adapter class name: " + adapterClassName);
Kotlin
Log.d(TAG, "Adapter class name:" + ad.responseInfo?.mediationAdapterClassName)
इस तरीके के बारे में ज़्यादा जानने के लिए, getMediationAdapterClassName() के बारे में ResponseInfo का दस्तावेज़ देखें.
विज्ञापन ऑब्जेक्ट को किसी गतिविधि के इंस्टेंस से शुरू करना
नए विज्ञापन ऑब्जेक्ट (उदाहरण के लिए,
AdManagerAdView) के कंस्ट्रक्टर में,
आपको
Contextटाइप का कोई ऑब्जेक्ट पास करना होगा.
मीडिएशन का इस्तेमाल करते समय, यह Context अन्य विज्ञापन नेटवर्क को पास किया जाता है. कुछ
विज्ञापन नेटवर्क के लिए, ज़्यादा पाबंदी वाला Context ज़रूरी होता है. यह टाइप
Activity
का होता है और वे Activity इंस्टेंस के बिना विज्ञापन नहीं दिखा पाते हैं. इसलिए, हमारा सुझाव है कि मीडिएट किए गए विज्ञापन नेटवर्क के साथ एक जैसा अनुभव पक्का करने के लिए, विज्ञापन ऑब्जेक्ट शुरू करते समय Activity इंस्टेंस पास करें.
मीडिएशन के साथ बैनर विज्ञापनों का इस्तेमाल करना
पक्का करें कि मीडिएशन में इस्तेमाल की जाने वाली बैनर विज्ञापन यूनिट के लिए, तीसरे पक्ष के सभी विज्ञापन सोर्स यूज़र इंटरफ़ेस (यूआई) में रीफ़्रेश की सुविधा बंद हो. इससे दो बार रीफ़्रेश होने की समस्या से बचा जा सकता है, क्योंकि Ad Manager भी आपकी बैनर विज्ञापन यूनिट की रीफ़्रेश दर के हिसाब से रीफ़्रेश ट्रिगर करता है.
मीडिएशन के साथ नेटिव विज्ञापनों का इस्तेमाल करना
नेटिव मीडिएशन लागू करते समय, यहां दिए गए सबसे सही तरीकों को ध्यान में रखें.
- नेटिव विज्ञापन दिखाने की नीति
- हर विज्ञापन नेटवर्क की अपनी नीतियां होती हैं. मीडिएशन का इस्तेमाल करते समय, यह याद रखना ज़रूरी है कि आपके ऐप्लिकेशन को अब भी मीडिएट किए गए उस नेटवर्क की नीतियों का पालन करना होगा जिसने विज्ञापन दिखाया है.
loadAds()के बजायloadAd()का इस्तेमाल करनाloadAds()तरीका सिर्फ़ Google के विज्ञापन दिखाता है. मीडिएट किए गए विज्ञापनों के लिए, इसके बजायloadAd()का इस्तेमाल करें.
अमेरिका के राज्यों के निजता कानून और जीडीपीआर
अगर आपको अमेरिका के राज्यों के निजता कानूनों या सामान्य डेटा से जुड़े सुरक्षा कानून (जनरल डेटा प्रोटेक्शन रेगुलेशन) का पालन करना है, तो अमेरिका के राज्यों के कानून की सेटिंग या जीडीपीआर की सेटिंग में दिए गए चरणों को फ़ॉलो करें. इससे, Ad Manager में निजता और मैसेज सेवा के अमेरिका के राज्यों या जीडीपीआर के विज्ञापन पार्टनर की सूची में, अपने मीडिएशन पार्टनर जोड़े जा सकेंगे. ऐसा न करने पर, पार्टनर आपके ऐप्लिकेशन पर विज्ञापन नहीं दिखा पाएंगे.
सीमित डेटा प्रोसेसिंग (आरडीपी) की सुविधा चालू करने और Google User Messaging Platform (UMP) SDK की मदद से जीडीपीआर के तहत सहमति पाने के बारे में ज़्यादा जानें.