Errori di carico degli annunci

Nei casi in cui non riesca a caricare un annuncio, viene chiamato un metodo del delegato callback che fornisce un oggetto LoadAdError.

Per an AdView, il nome seguente è:

Ecco uno snippet di codice che illustra le informazioni disponibili quando un annuncio non viene caricato:

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())
}

Queste informazioni possono essere utilizzate per determinare con maggiore precisione il motivo dell'errore di caricamento dell'annuncio. In particolare, per gli errori nel dominio MobileAds.ERROR_DOMAIN, il messaggio puoi consultare questo articolo del Centro assistenza per una spiegazione più dettagliata e le possibili azioni da intraprendere per risolvere il problema.

Eseguire il debug dei messaggi di registrazione degli errori comuni

Nella versione 23.5.0 dell'SDK Google Mobile Ads, la registrazione dettagliata è stata migliorata per includere una traccia dello stack del punto in cui non riesce a caricare l'annuncio. Questi messaggi non indicano un arresto anomalo, ma identificano piuttosto l'origine unica dell'errore. La seguente tabella fornisce log di errori comuni, descrizioni e azioni suggerite per la risoluzione:

Log degli errori Descrizione Azioni suggerite
com.google.android.gms.ads.nonagon.render.cp: * L'ad server non ha restituito un annuncio né alcuna origine annuncio per la mediazione da richiedere. Per informazioni dettagliate sui problemi comuni di questo tipo relativi alle operazioni preliminari, consulta Risolvere i problemi comuni relativi alle operazioni preliminari.
com.google.android.gms.ads.nonagon.render.e: * Non è stato possibile caricare tutte le origini annuncio nella struttura a cascata della mediazione. L'errore specifico rappresenta l'ultima origine annuncio con errore. Per maggiori dettagli sul logging dei motivi di errore di ciascuna origine annuncio per la mediazione, consulta Informazioni sulla risposta.
com.google.android.gms.ads.internal.util.*: Unable to obtain a JavascriptEngine. La richiesta di annunci non è andata a buon fine perché WebView non è consentito nelle procedure con privilegi.
  • Controlla le impostazioni di internet.
  • Rimuovi android:sharedUserId="android.uid.system" e installa l'app come app di sistema.
La richiesta di annunci non è andata a buon fine a causa di una connessione di rete lenta. Prova a migliorare la connessione a internet e riprova.
com.google.android.gms.ads.nonagon.load.a La richiesta di annuncio è scaduta.
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 richiesta di annuncio non è riuscita a causa della connettività di rete.
com.google.android.gms.ads.internal.util.*: Error building request URL: Cannot determine request type. Is your ad unit id correct? L'ID unità pubblicitaria non corrisponde a un'espressione regolare prevista. Verifica che l'ID unità pubblicitaria sia corretto.
com.google.android.gms.ads.internal.render.bt: Unable to instantiate mediation adapter class. L'SDK Google Mobile Ads non riesce a trovare l'adattatore di mediazione.
  • Identifica gli adattatori che l'SDK Google Mobile Ads non riesce a trovare utilizzando Visualizza gli adattatori disponibili nello strumento di controllo degli annunci.
  • Aggiungi gli adattatori mancanti al progetto. Per leggere le istruzioni su come completare questo passaggio per ogni origine annuncio, consulta Dettagli della rete.