Informationen zur Anzeigenantwort abrufen

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. Mit GADInterstitialAd.responseInfo werden beispielsweise die Antwortinformationen für eine geladene Interstitial-Anzeige abgerufen.

Wenn Anzeigen nicht geladen werden und nur ein Fehler verfügbar ist, ist die GADResponseInfo über den Schlüssel GADErrorUserInfoKeyResponseInfo im userInfo-Wörterbuch des Fehlers verfügbar.

Swift

fileprivate func loadInterstitial() {
  InterstitialAd.load(
    with: "ca-app-pub-3940256099942544/4411468910", 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:@"ca-app-pub-3940256099942544/4411468910"
   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 eine Beispielausgabe mit den Debugging-Daten, die für eine geladene Anzeige zurückgegeben werden:

  ** Response Info **
    Response ID: CLz5r-KMtfoCFQvv7QodfGAMHw
    Network: GADMAdapterGoogleAdMobAds

  ** Loaded Adapter Response **
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name:Reservation campaign
    Ad Source ID:7068401028668408324
    Ad Source Instance Name:[DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID:[DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
{
}
    Error: (null)
    Latency: 0.357

  ** Extras Dictionary **
    {
        "mediation_group_name" = Campaign;
    }

  ** Mediation line items **
    Entry (1)
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name:Reservation campaign
    Ad Source ID:7068401028668408324
    Ad Source Instance Name:[DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID:[DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
{
}
    Error: (null)
    Latency: 0.357

Zu den Attributen von GADResponseInfo gehören:

Attribut Beschreibung
adNetworkInfoArray Gibt die Liste der GADAdNetworkResponseInfo 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, der die Anzeige geladen hat.
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:
  • mediation_group_name: Der Name der Vermittlungsgruppe
  • mediation_ab_test_name: Der Name des A/B-Tests mit Vermittlungsgruppen, falls zutreffend
  • mediation_ab_test_variant: Die Variante, die im A/B-Test mit Vermittlungsgruppen verwendet wurde, falls zutreffend

Swift

fileprivate func loadInterstitial() {
  InterstitialAd.load(
    with: "ca-app-pub-3940256099942544/4411468910", 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 mediationGroupName = responseInfo?.extrasDictionary["mediation_group_name"]
    let mediationABTestName = responseInfo?.extrasDictionary["mediation_ab_test_name"]
    let mediationABTestVariant = responseInfo?.extrasDictionary["mediation_ab_test_variant"]
  }
}

Objective-C

- (void)loadInterstitial {
  [GADInterstitialAd
   loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910"
   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 *mediationGroupName = responseInfo.extrasDictionary[@"mediation_group_name"];
    NSString *mediationABTestName = responseInfo.extrasDictionary[@"mediation_ab_test_name"];
    NSString *mediationABTestVariant = responseInfo.extrasDictionary[@"mediation_ab_test_variant"];
  }];
}

Informationen zur Adapterantwort

GADAdNetworkResponseInfo enthält Metadaten für jeden Adapter, der in der Anzeigenantwort enthalten ist. Diese können zum Debuggen der abfolgebasierten Vermittlung und der Gebotsausführung verwendet werden. Die Reihenfolge der Liste entspricht der Reihenfolge der Vermittlungsabfolge für die Anzeigenanfrage.

Hier ein Beispiel für eine GADAdNetworkResponseInfo-Ausgabe:

    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name:Reservation campaign
    Ad Source ID:7068401028668408324
    Ad Source Instance Name:[DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID:[DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
{
}
    Error: (null)
    Latency: 0.277

Für jedes Werbenetzwerk bietet GADAdNetworkResponseInfo die folgenden Attribute:

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 versucht wurde.
adSourceId Die Anzeigenquellen-ID, die mit dieser Adapterantwort verknüpft ist. Bei Kampagnen wird 6060308706800320801 für den Zielvorhabentyp „Vermittelte Anzeigen“ und 7068401028668408324 für die Zielvorhabentypen „Impressionen“ und „Klicks“ zurückgegeben. Eine Liste der möglichen Anzeigenquellen-IDs, wenn ein Werbenetzwerk die Anzeige ausliefert, finden Sie unter Anzeigenquellen.
adSourceInstanceId Die ID der Anzeigenquelleninstanz, die mit dieser Adapterantwort verknüpft ist.
adSourceInstanceName Der Name der Anzeigenquelleninstanz, die dieser Adapterantwort zugeordnet ist.
adSourceName Die Anzeigenquelle, die das spezifische Werbenetzwerk darstellt, über das die Impression ausgeliefert wird. Bei Kampagnen wird Mediated House Ads für den Zielvorhabentyp „Vermittelte Anzeigen“ und Reservation Campaign für die Zielvorhabentypen „Impressionen“ und „Klicks“ zurückgegeben. Eine Liste der möglichen Namen von Anzeigenquellen, wenn ein Werbenetzwerk die Anzeige ausliefert, finden Sie unter Anzeigenquellen.
adNetworkClassName Der Klassenname des Werbenetzwerkadapters, über den die Anzeige geladen wurde.
adUnitMapping Die in der AdMob-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() {
  InterstitialAd.load(
    with: "ca-app-pub-3940256099942544/4411468910", 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:@"ca-app-pub-3940256099942544/4411468910"
   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;
  }];
}