광고 로드 오류

광고를 로드하지 못하면 LoadAdError객체를 제공하는 콜백 호출됩니다.

an AdView의 경우 다음이 호출됩니다.

다음은 광고를 로드하지 못했을 때 제공될 수 있는 정보를 보여주는 코드 스니펫입니다.

자바

@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 모바일 광고 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? 광고 단위 ID가 예상 정규 표현식과 일치하지 않습니다. 광고 단위 ID가 올바른지 확인합니다.
com.google.android.gms.ads.internal.render.bt: Unable to instantiate mediation adapter class. Google 모바일 광고 SDK에서 미디에이션 어댑터를 찾을 수 없습니다.
  • 광고 검사기에서 사용 가능한 어댑터 보기를 사용하여 Google 모바일 광고 SDK에서 찾을 수 없는 어댑터를 진단합니다.
  • 누락된 어댑터를 프로젝트에 추가합니다. 각 광고 소스에 대해 이 단계를 완료하는 방법에 관한 안내는 네트워크 세부정보를 참고하세요.
com.google.android.gms.internal.ads.*: Received error HTTP response code: 403 AdMob 서버에서 요청을 거부했습니다. 나중에 다시 시도해 주세요. 일관되게 재현할 수 있는 경우 광고 검사기를 사용하여 요청 URL을 캡처하고 지원팀에 문의하세요.