Na potrzeby debugowania i logowania wczytane reklamy udostępniają obiekt GADResponseInfo
. Ten obiekt zawiera informacje o wczytanej reklamie oraz o kaskadzie zapośredniczenia użytej do wczytania reklamy.
W przypadku, gdy reklama się uda, obiekt reklamowy ma właściwość GADResponseInfo
. Na przykład GADInterstitialAd.responseInfo
będzie otrzymywać informacje o odpowiedzi w przypadku wczytanej reklamy pełnoekranowej.
Jeśli nie można wczytać reklam i występuje tylko błąd, można użyć klucza GADErrorUserInfoKeyResponseInfo
za pomocą klucza GADErrorUserInfoKeyResponseInfo
w słowniku userInfo
błędu.GADResponseInfo
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); }]; }
Informacje o odpowiedzi
Oto przykładowe dane wyjściowe z danymi debugowania zwróconymi w przypadku wczytanej reklamy:
** 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
Usługi w domenie GADResponseInfo
to m.in.:
Właściwość | Opis |
---|---|
adNetworkInfoArray |
Zwraca listę elementów GADAdNetworkResponseInfo z metadanymi dla każdego adaptera uwzględnionego w odpowiedzi na reklamę. Można ich używać do debugowania zapośredniczenia kaskadowego i ustalania stawek. Kolejność na liście odpowiada kolejności w kaskadzie zapośredniczenia w przypadku danego żądania reklamy.
Więcej informacji znajdziesz w artykule Informacje o odpowiedzi adaptera. |
loadedAdNetworkResponseInfo |
Zwraca wartość GADAdNetworkResponseInfo odpowiadającą adapterowi, który załadował reklamę. |
adNetworkClassName |
Zwraca nazwę klasy adaptera zapośredniczenia sieci reklamowej, która wczytała reklamę. |
responseIdentifier |
Identyfikator odpowiedzi to unikalny identyfikator odpowiedzi na reklamę. Ten identyfikator może służyć do identyfikowania i blokowania reklamy w Centrum oceny reklam. |
extrasDictionary |
Zwraca dodatkowe informacje o odpowiedzi na reklamę. Dodatki mogą zwracać te klucze:
|
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"]; }]; }
Informacje o odpowiedzi adaptera
GADAdNetworkResponseInfo
zawiera metadane każdego adaptera uwzględnionego w odpowiedzi na żądanie reklamy, które mogą służyć do debugowania zapośredniczenia kaskadowego i określania stawek. Kolejność na liście odpowiada kolejności w kaskadzie zapośredniczenia w żądaniu reklamy.
Oto przykładowe dane wyjściowe funkcji 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
W przypadku każdej sieci reklamowej GADAdNetworkResponseInfo
ma te właściwości:
Właściwość | Opis |
---|---|
error |
Błąd związany z żądaniem wysłanym do sieci. Zwraca nil , jeśli sieć wczytała reklamę lub nie nastąpiła próba jej wczytania. |
adSourceId |
Identyfikator źródła reklam powiązany z tą odpowiedzią adaptera.W przypadku kampanii wartość 6060308706800320801 jest zwracana dla typu celu kampanii związanego z reklamami zapośredniczonymi, a w przypadku celów typu wyświetlenia i kliknięcia zwraca wartość 7068401028668408324 . Listę możliwych identyfikatorów źródeł reklam, gdy sieć reklamowa wyświetla reklamę, znajdziesz w sekcji Źródła reklam. |
adSourceInstanceId |
Identyfikator instancji źródła reklam powiązany z tą odpowiedzią adaptera. |
adSourceInstanceName |
Nazwa wystąpienia źródła reklam powiązana z tą odpowiedzią adaptera. |
adSourceName |
Źródło reklam reprezentujące konkretną sieć reklamową, która realizuje wyświetlenie. W przypadku kampanii w przypadku typu celu kampanii reklam zapośredniczonych zwracana jest wartość Mediated House Ads , a w przypadku typów docelowych wyświetleń i kliknięć zwracana jest wartość Reservation Campaign . Listę możliwych nazw źródeł reklam, gdy sieć reklamowa wyświetla reklamę, znajdziesz w sekcji Źródła reklam. |
adNetworkClassName |
Nazwa klasy adaptera sieci reklamowej, który załadował reklamę. |
adUnitMapping |
Konfiguracja sieci ustawiona w interfejsie AdMob . |
latency |
Ilość czasu spędzonego przez sieć reklamową na wczytaniu reklamy. Zwraca 0 , jeśli nie nastąpiła próba połączenia z siecią. |
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; }]; }