Zu Debugging- und Protokollierungszwecken 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 wird, hat das Anzeigenobjekt die Eigenschaft GADResponseInfo. Mit
GADInterstitialAd.responseInfo
werden beispielsweise die Antwortinformationen für eine geladene Interstitial-Anzeige abgerufen.
Wenn Anzeigen nicht geladen werden können und nur ein Fehler verfügbar ist, ist GADResponseInfo über den Schlüssel GADErrorUserInfoKeyResponseInfo im userInfo-Wörterbuch 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 von GADResponseInfo
umfassen:
| Attribut | Beschreibung |
|---|---|
adNetworkInfoArray |
Gibt die Liste von GADAdNetworkResponseInfo
zurück, die Metadaten für jeden in der Anzeigenantwort enthaltenen Adapter enthält. Kann verwendet werden, um das Debugging der abfolgebasierte Vermittlung und der Bidding-Ausführung durchzuführen. Die Reihenfolge in
der Liste entspricht der Reihenfolge der Vermittlungsabfolge für diese Anzeigenanfrage.
|
loadedAdNetworkResponseInfo |
Gibt GADAdNetworkResponseInfo für den Adapter
zurück, 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 ID für die Anzeigenantwort. Diese ID kann verwendet werden, um die Anzeige im Überprüfungszentrum für Anzeigen zu identifizieren und zu blockieren. |
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"]; }]; }
Antwortinformationen des Adapters
GADAdNetworkResponseInfoenthält Metadaten für jeden in der Anzeigenantwort enthaltenen Adapter, die verwendet werden können, um die abfolgebasierte Vermittlung und die Bidding-Ausführung zu debuggen. Die Reihenfolge in der Liste entspricht der Reihenfolge der Vermittlungsabfolge für die Anzeigenanfrage.
Hier sehen Sie ein Beispiel für die Ausgabe von 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 Eigenschaften bereit:
| Attribut | Beschreibung |
|---|---|
error |
Der Fehler, der mit der Anfrage an das Netzwerk verbunden ist. Gibt
nil zurück, wenn das Netzwerk eine Anzeige erfolgreich geladen hat oder wenn das Netzwerk
nicht versucht wurde. |
adSourceId |
Die ID der Anzeigenquelle, die mit dieser Adapterantwort verknüpft ist. |
adSourceInstanceId |
Die ID der Anzeigenquelleninstanz, die mit dieser Adapter antwort verknüpft ist. |
adSourceInstanceName |
Der Name der Anzeigenquelleninstanz, die mit dieser Adapter antwort verknüpft ist. Gibt einen leeren String zurück, wenn er nicht von einer Ertragsgruppe ausgefüllt wurde. |
adSourceName |
Die Anzeigenquelle, die das spezifische Werbenetzwerk darstellt, das die Impression ausliefert. |
adNetworkClassName |
Der Klassenname des Werbenetzwerkadapters, der die Anzeige geladen hat. |
adUnitMapping |
Die Netzwerkkonfiguration, die in der 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; }]; }