Recuperar información sobre la respuesta del anuncio

Para fines de depuración y registro, los anuncios cargados correctamente proporcionan una GADResponseInfo . Este objeto contiene información acerca del anuncio que cargó, además de información sobre la cascada de mediación que se usó para cargar el anuncio.

En los casos en que un anuncio se carga correctamente, el objeto de anuncio tiene una GADResponseInfo. Por ejemplo: GADInterstitialAd.responseInfo obtiene la información de respuesta de un anuncio intersticial cargado.

En los casos en que los anuncios no se cargan y solo hay un error disponible, el GADResponseInfo está disponible con la clave GADErrorUserInfoKeyResponseInfo. en el diccionario userInfo del error.

Swift

fileprivate func loadInterstitial() {
  GADInterstitialAd.load(
    withAdUnitID: "ca-app-pub-3940256099942544/4411468910", request: request
  ) { (ad, error) in
    if let error = error {
      let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? GADResponseInfo
      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);
  }];
}

Información de respuesta

A continuación, se muestra un resultado de ejemplo en el que se muestran los datos de depuración para un anuncio cargado:

  ** 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

Propiedades en GADResponseInfo incluyen:

Propiedad Descripción
adNetworkInfoArray Muestra la lista de GADAdNetworkResponseInfo. con metadatos de cada adaptador incluido en la respuesta del anuncio. Puede ser que se utiliza para depurar la mediación en cascada y la ejecución de licitación. El orden de La lista coincide con el orden de la cascada de mediación para esta solicitud de anuncio.

Consulta la información de respuesta del adaptador para obtener más información. información.

loadedAdNetworkResponseInfo Devuelve el GADAdNetworkResponseInfo correspondiente al adaptador. que cargó el anuncio.
adNetworkClassName Devuelve el nombre de clase de adaptador de mediación de la red de publicidad que se cargó. el anuncio.
responseIdentifier El identificador de respuesta es un identificador único de la respuesta del anuncio. Esta este identificador se puede usar para identificar y bloquear el anuncio en el Centro de revisión de anuncios (ARC).
extrasDictionary

Muestra información adicional sobre la respuesta del anuncio. Los extras pueden mostrar las siguientes claves:

  • mediation_group_name: Es el nombre del grupo de mediación.
  • mediation_ab_test_name: Es el nombre de la prueba A/B de mediación. si corresponde
  • mediation_ab_test_variant: Es la variante que se usa en el prueba A/B de mediación, si corresponde

Swift

fileprivate func loadInterstitial() {
  GADInterstitialAd.load(
    withAdUnitID: "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"];
  }];
}

Información de respuesta del adaptador

GADAdNetworkResponseInfo Contiene metadatos para cada adaptador incluido en la respuesta del anuncio que se puede usar para depurar la mediación en cascada y la ejecución de licitación. El orden de la lista coincide con el orden de la cascada de mediación de la solicitud de anuncio.

Este es un resultado de muestra de GADAdNetworkResponseInfo:

    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

Para cada red de publicidad, GADAdNetworkResponseInfo proporciona lo siguiente: propiedades:

Propiedad Descripción
error El error asociado con la solicitud a la red. Resultado que se muestra nil si la red cargó correctamente un anuncio o si la red no se intentó.
adSourceId Es el ID de la fuente del anuncio asociado con esta respuesta del adaptador. En el caso de las campañas, se muestra 6060308706800320801 para los anuncios mediados. tipo de objetivo de la campaña, y se devuelve 7068401028668408324 para impresiones y clics tipos de objetivos. Consulta Fuentes del anuncio. para obtener la lista de posibles IDs de fuentes del anuncio cuando el anuncio se publique en una red de publicidad.
adSourceInstanceId El ID de instancia de la fuente del anuncio asociado con este adaptador respuesta.
adSourceInstanceName El nombre de la instancia de la fuente del anuncio asociada con este adaptador de respuesta.
adSourceName Es la fuente de anuncios que representa la red de publicidad específica que publica la impresión. En el caso de las campañas, Se muestra Mediated House Ads para anuncios mediados. tipo de objetivo de la campaña, y se devuelve Reservation Campaign para impresiones y clics tipos de objetivos. Consulta Fuentes del anuncio. de la lista de posibles nombres de fuentes de anuncios cuando una red de publicidad publica la anuncio.
adNetworkClassName Es el nombre de clase del adaptador de red de publicidad que cargó el anuncio.
adUnitMapping La configuración de red establecida desde la AdMob IU
latency Es la cantidad de tiempo que la red de publicidad dedicó a cargar un anuncio. Resultado que se muestra 0 si no se intentó establecer la red.

Swift

fileprivate func loadInterstitial() {
  GADInterstitialAd.load(
    withAdUnitID: "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;
  }];
}