Les objets AdResult
fournissent un mécanisme permettant de détecter les tentatives de chargement d'une annonce infructueuses.
En cas d'échec, la méthode is_successful()
de AdResult
renvoie la valeur "false".
Dans ces situations, l'appel de la méthode AdResult
ad_error()
renvoie un objet AdError
contenant des informations sur l'erreur.
Voici un extrait de code qui illustre les informations disponibles lorsqu'une annonce ne parvient pas à se charger:
firebase::Future<firebase::gma::AdResult> load_ad_future =
ad_view->LoadAd(request);
// In a game loop, monitor the load ad status
if (load_ad_future.status() == firebase::kFutureStatusComplete) {
const firebase::gma::AdResult* ad_result = load_ad_future.result();
if (!ad_result.is_successful()) {
// There was an error loading the ad.
const AdError& ad_error = ad_result.ad_error();
firebase::gma::AdErrorCode code = ad_error.code();
std::string domain = ad_error.domain();
std::string message = ad_error.message();
const firebase::gma::ResponseInfo response_info = ad_error.response_info();
printf("Received error with domain: %s, code: %d, message: %s and response info: %s\n”,
domain.c_str(), message.c_str(), response_info.ToString().c_str());
}
}
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 du domaine com.google.admob
sur iOS et com.google.android.gms.ads
sur Android, vous pouvez consulter cet article du Centre d'aide pour obtenir une explication plus détaillée et connaître les mesures à prendre pour résoudre le problème.