डिसप्ले-टाइप के कस्टम नेटिव विज्ञापन फ़ॉर्मैट और Open Measurement

इस गाइड में, कस्टम नेटिव विज्ञापन फ़ॉर्मैट को ओपन मेज़रमेंट के साथ इंटिग्रेट करने का तरीका बताया गया है.

ज़रूरी शर्तें

जारी रखने से पहले, यह काम करें:

इंटिग्रेशन

अगर आपको वीडियो ऐसेट के बिना कस्टम नेटिव विज्ञापन फ़ॉर्मैट के साथ ओपन मेज़रमेंट का इस्तेमाल करना है, तो Open Measurement API को कॉल करने की ज़िम्मेदारी आपकी होगी.

अगर वीडियो ऐसेट के साथ कस्टम नेटिव विज्ञापन फ़ॉर्मैट का इस्तेमाल किया जा रहा है, तो आपको इस गाइड को पढ़ने की ज़रूरत नहीं है. Mobile Ads SDK, आपकी ओर से वीडियो ऐसेट के दिखने से जुड़े आंकड़े ट्रैक करता है.

विज्ञापन लोड करना

ओपन मेज़रमेंट का इस्तेमाल करने या न करने से, विज्ञापन लोड करने की प्रोसेस पर कोई असर नहीं पड़ता. यहां एक ऐसा तरीका बताया गया है जिससे कस्टम नेटिव विज्ञापन का अनुरोध करने का तरीका पता चलता है:

Java

private void loadCustomNativeAd(Context context, ViewGroup nativeCustomFormatAdContainer) {

  AdLoader adLoader =
      new AdLoader.Builder(context, "AD_UNIT_ID")
          .forCustomFormatAd(
              "CUSTOM_TEMPLATE_ID",
              new NativeCustomFormatAd.OnCustomFormatAdLoadedListener() {
                @Override
                public void onCustomFormatAdLoaded(@NonNull NativeCustomFormatAd ad) {
                  // Show the ad first and then register your view and begin open measurement.
                  // Make sure to do this on the main thread.

                  // ...
                  // Show ad
                  // ...

                  startOpenMeasurement(ad, nativeCustomFormatAdContainer);
                }
              },
              new NativeCustomFormatAd.OnCustomClickListener() {
                @Override
                public void onCustomClick(NativeCustomFormatAd ad, String assetName) {
                  // Handle the click action
                }
              })
          .build();
  adLoader.loadAd(new AdRequest.Builder().build());
}

Kotlin

private fun loadCustomNativeAd(context: Context, nativeCustomFormatAdContainer: ViewGroup) {
  val adLoader =
    AdLoader.Builder(context, "AD_UNIT_ID")
      .forCustomFormatAd(
        "CUSTOM_TEMPLATE_ID",
        NativeCustomFormatAd.OnCustomFormatAdLoadedListener { ad ->
          // Show the ad first and then register your view and begin open measurement. Make sure
          // to do this on the main thread.

          // ...
          // Show ad
          // ...

          startOpenMeasurement(ad, nativeCustomFormatAdContainer)
        },
        NativeCustomFormatAd.OnCustomClickListener { ad, assetName ->
          // Handle the click action.
        },
      )
      .build()

  adLoader.loadAd(AdRequest.Builder().build())
}

AD_UNIT_ID और CUSTOM_TEMPLATE_ID को अपनी विज्ञापन यूनिट आईडी और कस्टम टेंप्लेट आईडी से बदलें.

व्यू रजिस्टर करें और मेज़रमेंट शुरू करें

कस्टम नेटिव विज्ञापन पर ओपन मेज़रमेंट की सुविधा चालू करने के लिए, पहले विज्ञापन दिखाएं. इसके बाद, कस्टम नेटिव विज्ञापन से जुड़े DisplayOpenMeasurement ऑब्जेक्ट के साथ, कस्टम विज्ञापन व्यू रजिस्टर करें. DisplayOpenMeasurement ऑब्जेक्ट, ओपन मेज़रमेंट के साथ अपने कंटेनर व्यू को रजिस्टर करने के लिए setView() तरीका उपलब्ध कराता है.

आपको एसडीके को यह भी बताना होगा कि वह आपके विज्ञापन को मेज़र करना शुरू करे. इसके लिए, अपने कस्टम नेटिव विज्ञापन के DisplayOpenMeasurement ऑब्जेक्ट पर start() तरीके को कॉल करें. start() तरीके को मुख्य थ्रेड से कॉल किया जाना चाहिए. इसके बाद किए गए कॉल का कोई असर नहीं होता.

यहां बताया गया है कि यह कैसा दिखता है:

Java

private void startOpenMeasurement(
    NativeCustomFormatAd ad, ViewGroup nativeCustomFormatAdContainer) {
  DisplayOpenMeasurement displayOpenMeasurement = ad.getDisplayOpenMeasurement();
  if (displayOpenMeasurement != null) {
    displayOpenMeasurement.setView(nativeCustomFormatAdContainer);
    displayOpenMeasurement.start();
  }
}

Kotlin

private fun startOpenMeasurement(
  ad: NativeCustomFormatAd,
  nativeCustomFormatAdContainer: ViewGroup,
) {
  ad.getDisplayOpenMeasurement()?.let { displayOpenMeasurement ->
    displayOpenMeasurement.setView(nativeCustomFormatAdContainer)
    displayOpenMeasurement.start()
  }
}

ध्यान दें कि आपको व्यू रजिस्टर करने से पहले, अपना विज्ञापन दिखाना चाहिए. आपके विज्ञापन को दिखाने के बारे में, कस्टम नेटिव विज्ञापन फ़ॉर्मैट में बताया गया है.

customTemplateAdFrame लेआउट, कस्टम नेटिव विज्ञापन के लिए विज्ञापन कंटेनर होता है. इसमें व्यू के बाउंडिंग बॉक्स में मौजूद सभी ऐसेट शामिल होनी चाहिए.

IAB से सर्टिफ़िकेट पाना

ऐप्लिकेशन रिलीज़ करने के बाद, आपको मेज़रमेंट का डेटा मिलना शुरू हो जाएगा. हालांकि, IAB सर्टिफ़िकेशन की प्रोसेस पूरी करने तक, आपके डेटा को सर्टिफ़िकेट नहीं मिलेगा.