Récupérer des informations sur la réponse d'annonce

Sélectionnez une plate-forme : Android (bêta) Nouveau Android iOS Unity Flutter

À des fins de débogage et de journalisation, les annonces chargées fournissent un GADResponseInfo objet. Cet objet contient des informations sur l'annonce qu'il a chargée, ainsi que sur la cascade de médiation utilisée pour charger l'annonce.

Dans les cas où une annonce est chargée, l'objet d'annonce comporte une propriété GADResponseInfo. Par exemple, GADInterstitialAd.responseInfo obtient les informations de réponse pour une annonce interstitielle chargée.

Dans les cas où les annonces ne parviennent pas à se charger et où seule une erreur est disponible, GADResponseInfo est disponible à l'aide de la clé GADErrorUserInfoKeyResponseInfo dans le dictionnaire userInfo de l'erreur.

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);
  }];
}

Informations sur la réponse

Voici un exemple de sortie montrant les données de débogage renvoyées pour une annonce chargée :

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

Les propriétés de GADResponseInfo incluent :

Propriété Description
adNetworkInfoArray Renvoie la liste des GADAdNetworkResponseInfo contenant des métadonnées pour chaque adaptateur inclus dans la réponse de l'annonce. Peut être utilisé pour déboguer la médiation en cascade et l'exécution des enchères. L'ordre de la liste correspond à celui de la cascade de médiation pour cette demande d'annonce.

Pour en savoir plus, consultez la section Informations sur la réponse de l'adaptateur.

loadedAdNetworkResponseInfo Renvoie le GADAdNetworkResponseInfo correspondant à l'adaptateur qui a chargé l'annonce.
adNetworkClassName Renvoie le nom de la classe d'adaptateur de médiation du réseau publicitaire qui a chargé l'annonce.
responseIdentifier L'identifiant de réponse est un identifiant unique pour la réponse de l'annonce. Cet identifiant peut être utilisé pour identifier et bloquer l'annonce dans le Centre de vérification des annonces.
extrasDictionary Renvoie des informations supplémentaires sur la réponse de l'annonce. Les extras peuvent renvoyer les clés suivantes:
  • mediation_group_name : nom du groupe de médiation
  • mediation_ab_test_name : nom du test A/B de médiation, le cas échéant
  • mediation_ab_test_variant : variante utilisée dans le test A/B de médiation, le cas échéant

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"];
  }];
}

Informations sur la réponse de l'adaptateur

GADAdNetworkResponseInfo contient des métadonnées pour chaque adaptateur inclus dans la réponse de l'annonce, qui peuvent être utilisées pour déboguer la médiation en cascade et l'exécution des enchères. L'ordre de la liste correspond à celui de la cascade de médiation pour la demande d'annonce.

Voici un exemple de sortie 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

Pour chaque réseau publicitaire, GADAdNetworkResponseInfo fournit les propriétés suivantes :

Propriété Description
error Erreur associée à la requête adressée au réseau. Renvoie nil si le réseau a chargé une annonce ou si le réseau n'a pas été tenté.
adSourceId ID de la source d'annonce associé à cette réponse d'adaptateur. Pour les campagnes, 6060308706800320801 est renvoyé pour un type d'objectif de campagne d'annonces avec médiation , et 7068401028668408324 est renvoyé pour les types d'objectifs d'impressions et de clics. Pour obtenir la liste des ID de source d'annonce possibles lorsqu'un réseau publicitaire diffuse l'annonce, consultez la section Sources d'annonces.
adSourceInstanceId ID de l'instance de source d'annonce associé à cette réponse d'adaptateur.
adSourceInstanceName Nom de l'instance de source d'annonce associé à cette réponse d'adaptateur.
adSourceName Source d'annonce représentant le réseau publicitaire spécifique qui diffuse l' impression. Pour les campagnes, Mediated House Ads est renvoyé pour un type d'objectif de campagne d'annonces avec médiation, et Reservation Campaign est renvoyé pour les types d'objectifs d'impressions et de clics. Pour obtenir la liste des noms de source d'annonce possibles lorsqu'un réseau publicitaire diffuse l' annonce, consultez la section Sources d'annonces.
adNetworkClassName Nom de la classe de l'adaptateur de réseau publicitaire qui a chargé l'annonce.
adUnitMapping Configuration réseau définie à partir de l' interface utilisateur AdMob.
latency Temps passé par le réseau publicitaire à charger une annonce. Renvoie 0 si le réseau n'a pas été tenté.

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;
  }];
}