Gdy nie uda się wczytać reklamy, wywoływana jest metoda przekazywania
, który udostępnia obiekt LoadAdError
.
W przypadku an AdManagerAdView
jest to:
Java
public void onAdFailedToLoad(LoadAdError adError);
Kotlin
fun onAdFailedToLoad(error: LoadAdError)
Oto fragment kodu, który ilustruje informacje dostępne, gdy reklama nie wczytuje się:
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.
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.
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())
}
Te informacje mogą posłużyć do dokładniejszego określenia przyczyny niepowodzenia wczytywania reklamy.
Debugowanie typowych komunikatów logowania błędów
W wersji 23.5.0 pakietu SDK do reklam mobilnych Google rozbudowano szczegółowe rejestrowanie, aby uwzględnić ślad stosu, który wskazuje, gdzie nie udało się załadować reklamy. Te komunikaty nie wskazują awarii, ale wskazują unikalne źródło błędu. W tabeli poniżej znajdziesz typowe dzienniki błędów, ich opisy i sugerowane działania:
Dziennik błędów | Opis | Sugerowane działania |
---|---|---|
com.google.android.gms.ads.nonagon.render.cp: * |
Serwer reklam nie zwrócił na żądanie reklamy ani żadnego źródła reklam z zapośredniczeniem. | Szczegółowe informacje o rozwiązywaniu problemów z brakiem wypełnień znajdziesz w artykule Rozwiązywanie problemów z niewypełnionymi wyświetleniami. |
com.google.android.gms.ads.nonagon.render.e: * |
Nie udało się załadować wszystkich źródeł reklam w kaskadzie zapośredniczenia. Ten konkretny błąd dotyczy ostatniego źródła reklamy, które nie działało prawidłowo. | Szczegółowe informacje o rejestrowaniu przyczyny niepowodzenia poszczególnych źródeł reklam z pośrednictwem znajdziesz w artykule Informacje o odpowiedzi. |
com.google.android.gms.ads.internal.util.*: Unable to obtain a JavascriptEngine. |
Żądanie reklamy nie zostało zrealizowane, ponieważ WebView nie jest dozwolone w procesach uprzywilejowanych. |
|
Żądanie reklamy nie zostało zrealizowane z powodu wolnego połączenia z internetem. | Popraw jakość połączenia z internetem i spróbuj ponownie. | |
com.google.android.gms.ads.nonagon.load.a |
Upłynął limit czasu żądania reklamy. | |
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 |
Nie udało się zrealizować żądania reklamy z powodu połączenia sieciowego. | |
com.google.android.gms.ads.internal.util.*: Error building
request URL: Cannot determine request type. Is your ad unit id correct? |
Identyfikator jednostki reklamowej nie pasuje do oczekiwanego wyrażenia regularnego. | Sprawdź, czy identyfikator jednostki reklamowej jest prawidłowy. |
com.google.android.gms.ads.internal.render.bt: Unable to
instantiate mediation adapter class. |
Pakiet SDK do reklam mobilnych Google nie może znaleźć adaptera zapośredniczenia. |
|