Reklam Yanıtı ile İlgili Bilgi Alma

Başarıyla yüklenen reklamlar, hata ayıklama ve günlük kaydı için bir ResponseInfo nesnesi sağlar. Bu nesne, yüklediği reklamla ilgili bilgilerin yanı sıra reklamı yüklemek için kullanılan uyumlulaştırma şelalesi ile ilgili bilgileri içerir.

Bir reklamın başarıyla yüklendiği durumlarda reklam nesnesinin getResponseInfo() yöntemi vardır. Örneğin, InterstitialAd.getResponseInfo() yüklenen geçiş reklamına ilişkin yanıt bilgilerini alır.

Reklamların yüklenemediği ve yalnızca bir hatanın bulunduğu durumlarda yanıt bilgilerine LoadAdError.getResponseInfo() üzerinden ulaşabilirsiniz.

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

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())
}

Yanıt Bilgileri

Aşağıda, yüklenen bir reklam için döndürülen hata ayıklama verilerini gösteren, ResponseInfo.toString() tarafından döndürülen örnek çıkış verilmiştir:

{
  "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-pub-9939518381636264//21775744923/example/rewarded_interstitial/cak=no_cache&cadc=8e&caqid=NI3BZfDhGICQtOUP7ayS4Aw"
    },
    "Ad Error": "null"
  },
  "Response Extras": {}
}

ResponseInfo nesnesindeki yöntemler şunlardır:

Yöntem Açıklama
getAdapterResponses Reklam yanıtında yer alan her bağdaştırıcı için meta verileri içeren AdapterResponseInfo listesini döndürür. Şelale uyumlulaştırması ve teklifli sistem yürütme işlemlerinde hata ayıklamak için kullanılabilir. Listenin sırası, bu reklam isteği için uyumlulaştırma şelalesinin sıralamasıyla eşleşir.

Daha fazla bilgi için Bağdaştırıcı Yanıtı Bilgisi bölümüne bakın.

getLoadedAdapterResponseInfo Reklamı yükleyen bağdaştırıcıya karşılık gelen AdapterResponseInfo değerini döndürür.
getMediationAdapterClassName Reklamı yükleyen reklam ağının uyumlulaştırma bağdaştırıcısı sınıf adını döndürür.
getResponseId Yanıt kimliği, reklam yanıtı için benzersiz bir tanımlayıcıdır. Bu tanımlayıcı, Reklam İnceleme Merkezi'nde (ARC) reklamı tanımlamak ve engellemek için kullanılabilir.
getResponseExtras

Reklam yanıtıyla ilgili ek bilgiler döndürür.

Java

@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
  MyActivity.this.interstitialAd = interstitialAd;

  ResponseInfo responseInfo = interstitialAd.getResponseInfo();
  String responseId = responseInfo.getResponseId();
  String mediationAdapterClassName = responseInfo.getMediationAdapterClassName();
  List<AdapterResponseInfo> adapterResponses = responseInfo.getAdapterResponses();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();
}

Kotlin

override fun onAdLoaded(interstitialAd: InterstitialAd)) {
  val responseInfo = interstitialAd.responseInfo

  val responseId = responseInfo.responseId
  val mediationAdapterClassName = responseInfo.mediationAdapterClassName
  val adapterResponses = responseInfo.adapterResponses
  val loadedAdapterResponseInfo = responseInfo.loadedAdapterResponseInfo
}

Bağdaştırıcı Yanıt Bilgileri

AdapterResponseInfo, reklam yanıtına dahil edilen her bağdaştırıcı için şelale uyumlulaştırması ve teklifli sistem yürütmede hata ayıklamak amacıyla kullanılabilecek meta verileri içerir. Listenin sırası, reklam isteği için uyumlulaştırma şelalesinin sıralamasıyla eşleşir.

Aşağıda örnek AdapterResponseInfo çıkışını görebilirsiniz:

{
  "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"
}

AdapterResponseInfo, her bir reklam ağı için aşağıdaki yöntemleri sunar:

Yöntem Açıklama
getAdError Ağ isteğiyle ilişkili hatayı alır. Ağ bir reklamı başarıyla yüklediyse veya ağ bağlanmamışsa null değerini döndürür.
getAdSourceId Bu bağdaştırıcı yanıtıyla ilişkili reklam kaynağı kimliğini alır.
getAdSourceInstanceId Bu bağdaştırıcı yanıtıyla ilişkilendirilen reklam kaynağı örneği kimliğini alır. Getiri grubu tarafından doldurulmazsa boş bir dize döndürür.
getAdSourceInstanceName Bu bağdaştırıcı yanıtıyla ilişkili reklam kaynağı örneği adını alır.
getAdSourceName Gösterimi yayınlayan belirli bir reklam ağını temsil eden reklam kaynağını alır.
getAdapterClassName Reklamı yükleyen bağdaştırıcının sınıf adını alır.
getCredentials Ad Manager kullanıcı arayüzünden ayarlanmış ağ yapılandırmasını alır.
getLatencyMillis Reklam ağının bir reklamı yüklemek için harcadığı süreyi alır. Ağa bağlanma girişiminde bulunulmadıysa 0 değerini döndürür.

Java

@Override
public void onAdLoaded(@NonNull InterstitialAd interstitialAd) {
  AdapterResponseInfo loadedAdapterResponseInfo =
      interstitialAd.getResponseInfo().getLoadedAdapterResponseInfo();

  AdError adError = loadedAdapterResponseInfo.getAdError();
  String adSourceId = loadedAdapterResponseInfo.getAdSourceId();
  String adSourceInstanceId = loadedAdapterResponseInfo.getAdSourceInstanceId();
  String adSourceInstanceName = loadedAdapterResponseInfo.getAdSourceInstanceName();
  String adSourceName = loadedAdapterResponseInfo.getAdSourceName();
  String adapterClassName = loadedAdapterResponseInfo.getAdapterClassName();
  Bundle credentials = loadedAdapterResponseInfo.getCredentials();
  long latencyMillis = loadedAdapterResponseInfo.getLatencyMillis();
}

Kotlin

override fun onAdLoaded(interstitialAd: InterstitialAds) {
  val loadedAdapterResponseInfo = interstitialAd.responseInfo.loadedAdapterResponse

  val adError = loadedAdapterResponseInfo.adError
  val adSourceId = loadedAdapterResponseInfo.adSourceId
  val adSourceInstanceId = loadedAdapterResponseInfo.adSourceInstanceId
  val adSourceInstanceName = loadedAdapterResponseInfo.adSourceInstanceName
  val adSourceName = loadedAdapterResponseInfo.adSourceName
  val adapterClassName = loadedAdapterResponseInfo.adapterClassName
  val credentials = loadedAdapterResponseInfo.credentials
  val latencyMillis = loadedAdapterResponseInfo.latencyMillis
}