Für Debugging- und Logging-Zwecke wird für erfolgreich geladene Anzeigen ein GADResponseInfo-Objekt bereitgestellt. Dieses Objekt enthält Informationen zur geladenen Anzeige sowie zur Vermittlungsabfolge, die zum Laden der Anzeige verwendet wurde.
Wenn eine Anzeige erfolgreich geladen wurde, hat das Anzeigenobjekt die Eigenschaft GADResponseInfo. Mit GADInterstitialAd.responseInfo werden beispielsweise die Antwortinformationen für eine geladene Interstitial-Anzeige abgerufen.
In Fällen, in denen Anzeigen nicht geladen werden und nur ein Fehler verfügbar ist, ist die GADResponseInfo über den Schlüssel GADErrorUserInfoKeyResponseInfo im userInfo-Dictionary des Fehlers verfügbar.
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); }]; }
Antwortinformationen
Hier sehen Sie ein Beispiel für die Debugging-Daten, die für eine geladene Anzeige zurückgegeben werden:
** 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
Die Eigenschaften für GADResponseInfo sind:
| Attribut | Beschreibung |
|---|---|
adNetworkInfoArray |
Gibt die Liste der GADAdNetworkResponseInfo zurück, die Metadaten für jeden in der Anzeigenantwort enthaltenen Adapter enthält. Kann zur Fehlerbehebung bei der abfolgebasierten Vermittlung und der Bidding-Ausführung verwendet werden. Die Reihenfolge in der Liste entspricht der Reihenfolge der Vermittlungsabfolge für diese Anzeigenanfrage.
Weitere Informationen finden Sie unter Adapter Response Info. |
loadedAdNetworkResponseInfo |
Gibt die GADAdNetworkResponseInfo zurück, die dem Adapter entspricht, der die Anzeige geladen hat. |
adNetworkClassName |
Gibt den Klassennamen des Vermittlungsadapters des Werbenetzwerks zurück, das die Anzeige geladen hat. |
responseIdentifier |
Die Antwort-ID ist eine eindeutige Kennung für die Anzeigenantwort. Mit dieser Kennung kann die Anzeige im Überprüfungszentrum für Anzeigen identifiziert und blockiert werden. |
extrasDictionary |
Gibt zusätzliche Informationen zur Anzeigenantwort zurück. Für Extras können die folgenden Schlüssel zurückgegeben werden:
|
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"]; }]; }
Informationen zur Adapterantwort
GADAdNetworkResponseInfo enthält Metadaten für jeden Adapter in der Anzeigenantwort, die zum Debuggen der abfolgebasierten Vermittlung und der Bidding-Ausführung verwendet werden können. Die Reihenfolge in der Liste entspricht der Reihenfolge der Vermittlungsabfolge für die Anzeigenanfrage.
Hier sehen Sie ein Beispiel für die GADAdNetworkResponseInfo-Ausgabe:
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
Für jedes Anzeigennetzwerk stellt GADAdNetworkResponseInfo die folgenden Eigenschaften bereit:
| Attribut | Beschreibung |
|---|---|
error |
Der Fehler, der mit der Anfrage an das Netzwerk verknüpft ist. Gibt
nil zurück, wenn das Netzwerk eine Anzeige geladen hat oder wenn das Netzwerk nicht versucht wurde. |
adSourceId |
Die Anzeigenquellen-ID, die mit dieser Adapterantwort verknüpft ist. |
adSourceInstanceId |
Die ID der Anzeigenquelleninstanz, die mit dieser Adapterantwort verknüpft ist. |
adSourceInstanceName |
Der Name der Anzeigenquelleninstanz, die dieser Adapterantwort zugeordnet ist. Gibt einen leeren String zurück, wenn das Feld nicht von einer Ertragsgruppe ausgefüllt wird. |
adSourceName |
Die Anzeigenquelle, die das spezifische Werbenetzwerk darstellt, über das die Impression ausgeliefert wird. |
adNetworkClassName |
Der Klassenname des Werbenetzwerkadapters, der die Anzeige geladen hat. |
adUnitMapping |
Die Netzwerkkonfiguration, die über die Ad Manager-Benutzeroberfläche festgelegt wurde. |
latency |
Die Zeit, die das Werbenetzwerk zum Laden einer Anzeige benötigt hat. Gibt 0 zurück, wenn das Netzwerk nicht versucht wurde. |
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; }]; }