Ошибки загрузки объявлений

Если объявление не загружается, вызывается обратный вызов, который предоставляет объект 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())
}

Java

@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, ее описание можно найти в статье об устранении распространенных проблем с регистрацией. В ней также приведены возможные действия по устранению ошибки.

Как устранять распространенные ошибки в журналах

В версии 23.5.0 SDK 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 отклонили запрос. Повторите попытку позже. Если проблема воспроизводится постоянно, получите URL запроса с помощью инспектора объявлений и обратитесь в службу поддержки.