W celach debugowania i rejestrowania pomyślnie wczytane reklamy udostępniają a
ResponseInfo
obiekt. Zawiera on informacje o wczytanej reklamie oraz o kaskadzie zapośredniczenia użytej do jej wczytania.
W przypadkach, gdy reklama wczytuje się prawidłowo, obiekt reklamy ma a
getResponseInfo()
metodę. Na przykład,
InterstitialAd.getResponseInfo()
pobiera informacje o odpowiedzi na wczytaną reklamę pełnoekranową.
W przypadkach, gdy reklamy nie wczytują się i dostępny jest tylko błąd, informacje o
odpowiedzi są dostępne za pomocą
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() pokazujące dane debugowania zwrócone w przypadku wczytanej reklamy:
{
"Response ID": "NI3BZZDbGdyQtOUP4o21gAM",
"Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
"Adapter Responses": [
{
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 3585,
"Ad Source Name": "AdMob Network",
"Ad Source ID": "",
"Ad Source Instance Name": "AdMob (default)",
"Ad Source Instance ID": "",
"Credentials": {
"pubid": "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
},
"Ad Error": "null"
}
],
"Loaded Adapter Response": {
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 3585,
"Ad Source Name": "AdMob Network",
"Ad Source ID": "",
"Ad Source Instance Name": "AdMob (default)",
"Ad Source Instance ID": "",
"Credentials": {
"pubid": "ca-app-pub-3940256099942544\/9257395921\/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
},
"Ad Error": "null"
},
"Response Extras": {
"creative_id": "138471856178",
"line_item_id": "6707237225",
}
}
Metody w obiekcie ResponseInfo obejmują:
| Metoda | Opis |
|---|---|
getAdSourceResponses |
Zwraca listę
AdSourceResponseInfo
zawierającą metadane każdego źródła reklam uwzględnionego
w odpowiedzi na żądanie reklamy. 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 artykule Informacje o odpowiedzi źródła reklam. |
getLoadedAdSourceResponse |
Zwraca AdSourceResponseInfo
odpowiadające ź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 odpowiedzi to unikalny identyfikator odpowiedzi na żądanie reklamy. Możesz go użyć do zidentyfikowania i zablokowania reklamy w Centrum oceny reklam (ARC). |
getResponseExtras |
Zwraca dodatkowe informacje o odpowiedzi na żądanie reklamy. Dodatkowe informacje 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 creativeId = extras.getString("creative_id")
val lineItemId = extras.getString("line_item_id")
}
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 creativeId = extras.getString("creative_id");
String lineItemId = extras.getString("line_item_id");
}
Informacje o odpowiedzi źródła reklam
AdSourceResponseInfo zawiera informacje o odpowiedzi na żądanie reklamy dotyczące poszczególnych źródeł reklam.
Ten przykładowy wynik AdSourceResponseInfo pokazuje metadane wczytanej reklamy:
{
"Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
"Latency": 3585,
"Ad Source Name": "AdMob Network",
"Ad Source ID": "",
"Ad Source Instance Name": "AdMob (default)",
"Ad Source Instance ID": "",
"Credentials": {
"pubid": "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
},
"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 reklam. Zwraca
null wartość `null`, jeśli źródło reklam pomyślnie wczytało reklamę lub jeśli nie podjęto próby użycia źródła reklam. |
getId |
Pobiera identyfikator źródła reklam powiązany z tą odpowiedzią źródła reklam. |
getInstanceId |
Pobiera identyfikator instancji źródła reklam powiązany z tą odpowiedzią adaptera. |
getInstanceName |
Pobiera nazwę instancji źródła reklam powiązaną z tą odpowiedzią adaptera. |
getName |
Pobiera nazwę źródła reklam powiązaną z tą odpowiedzią adaptera. |
getAdapterClassName |
Pobiera nazwę klasy adaptera źródła reklam, które wczytało reklamę. |
getCredentials |
Pobiera dane logowania adaptera źródła reklam określone w Ad Managera. |
getLatencyMillis |
Pobiera czas, jaki adapter źródła reklam spędził na wczytywaniu reklamy.
Jeśli nie podjęto próby użycia źródła reklam, zwraca wartość 0. |
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();
}