خطاهای بار کردن آگهی

در مواردی که آگهی بار نمی‌شود، یک تابع برگشتی فراخوانی می‌شود که یک شیء LoadAdError را ارائه می‌دهد.

برای AdView، موارد زیر فراخوانده می‌شود:

مثال زیر اطلاعاتی را نشان می‌دهد که وقتی آگهی بار نمی‌شود دردسترس است:

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/admob/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
  // 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())
}

جاوا

@Override
public void onAdFailedToLoad(@NonNull LoadAdError adError) {
  // Gets the domain from which the error came.
  String errorDomain = adError.getDomain();
  // Gets the error code. See
  // https://developers.google.com/admob/android/reference/com/google/android/gms/ads/AdRequest#constant-summary
  // for a list of possible codes.
  int errorCode = adError.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 = adError.getMessage();
  // Gets additional response information about the request. See
  // https://developers.google.com/admob/android/response-info
  // information.
  ResponseInfo responseInfo = adError.getResponseInfo();
  // Gets the cause of the error, if available.
  AdError cause = adError.getCause();
  // All of this information is available using the error's toString() method.
  Log.d("Ads", adError.toString());
}
برای خطاهای مربوط به دامنه MobileAds.ERROR_DOMAIN، پیام را می‌توانید در مقاله «حل مشکلات رایج آماده‌سازی» برای توضیحات دقیق‌تر و اقدامات احتمالی که می‌توانید برای حل مشکل انجام دهید جستجو کنید.

اشکال‌زدایی پیام‌های گزارش خطای رایج

در نسخه ۲۳.۵.۰ از Google Mobile Ads SDK (Legacy)، گزارش‌گیری مفصل بهبود یافت تا شامل ردیابی پشته‌ای از مکان بار نشدن آگهی شود. این پیام‌ها نشان‌دهنده خرابی نیستند، بلکه منبع منحصربه‌فرد خطا را شناسایی می‌کنند. جدول زیر گزارش‌های خطای رایج، توضیحات، و اقدامات پیشنهادی برای رفع مشکل را ارائه می‌دهد:

گزارش خطا شرح کنش(های) پیشنهادی
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 (Legacy) نمی‌تواند تطبیق‌دهنده واسطه‌گری را پیدا کند.
  • بااستفاده از مشاهده آداپتورهای دسترسی‌پذیر در بازرس آگهی، آداپتورهایی را که Google Mobile Ads SDK (Legacy) نمی‌تواند پیدا کند تشخیص دهید.
  • آداپتورهای جاافتاده را به پروژه‌تان اضافه کنید. برای خواندن دستورالعمل‌های نحوه تکمیل این مرحله برای هر منبع آگهی، جزئیات شبکه را ببینید.
com.google.android.gms.internal.ads.*: Received error HTTP response code: 403 سرورهای AdMob درخواست را رد کردند. بعداً دوباره امتحان کنید. اگر به‌طور مداوم قابل‌تولید مجدد است، نشانی وب درخواست را بااستفاده از بازرس آگهی ضبط کنید و با پشتیبانی تماس بگیرید.