विज्ञापन लोड करने से जुड़ी गड़बड़ियां

अगर कोई विज्ञापन लोड नहीं होता है, तो कॉलबैक LoadAdErrorऑब्जेक्ट उपलब्ध कराता है.

an AdViewके लिए, इसे कहा जाता है:

यहां एक कोड स्निपेट दिया गया है, जिसमें विज्ञापन लोड न होने पर उपलब्ध जानकारी के बारे में बताया गया है:

Java

@Override
public void onAdFailedToLoad(LoadAdError error) {
  // Gets the domain from which the error came.
  String errorDomain = error.getDomain();
  // Gets the error code. See
  // https://developers.google.com/android/reference/com/google/android/gms/ads/AdRequest#constant-summary
  // for a list of possible codes.
  int errorCode = error.getCode();
  // Gets an error message.
  // For example "Account not approved yet". See
  // https://support.google.com/admob/answer/9905175 for explanations of
  // common errors.
  String errorMessage = error.getMessage();
  // Gets additional response information about the request. See
  // https://developers.google.com/admob/android/response-info for more
  // information.
  ResponseInfo responseInfo = error.getResponseInfo();
  // Gets the cause of the error, if available.
  AdError cause = error.getCause();
  // All of this information is available using the error's toString() method.
  Log.d("Ads", error.toString());
}

Kotlin

override fun onAdFailedToLoad(error: LoadAdError) {
  // Gets the domain from which the error came.
  val errorDomain = error.domain
  // Gets the error code. See
  // https://developers.google.com/android/reference/com/google/android/gms/ads/AdRequest#constant-summary
  // for a list of possible codes.
  val errorCode = error.code
  // Gets an error message.
  // For example "Account not approved yet". See
  // https://support.google.com/admob/answer/9905175 for explanations of
  // common errors.
  val errorMessage = error.message
  // Gets additional response information about the request. See
  // https://developers.google.com/admob/android/response-info for more
  // information.
  val responseInfo = error.responseInfo
  // Gets the cause of the error, if available.
  val cause = error.cause
  // All of this information is available using the error's toString() method.
  Log.d("Ads", error.toString())
}

इस जानकारी का इस्तेमाल करके, यह सटीक तरीके से पता लगाया जा सकता है कि विज्ञापन लोड न होने की वजह क्या थी. खास तौर पर, डोमेन के तहत आने वाली गड़बड़ियों के लिए, MobileAds.ERROR_DOMAIN, मैसेज के लिए, सहायता केंद्र के इस लेख में ज़्यादा जानकारी देखी जा सकती है. साथ ही, समस्या को हल करने के लिए की जा सकने वाली कार्रवाइयों के बारे में भी जानकारी मिल सकती है.

गड़बड़ी की जानकारी देने वाले आम मैसेज को डीबग करना

Google Mobile Ads SDK के 23.5.0 वर्शन में, ज़्यादा जानकारी वाली लॉगिंग को बेहतर बनाया गया है, ताकि विज्ञापन लोड न होने की जगह का स्टैक ट्रेस शामिल किया जा सके. इन मैसेज से, ऐप्लिकेशन के क्रैश होने का पता नहीं चलता. हालांकि, इनसे गड़बड़ी के यूनीक सोर्स की पहचान की जा सकती है. यहां दी गई टेबल में, गड़बड़ी के सामान्य लॉग, जानकारी, और उन्हें ठीक करने के लिए सुझाई गई कार्रवाइयां दी गई हैं:

गड़बड़ी का लॉग ब्यौरा सुझाई गई कार्रवाई
com.google.android.gms.ads.nonagon.render.cp: * विज्ञापन सर्वर ने अनुरोध करने के लिए, कोई विज्ञापन या मीडिएशन विज्ञापन स्रोत नहीं दिखाया. शामिल होने से जुड़ी इस तरह की सामान्य समस्याओं के बारे में जानने के लिए, शामिल होने से जुड़ी सामान्य समस्याओं को हल करना लेख पढ़ें.
com.google.android.gms.ads.nonagon.render.e: * मीडिएशन वॉटरफ़ॉल में मौजूद सभी विज्ञापन स्रोत लोड नहीं हो पाए. गड़बड़ी की जानकारी देने वाली टेक्स्ट लाइन में, आखिरी विज्ञापन सोर्स के बारे में बताया जाता है. हर मीडिएशन विज्ञापन स्रोत के काम न करने की वजह को लॉग करने के बारे में जानकारी पाने के लिए, रिस्पॉन्स की जानकारी देखें.
com.google.android.gms.ads.internal.util.*: Unable to obtain a JavascriptEngine. विज्ञापन का अनुरोध पूरा नहीं हो सका, क्योंकि WebView को विशेष प्रोसेस में अनुमति नहीं है.
  • इंटरनेट सेटिंग की जांच करें.
  • android:sharedUserId="android.uid.system" को हटाएं और ऐप्लिकेशन को सिस्टम ऐप्लिकेशन के तौर पर इंस्टॉल करें.
नेटवर्क कनेक्शन की स्पीड धीमी होने की वजह से, विज्ञापन का अनुरोध पूरा नहीं हो सका. अपने इंटरनेट कनेक्शन को बेहतर बनाएं और फिर से कोशिश करें.
com.google.android.gms.ads.nonagon.load.a विज्ञापन के अनुरोध का समय खत्म हो गया.
com.google.android.gms.ads.internal.util.*: Error while connecting to ad server: Unable to resolve host "pubads.g.doubleclick.net": No address associated with hostname नेटवर्क कनेक्शन की वजह से, विज्ञापन का अनुरोध पूरा नहीं हो सका.
com.google.android.gms.ads.internal.util.*: Error building request URL: Cannot determine request type. Is your ad unit id correct? विज्ञापन यूनिट आईडी, उम्मीद के मुताबिक रेगुलर एक्सप्रेशन से मेल नहीं खाता. देखें कि आपका विज्ञापन यूनिट आईडी सही है या नहीं.
com.google.android.gms.ads.internal.render.bt: Unable to instantiate mediation adapter class. Google Mobile Ads SDK को मीडिएशन अडैप्टर नहीं मिल रहा है.
  • विज्ञापन जांचने वाले टूल में, उपलब्ध एडेप्टर देखें का इस्तेमाल करके पता लगाएं कि Google Mobile Ads SDK टूल को कौनसे एडेप्टर नहीं मिल रहे हैं.
  • अपने प्रोजेक्ट में वे अडैप्टर जोड़ें जो मौजूद नहीं हैं. हर विज्ञापन स्रोत के लिए, यह चरण पूरा करने का तरीका जानने के लिए, नेटवर्क की जानकारी देखें.
com.google.android.gms.internal.ads.*: Received error HTTP response code: 403 AdMob सर्वर ने अनुरोध अस्वीकार कर दिया है. कुछ देर बाद कोशिश करें. अगर समस्या बार-बार आ रही है, तो विज्ञापन जांचने वाले टूल का इस्तेमाल करके अनुरोध यूआरएल कैप्चर करें और सहायता टीम से संपर्क करें.