Zu Debugging- und Logging-Zwecken 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 das Attribut GADResponseInfo. Beispiel:
GADInterstitialAd.responseInfo
ruft die Antwortinformationen für eine geladene Interstitial-Anzeige ab.
Wenn 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); }]; }
Informationen zur Antwort
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
Zu den Attributen von GADResponseInfo gehören:
| Attribut | Beschreibung |
|---|---|
adNetworkInfoArray |
Gibt die Liste der GADAdNetworkResponseInfo-Objekte mit Metadaten für jeden Adapter zurück, der in der Anzeigenantwort enthalten ist. Kann zur Fehlerbehebung bei der abfolgebasierten Vermittlung und der Gebotsausführung verwendet werden. Die Reihenfolge der Liste entspricht der Reihenfolge der Vermittlungsabfolge für diese Anzeigenanfrage.
Weitere Informationen finden Sie unter Adapter Response Info. |
loadedAdNetworkResponseInfo |
Gibt den GADAdNetworkResponseInfo zurück, der dem Adapter entspricht, über den die Anzeige geladen wurde. |
adNetworkClassName |
Gibt den Klassennamen des Vermittlungsadapters des Werbenetzwerks zurück, über das die Anzeige geladen wurde. |
responseIdentifier |
Die Antwortkennung 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. Extras können die folgenden Schlüssel zurückgeben:
|
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 Gebotsausführung verwendet werden können. Die Reihenfolge der Liste entspricht der Reihenfolge der Vermittlungsabfolge für die Anzeigenanfrage.
Hier sehen Sie eine Beispielausgabe für 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
Für jedes Werbenetzwerk stellt GADAdNetworkResponseInfo die folgenden Attribute bereit:
| Attribut | Beschreibung |
|---|---|
error |
Der Fehler, der mit der Anfrage an das Netzwerk verbunden ist. Gibt nil zurück, wenn das Netzwerk eine Anzeige geladen hat oder wenn das Netzwerk nicht verwendet wurde. |
adSourceId |
Die Anzeigenquellen-ID, die dieser Adapterantwort zugeordnet 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 die Anzeige nicht von einer Ertragsgruppe gefüllt wird. |
adSourceName |
Die Anzeigenquelle, die das spezifische Werbenetzwerk darstellt, über das die Impression ausgeliefert wird. |
adNetworkClassName |
Der Klassenname des Werbenetzwerkadapters, über den die Anzeige geladen wurde. |
adUnitMapping |
Die in der Ad Manager-Benutzeroberfläche festgelegte Netzwerkkonfiguration. |
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; }]; }