Per scopi di debug e logging, gli annunci caricati correttamente forniscono un oggetto GADResponseInfo. Questo oggetto contiene informazioni sull'annuncio caricato, oltre a informazioni sulla cascata della mediazione utilizzata per caricare l'annuncio.
Se un annuncio viene caricato correttamente, l'oggetto dell'annuncio ha una proprietà GADResponseInfo. Ad esempio,
GADInterstitialAd.responseInfo
recupera le informazioni sulla risposta per un annuncio interstitial caricato.
Nei casi in cui gli annunci non vengono caricati ed è disponibile solo un errore,
GADResponseInfo è disponibile utilizzando la chiave GADErrorUserInfoKeyResponseInfo
nel dizionario userInfo dell'errore.
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", request: request ) { (ad, error) in if let error = error { let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? ResponseInfo print("\(String(describing: responseInfo))") return } let responseInfo = ad?.responseInfo print("\(String(describing: responseInfo))") } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { if (error) { GADResponseInfo *responseInfo = error.userInfo[GADErrorUserInfoKeyResponseInfo]; NSLog(@"%@", responseInfo.description); return; } GADResponseInfo *responseInfo = ad.responseInfo; NSLog(@"%@", responseInfo.description); }]; }
Informazioni sulla risposta
Ecco un esempio di output che mostra i dati di debug restituiti per un annuncio caricato:
** Response Info **
Response ID: BmnCZaSbE_6Mur8P5su8gAY
Network: GADMAdapterGoogleAdMobAds
** Loaded Adapter Response **
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
** Extras Dictionary **
{
"creative_id" = "138471856178";
"line_item_id" = "6707237225";
}
** Mediation line items **
Entry (1)
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
Le proprietà su GADResponseInfo includono:
| Proprietà | Descrizione |
|---|---|
adNetworkInfoArray |
Restituisce l'elenco di GADAdNetworkResponseInfo
contenente i metadati per ogni adattatore incluso nella risposta all'annuncio. Può essere utilizzato per eseguire il debug della mediazione a cascata e dell'esecuzione dell'asta. L'ordine dell'elenco corrisponde all'ordine della cascata della mediazione per questa richiesta di annuncio.
Per saperne di più, consulta Informazioni sulla risposta dell'adattatore. |
loadedAdNetworkResponseInfo |
Restituisce il valore GADAdNetworkResponseInfo corrispondente all'adattatore
che ha caricato l'annuncio. |
adNetworkClassName |
Restituisce il nome della classe dell'adattatore di mediazione della rete pubblicitaria che ha caricato l'annuncio. |
responseIdentifier |
L'identificatore della risposta è un identificatore univoco della risposta all'annuncio. Questo identificatore può essere utilizzato per identificare e bloccare l'annuncio nel Centro revisione annunci (ARC). |
extrasDictionary |
Restituisce informazioni aggiuntive sulla risposta dell'annuncio. Gli extra possono restituire le seguenti chiavi:
|
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let responseIdentifier = responseInfo?.responseIdentifier let adNetworkClassName = responseInfo?.adNetworkClassName let adNetworkInfoArray = responseInfo?.adNetworkInfoArray let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let creativeID = responseInfo?.extrasDictionary["creative_id"] let lineItemID = responseInfo?.extrasDictionary["line_item_id"] } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; NSString *responseIdentifier = responseInfo.responseIdentifier; NSString *adNetworkClassName = responseInfo.adNetworkClassName; NSArray *adNetworkInfoArray = responseInfo.adNetworkInfoArray; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSString *creativeID = responseInfo.extrasDictionary[@"creative_id"]; NSString *lineItemID = responseInfo.extrasDictionary[@"line_item_id"]; }]; }
Informazioni sulla risposta dell'adattatore
GADAdNetworkResponseInfo
contiene i metadati di ogni adattatore incluso nella risposta all'annuncio che possono essere utilizzati
per eseguire il debug della mediazione a cascata e dell'esecuzione delle offerte. L'ordine dell'elenco corrisponde all'ordine della cascata della mediazione per la richiesta di annuncio.
Ecco un esempio di output di GADAdNetworkResponseInfo:
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
Per ogni rete pubblicitaria, GADAdNetworkResponseInfo fornisce le seguenti
proprietà:
| Proprietà | Descrizione |
|---|---|
error |
L'errore associato alla richiesta alla rete. Restituisce nil se la rete ha caricato correttamente un annuncio o se non è stato effettuato alcun tentativo di caricamento. |
adSourceId |
L'ID origine annuncio associato a questa risposta dell'adattatore. |
adSourceInstanceId |
L'ID istanza dell'origine annuncio associato a questa risposta dell'adattatore. |
adSourceInstanceName |
Il nome dell'istanza dell'origine annuncio associata a questa risposta dell'adattatore. Restituisce una stringa vuota se non viene compilato da un gruppo di rendimento. |
adSourceName |
L'origine annuncio che rappresenta la rete pubblicitaria specifica che pubblica l'impressione. |
adNetworkClassName |
Il nome della classe dell'adattatore della rete pubblicitaria che ha caricato l'annuncio. |
adUnitMapping |
La configurazione della rete impostata dalla UI di Ad Manager. |
latency |
Il tempo impiegato dalla rete pubblicitaria per caricare un annuncio. Restituisce
0 se non è stato effettuato alcun tentativo di connessione alla rete. |
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let adNetworkError = loadedAdNetworkResponseInfo?.error let adSourceId = loadedAdNetworkResponseInfo?.adSourceID let adSourceInstanceId = loadedAdNetworkResponseInfo?.adSourceInstanceID let adSourceInstanceName = loadedAdNetworkResponseInfo?.adSourceInstanceName let adSourceName = loadedAdNetworkResponseInfo?.adSourceName let adNetworkClassName = loadedAdNetworkResponseInfo?.adNetworkClassName let adUnitMapping = loadedAdNetworkResponseInfo?.adUnitMapping let latency = loadedAdNetworkResponseInfo?.latency } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSError *adNetworkError = loadedAdNetworkResponseInfo.error; NSString *adSourceId = loadedAdNetworkResponseInfo.adSourceID; NSString *adSourceInstanceId = loadedAdNetworkResponseInfo.adSourceInstanceID; NSString *adSourceInstanceName = loadedAdNetworkResponseInfo.adSourceInstanceName; NSString *adSourceName = loadedAdNetworkResponseInfo.adSourceName; NSString *adNetworkClassName = loadedAdNetworkResponseInfo.adNetworkClassName; NSDictionary*adUnitMapping = loadedAdNetworkResponseInfo.adUnitMapping; NSTimeInterval latency = loadedAdNetworkResponseInfo.latency; }]; }