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

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

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

आगे बढ़ने से पहले, यह काम करें:

इंटिग्रेशन

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

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

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

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

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() तरीका उपलब्ध कराता है.

आपको SDK टूल को साफ़ तौर पर यह भी बताना होगा कि वह आपके विज्ञापन का मेज़रमेंट शुरू करे. इसके लिए, अपने कस्टम नेटिव विज्ञापन के 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 से सर्टिफ़िकेट लेने की प्रोसेस पूरी करने तक, आपके डेटा को सर्टिफ़ाई नहीं किया जाएगा.