W celu debugowania i rejestrowania dzienników pomyślnie wczytane reklamy udostępniają obiekt
ResponseInfo. Ten obiekt zawiera informacje o reklamie, którą wczytał, oraz o kaskadowym zapośredniczeniu używanym do wczytywania reklamy.
W przypadku, gdy reklama zostanie wczytana, obiekt reklamy ma metodę getResponseInfo(). Na przykład:
InterstitialAd.getResponseInfo()
pobiera informacje o odpowiedzi w przypadku wczytanej reklamy pełnoekranowej.
W przypadku, gdy reklamy nie wczytują się i dostępny jest tylko błąd, informacje o odpowiedzi są dostępne na stronie LoadAdError.getResponseInfo().
Kotlin
override fun onAdLoaded(interstitialAd: InterstitialAd)) {
val responseInfo = interstitialAd.responseInfo
Log.d(TAG, responseInfo.toString())
}
override fun onAdFailedToLoad(adError: LoadAdError) {
val responseInfo = adError.responseInfo
Log.d(TAG, responseInfo.toString())
}
Java
@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
ResponseInfo responseInfo = interstitialAd.getResponseInfo();
Log.d(TAG, responseInfo.toString());
}
@Override
public void onAdFailedToLoad(LoadAdError loadAdError) {
ResponseInfo responseInfo = loadAdError.getResponseInfo();
Log.d(TAG, responseInfo.toString());
}
Informacje o odpowiedzi
Oto przykładowe dane wyjściowe zwrócone przez ResponseInfo.toString(), które pokazują dane debugowania zwrócone w przypadku wczytanej reklamy:
{
"Response ID": "COOllLGxlPoCFdAx4Aod-Q4A0g",
"Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
"Adapter Responses": [
{
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 328,
"Ad Source Name": "Reservation campaign",
"Ad Source ID": "7068401028668408324",
"Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
"Ad Source Instance ID": "4665218928925097",
"Credentials": {},
"Ad Error": "null"
}
],
"Loaded Adapter Response": {
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 328,
"Ad Source Name": "Reservation campaign",
"Ad Source ID": "7068401028668408324",
"Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
"Ad Source Instance ID": "4665218928925097",
"Credentials": {},
"Ad Error": "null"
},
"Response Extras": {
"mediation_group_name": "Campaign"
}
}
Metody obiektu ResponseInfo obejmują:
| Metoda | Opis |
|---|---|
getAdSourceResponses |
Zwraca listę obiektów
AdSourceResponseInfo zawierających metadane każdego źródła reklam uwzględnionego w odpowiedzi na reklamę. Może służyć do debugowania zapośredniczenia kaskadowego i określania stawek. Kolejność na liście odpowiada kolejności w kaskadzie zapośredniczenia w przypadku tego żądania reklamy.
Więcej informacji znajdziesz w sekcji Informacje o odpowiedzi źródła reklamy. |
getLoadedAdSourceResponse |
Zwraca AdSourceResponseInfo
odpowiadający źródłu reklam, które wczytało reklamę. |
getAdapterClassName
|
Zwraca nazwę klasy adaptera zapośredniczenia źródła reklam, które wczytało reklamę. |
getResponseId |
Identyfikator reakcji to niepowtarzalny identyfikator reakcji na reklamę. Ten identyfikator może służyć do identyfikowania i blokowania reklamy w Centrum oceny reklam. |
getResponseExtras |
Zwraca dodatkowe informacje o odpowiedzi reklamy. Dodatki mogą zwracać te klucze:
|
Kotlin
override fun onAdLoaded(interstitialAd: InterstitialAd) {
val responseInfo = interstitialAd.responseInfo
val responseId = responseInfo.responseId
val adapterClassName = responseInfo.adapterClassName
val adSourceResponses = responseInfo.adSourceResponses
val loadedAdSourceResponse = responseInfo.loadedAdSourceResponse
val extras = responseInfo.responseExtras
val mediationGroupName = extras.getString("mediation_group_name")
val mediationABTestName = extras.getString("mediation_ab_test_name")
val mediationABTestVariant = extras.getString("mediation_ab_test_variant")
}
Java
@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
MyActivity.this.interstitialAd = interstitialAd;
ResponseInfo responseInfo = interstitialAd.getResponseInfo();
String responseId = responseInfo.getResponseId();
String adapterClassName = responseInfo.getAdapterClassName();
List<AdSourceResponseInfo> adSourceResponses = responseInfo.getAdSourceResponses();
AdSourceResponseInfo loadedAdSourceResponse = responseInfo.getLoadedAdSourceResponse();
Bundle extras = responseInfo.getResponseExtras();
String mediationGroupName = extras.getString("mediation_group_name");
String mediationABTestName = extras.getString("mediation_ab_test_name");
String mediationABTestVariant = extras.getString("mediation_ab_test_variant");
}
Informacje o odpowiedzi źródła reklam
AdSourceResponseInfo
zawiera informacje o odpowiedzi dla poszczególnych źródeł reklam w odpowiedzi na żądanie reklamy.
Poniższy przykład AdSourceResponseInfo pokazuje metadane wczytanej reklamy:
{
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 328,
"Ad Source Name": "Reservation campaign",
"Ad Source ID": "7068401028668408324",
"Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
"Ad Source Instance ID": "4665218928925097",
"Credentials": {},
"Ad Error": "null"
}
W przypadku każdego źródła reklam AdSourceResponseInfo udostępnia te metody:
| Metoda | Opis |
|---|---|
getAdError |
Pobiera błąd związany z żądaniem wysłanym do źródła reklamy. Zwraca wartość null, jeśli źródło reklamy wczytało reklamę lub jeśli nie podjęło próby wczytania reklamy. |
getId |
Zwraca identyfikator źródła reklamy powiązany z tą odpowiedzią źródła reklamy.
W przypadku kampanii zwracana jest wartość 6060308706800320801 w przypadku typu celu kampanii „Zapośredniczone reklamy” i 7068401028668408324 w przypadku typów celów „Wyświetlenia” i „Kliknięcia”. Listę możliwych identyfikatorów źródeł reklam, gdy źródło reklam wyświetla reklamę, znajdziesz w sekcji Źródła reklam. |
getInstanceId |
Pobiera identyfikator instancji źródła reklamy powiązany z odpowiedzią tego adaptera. |
getInstanceName |
Pobiera nazwę wystąpienia źródła reklam powiązanego z tą odpowiedzią adaptera. |
getName |
Zwraca nazwę źródła reklamy powiązaną z tą odpowiedzią adaptera.
W przypadku kampanii zwracana jest wartość Mediated House Ads w przypadku typu celu kampanii „Zapośredniczone reklamy” i Reservation Campaign w przypadku typów celów „Wyświetlenia” i „Kliknięcia”. Listę możliwych nazw źródeł reklam, gdy źródło reklam wyświetla reklamę, znajdziesz w sekcji Źródła reklam. |
getAdapterClassName |
Pobiera nazwę klasy adaptera źródła reklam, który wczytał reklamę. |
getCredentials |
Pobiera dane logowania adaptera źródła reklam określone w interfejsie AdMob. |
getLatencyMillis |
Pobiera czas, jaki adapter źródła reklam spędził na wczytywaniu reklamy.
Zwraca wartość 0, jeśli nie podjęto próby użycia źródła reklamy. |
Kotlin
override fun onAdLoaded(interstitialAd: InterstitialAds) {
val loadedAdSourceResponseInfo = interstitialAd.responseInfo.loadedAdSourceResponse
val adError = loadedAdSourceResponseInfo.adError
val adSourceId = loadedAdSourceResponseInfo.id
val adSourceInstanceId = loadedAdSourceResponseInfo.instanceId
val adSourceInstanceName = loadedAdSourceResponseInfo.instanceName
val adSourceName = loadedAdSourceResponseInfo.name
val adapterClassName = loadedAdSourceResponseInfo.adapterClassName
val credentials = loadedAdSourceResponseInfo.credentials
val latencyMillis = loadedAdSourceResponseInfo.latencyMillis
}
Java
@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
AdSourceResponseInfo loadedAdSourceResponseInfo =
interstitialAd.getResponseInfo().getLoadedAdSourceResponse();
AdError adError = loadedAdSourceResponseInfo.getAdError();
String adSourceId = loadedAdSourceResponseInfo.getId();
String adSourceInstanceId = loadedAdSourceResponseInfo.getInstanceId();
String adSourceInstanceName = loadedAdSourceResponseInfo.getInstanceName();
String adSourceName = loadedAdSourceResponseInfo.getName();
String adapterClassName = loadedAdSourceResponseInfo.getAdapterClassName();
Bundle credentials = loadedAdSourceResponseInfo.getCredentials();
long latencyMillis = loadedAdSourceResponseInfo.getLatencyMillis();
}