विज्ञापन पर प्रतिक्रिया की जानकारी हासिल करना

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

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

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

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

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

{
  "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 ऑब्जेक्ट के तरीकों में ये शामिल हैं:

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

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

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

विज्ञापन से मिले रिस्पॉन्स के बारे में ज़्यादा जानकारी दिखाता है. Extras इन कुंजियों को दिखा सकता है:

  • mediation_group_name: मीडिएशन ग्रुप का नाम
  • mediation_ab_test_name: अगर लागू हो, तो मीडिएशन A/B टेस्ट का नाम
  • mediation_ab_test_variant: मीडिएशन A/B टेस्ट में इस्तेमाल किया गया वैरिएंट, अगर लागू हो

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

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

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

यहां AdapterResponseInfo आउटपुट का सैंपल दिया गया है:

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

तरीका ब्यौरा
getAdError नेटवर्क से अनुरोध से जुड़ी गड़बड़ी की जानकारी देता है. अगर नेटवर्क ने कोई विज्ञापन लोड कर लिया है या नेटवर्क ने कोशिश नहीं की है, तो यह null दिखाता है.
getAdSourceId इस अडैप्टर रिस्पॉन्स से जुड़े विज्ञापन स्रोत का आईडी लेता है. कैंपेन के लिए, 6060308706800320801 को मीडिएशन वाले विज्ञापनों कैंपेन के लक्ष्य टाइप के लिए दिखाया जाता है. वहीं, 7068401028668408324 को इंप्रेशन और क्लिक के लक्ष्य के टाइप के लिए दिखाया जाता है. किसी विज्ञापन नेटवर्क से विज्ञापन दिखाए जाने पर, संभावित विज्ञापन स्रोत आईडी की सूची के लिए, विज्ञापन स्रोत देखें.
getAdSourceInstanceId इस अडैप्टर रिस्पॉन्स से जुड़े विज्ञापन स्रोत के इंस्टेंस आईडी का पता लगाता है.
getAdSourceInstanceName इस अडैप्टर रिस्पॉन्स से जुड़े विज्ञापन स्रोत के इंस्टेंस का नाम लेता है.
getAdSourceName यह इंप्रेशन दिखाने वाले खास विज्ञापन नेटवर्क को दिखाने वाले विज्ञापन स्रोत को दिखाता है. कैंपेन के लिए, Mediated House Ads को मीडिएशन वाले विज्ञापनों कैंपेन के लक्ष्य टाइप के लिए दिखाया जाता है. और Reservation Campaign को इंप्रेशन और क्लिक के लक्ष्य के टाइप के लिए दिखाया जाता है. किसी विज्ञापन नेटवर्क से विज्ञापन दिखाए जाने पर, संभावित विज्ञापन स्रोत के नामों की सूची के लिए विज्ञापन स्रोत देखें.
getAdapterClassName विज्ञापन को लोड करने वाले अडैप्टर की क्लास का नाम पाता है.
getCredentials यह AdMob यूज़र इंटरफ़ेस (यूआई) से नेटवर्क कॉन्फ़िगरेशन सेट करता है.
getLatencyMillis विज्ञापन नेटवर्क कंपनी को, विज्ञापन लोड करने में लगने वाले समय की जानकारी मिलती है. अगर नेटवर्क से कनेक्ट करने की कोशिश नहीं की गई है, तो 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
}