Reklam yanıtıyla ilgili bilgileri alma

Hata ayıklama ve günlük kaydı amacıyla, başarılı bir şekilde yüklenen reklamlar ResponseInfo nesnesini tanımlayın. Bu nesne, yüklendiği reklamla ilgili bilgilerin yanı sıra Reklamı yüklemek için kullanılan uyumlulaştırma şelalesi hakkındaki bilgiler.

Bir reklamın başarıyla yüklendiği durumlarda, reklam nesnesi getResponseInfo() yöntemini çağırın. Örneğin, InterstitialAd.getResponseInfo() Kullanıcı, yüklenen bir geçiş reklamına ait yanıt bilgilerini alır.

Reklamların yüklenemediği ve yalnızca bir hatanın mevcut olduğu durumlarda, yanıt bilgilerini LoadAdError.getResponseInfo().

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, ResponseInfo.toString() gösterilen hata ayıklama verilerini görebilirsiniz:

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

ResponseInfo nesnesindeki yöntemler şunlardır:

Yöntem Açıklama
getAdapterResponses AdapterResponseInfo listesini döndürür reklam yanıtında yer alan her bağdaştırıcının meta verilerini içeren meta verileri içerir. Olabilir şelale uyumlulaştırması ve teklifli sistem yürütmede hata ayıklamak için kullanılır. Sıra, Liste, 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 konusuna bakın ekleyebilirsiniz.

getLoadedAdapterResponseInfo Adaptöre karşılık gelen AdapterResponseInfo değerini döndürür bir şablondan oluşur.
getMediationAdapterClassName Yüklenen reklam ağının uyumlulaştırma bağdaştırıcısı sınıf adını döndürür reklam.
getResponseId Yanıt tanımlayıcısı, 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ı hakkında ek bilgi döndürür. . Ekstralar aşağıdaki anahtarları döndürebilir:

  • mediation_group_name: Uyumlulaştırma grubunun adı
  • mediation_ab_test_name: Uyumlulaştırma A/B testinin adı, geçerliyse
  • mediation_ab_test_variant: uyumlulaştırma A/B testi (geçerliyse)

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

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

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

AdapterResponseInfo reklam yanıtında yer alan her bağdaştırıcı için kullanılabilecek meta verileri içerir hata ayıklaması yapabilirsiniz. Listenin sırası Reklam isteği için uyumlulaştırma şelalesinin sıralamasıyla eşleşir.

Aşağıda örnek AdapterResponseInfo çıkışı verilmiştir:

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

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

Yöntem Açıklama
getAdError Ağa gönderilen istekle ilişkili hatayı alır. İadeler null ağ bir reklamı başarıyla yükleyip yüklemediğinde denenmedi.
getAdSourceId Bu bağdaştırıcı yanıtıyla ilişkili reklam kaynağı kimliğini alır.. Kampanyalarda Uyumlulaştırılmış reklamlar için 6060308706800320801 döndürüldü kampanya hedefi türünü, ve 7068401028668408324 gösterim ve tıklama için döndürülür hedef türleri. Reklam kaynakları bölümüne bakın değerini girin.
getAdSourceInstanceId Bu bağdaştırıcıyla ilişkili reklam kaynağı örnek kimliğini alır yanıt.
getAdSourceInstanceName Bu bağdaştırıcıyla ilişkili reklam kaynağı örneği adını alır tıklayın.
getAdSourceName gösterim elde etti. Kampanyalarda, Uyumlulaştırılmış reklamlar için Mediated House Ads döndürüldü kampanya hedefi türünü, ve Reservation Campaign gösterim ve tıklama için döndürülür hedef türleri. Reklam kaynakları bölümüne bakın potansiyel reklam kaynağı adlarının listesi için bir reklam ağı reklam
getAdapterClassName Reklamı yükleyen bağdaştırıcının sınıf adını alır.
getCredentials Ağ yapılandırmasını şuradan alır: AdMob Kullanıcı arayüzü.
getLatencyMillis Reklam ağının bir reklamı yüklemek için harcadığı süreyi alır. İadeler Ağ bağlanmaya çalışılmadıysa 0.

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
}