En cas d'échec de chargement d'une annonce, une méthode déléguée de rappel est appelé, ce qui fournit un objet LoadAdError
.
Pour an AdView
, l'élément suivant est appelé :
Java
public void onAdFailedToLoad(LoadAdError adError);
Kotlin
fun onAdFailedToLoad(error: LoadAdError)
Voici un extrait de code qui illustre les informations disponibles lorsqu'une annonce ne parvient pas à se charger :
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())
}
Ces informations peuvent être utilisées pour déterminer plus précisément la cause de l'échec de la diffusion de l'annonce.
En particulier, pour les erreurs liées au domaine
MobileAds.ERROR_DOMAIN
, le message en particulier dans cet article du Centre d'aide pour obtenir une explication plus détaillée et les actions possibles pour résoudre le problème.
Déboguer les messages de journalisation d'erreur courants
Dans la version 23.5.0 du SDK Google Mobile Ads, la journalisation détaillée a été améliorée pour inclure une trace de la pile à l'emplacement où l'annonce ne parvient pas à se charger. Ces messages n'indiquent pas un plantage, mais identifient la source unique de l'erreur. Le tableau suivant fournit des journaux d'erreur courants, des descriptions et des actions suggérées pour les résoudre :
Journal des erreurs | Description | Action(s) suggérée(s) |
---|---|---|
com.google.android.gms.ads.nonagon.render.cp: * |
L'ad server n'a renvoyé aucune annonce ni aucune source d'annonces de médiation à demander. | Pour en savoir plus sur les problèmes d'intégration courants de ce type, consultez Résoudre les problèmes d'intégration courants. |
com.google.android.gms.ads.nonagon.render.e: * |
Échec du chargement de toutes les sources d'annonces de la cascade de médiation. L'erreur spécifique représente la dernière source d'annonces ayant échoué. | Pour en savoir plus sur la journalisation du motif d'échec de chaque source d'annonce de médiation, consultez la section Informations sur la réponse. |
com.google.android.gms.ads.internal.util.*: Unable to obtain a JavascriptEngine. |
La requête d'annonce a échoué, car WebView n'est pas autorisé dans les processus privilégiés. |
|
La requête d'annonce a échoué en raison d'une connexion réseau lente. | Essayez d'améliorer votre connexion Internet, puis réessayez. | |
com.google.android.gms.ads.nonagon.load.a |
La demande d'annonce a expiré. | |
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 |
La demande d'annonce a échoué en raison de la connectivité réseau. | |
com.google.android.gms.ads.internal.util.*: Error building
request URL: Cannot determine request type. Is your ad unit id correct? |
L'ID du bloc d'annonces ne correspond pas à une expression régulière attendue. | Vérifiez que l'ID de votre bloc d'annonces est correct. |
com.google.android.gms.ads.internal.render.bt: Unable to
instantiate mediation adapter class. |
Le SDK Google Mobile Ads ne parvient pas à trouver l'adaptateur de médiation. |
|