विज्ञापन प्रतिक्रिया के बारे में जानकारी पाएं

डीबग करने और लॉग करने के लिए, लोड हो चुके विज्ञापन एक ResponseInfo ऑब्जेक्ट उपलब्ध कराते हैं. इस ऑब्जेक्ट में, विज्ञापन लोड करने के लिए इस्तेमाल किए गए मीडिएशन वॉटरफ़ॉल के साथ-साथ, लोड किए गए विज्ञापन की जानकारी भी शामिल होती है.

जिन मामलों में विज्ञापन लोड हो जाता है उनके लिए, विज्ञापन ऑब्जेक्ट में एक getResponseInfo() तरीका होता है. उदाहरण के लिए, InterstitialAd.getResponseInfo() लोड किए गए इंटरस्टीशियल विज्ञापन के लिए, रिस्पॉन्स की जानकारी मिलती है.

जिन मामलों में विज्ञापन लोड नहीं होते और सिर्फ़ गड़बड़ी का मैसेज दिखता है उनमें रिस्पॉन्स की जानकारी 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());
}

जवाब की जानकारी

यहां ResponseInfo.toString() से मिला सैंपल आउटपुट दिया गया है. इसमें, लोड किए गए विज्ञापन के लिए, डीबग करने से जुड़ा डेटा दिखाया गया है:

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

ResponseInfo ऑब्जेक्ट के तरीकों में ये शामिल हैं:

तरीका ब्यौरा
getAdapterResponses विज्ञापन रिस्पॉन्स में शामिल हर अडैप्टर के लिए, मेटाडेटा वाला AdapterResponseInfo दिखाता है. इसका इस्तेमाल, वॉटरफ़ॉल मीडिएशन और बिडिंग एक्सीक्यूशन को डीबग करने के लिए किया जा सकता है. सूची का क्रम, इस विज्ञापन अनुरोध के लिए मीडिएशन वॉटरफ़ॉल के क्रम से मेल खाता है.

ज़्यादा जानकारी के लिए, अडैप्टर रिस्पॉन्स की जानकारी देखें.

getLoadedAdapterResponseInfo विज्ञापन लोड करने वाले अडैप्टर से जुड़ा AdapterResponseInfo दिखाता है.
getMediationAdapterClassName विज्ञापन लोड करने वाले विज्ञापन स्रोत के मीडिएशन अडैप्टर क्लास का नाम दिखाता है.
getResponseId रिस्पॉन्स आइडेंटिफ़ायर, विज्ञापन रिस्पॉन्स का यूनीक आइडेंटिफ़ायर होता है. इस आइडेंटिफ़ायर का इस्तेमाल, विज्ञापन समीक्षा केंद्र (ARC) में विज्ञापन की पहचान करने और उसे ब्लॉक करने के लिए किया जा सकता है.
getResponseExtras

विज्ञापन के जवाब के बारे में ज़्यादा जानकारी दिखाता है.

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
}

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

अडैप्टर के रिस्पॉन्स की जानकारी

AdapterResponseInfo इसमें विज्ञापन रिस्पॉन्स में, किसी विज्ञापन सोर्स के लिए रिस्पॉन्स की जानकारी होती है.

यहां दिए गए सैंपल AdapterResponseInfo आउटपुट में, लोड किए गए विज्ञापन का मेटाडेटा दिखता है:

{
  "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 ये तरीक़े उपलब्ध कराता है:

तरीका ब्यौरा
getAdError विज्ञापन सोर्स के अनुरोध से जुड़ी गड़बड़ी का पता चलता है. अगर विज्ञापन स्रोत से विज्ञापन लोड हो जाता है या विज्ञापन स्रोत को लोड करने की कोशिश नहीं की जाती है, तो null दिखाता है.
getAdSourceId इस अडैप्टर रिस्पॉन्स से जुड़ा विज्ञापन स्रोत आईडी पाता है.
getAdSourceInstanceId इस अडैप्टर के रिस्पॉन्स से जुड़ा विज्ञापन सोर्स इंस्टेंस आईडी पाता है.
getAdSourceInstanceName इस अडैप्टर रिस्पॉन्स से जुड़े विज्ञापन स्रोत इंस्टेंस का नाम पाता है.
getAdSourceName इस अडैप्टर रिस्पॉन्स से जुड़े विज्ञापन स्रोत का नाम दिखाता है.
getAdapterClassName विज्ञापन लोड करने वाले विज्ञापन स्रोत अडैप्टर का क्लास नाम पाता है.
getCredentials Ad Manager के यूज़र इंटरफ़ेस में बताए गए विज्ञापन स्रोत अडैप्टर के क्रेडेंशियल पाता है.
getLatencyMillis इससे पता चलता है कि विज्ञापन सोर्स अडैप्टर को विज्ञापन लोड करने में कितना समय लगा. अगर विज्ञापन स्रोत का इस्तेमाल नहीं किया गया था, तो 0 दिखाता है.

Kotlin

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

  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
}

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