Attribution Reporting API क्रॉस वेब और ऐप्लिकेशन लागू करने की गाइड

Attribution Reporting API, एक ही डिवाइस पर होने वाले सोर्स और ट्रिगर के लिए, क्रॉस ऐप्लिकेशन और वेब एट्रिब्यूशन की सुविधा देता है. Chrome जैसे ब्राउज़र, रजिस्टर करने की प्रोसेस को ब्राउज़र में मैनेज करने के बजाय, Android के लिए एट्रिब्यूशन रिपोर्टिंग एपीआई को सोर्स और ट्रिगर, दोनों को रजिस्टर करने की अनुमति दे सकते हैं. इससे Android, साइटों और ऐप्लिकेशन, दोनों में सोर्स और ट्रिगर को मैच कर सकता है.

इस गाइड में, क्रॉस-ऐप्लिकेशन और वेब एट्रिब्यूशन सेट अप करने का तरीका बताया गया है.

क्रॉस-ऐप्लिकेशन और वेब एट्रिब्यूशन सेट अप करते समय, हमारा सुझाव है कि आप डीबग करने के तरीकों के बारे में भी जानें. इससे यह पक्का किया जा सकेगा कि आपका सेटअप सही तरीके से काम कर रहा है.

Android OS के साथ सोर्स और ट्रिगर रजिस्टर करना

क्रॉस-ऐप्लिकेशन और वेब एट्रिब्यूशन की सुविधा सिर्फ़ तब उपलब्ध होगी, जब एक ही डिवाइस पर ब्राउज़र और Android OS, दोनों में एट्रिब्यूशन रिपोर्टिंग एपीआई चालू हो. Android Attribution Reporting API की उपलब्धता, Attribution-Reporting-Support हेडर के ज़रिए भेजी जाती है. यह हेडर, डिवाइस पर उपलब्ध होने के हिसाब से, ऑपरेटिंग सिस्टम, वेब या दोनों दिखाएगा. अगर दोनों उपलब्ध हैं, तो विज्ञापन टेक्नोलॉजी के पास ब्राउज़र या ओएस में से किसी एक के साथ वेब सोर्स और वेब ट्रिगर रजिस्टर करने का विकल्प होगा.

विज्ञापन टेक्नोलॉजी को यह तय करना होगा कि वेब सोर्स या वेब ट्रिगर को ब्राउज़र या ओएस के साथ रजिस्टर करना है या नहीं.

  • सिर्फ़ वेब पर चलने वाले कैंपेन के लिए, विज्ञापन टेक्नोलॉजी विशेषज्ञ अब भी Chrome के एट्रिब्यूशन रिपोर्टिंग एपीआई की मदद से, सोर्स और ट्रिगर, दोनों को रजिस्टर कर सकते हैं. इसके अलावा, वे दोनों को ओएस को सौंपने का विकल्प भी चुन सकते हैं. सिर्फ़ वेब के लिए बने उन कैंपेन के लिए जहां सोर्स या ट्रिगर, वेबव्यू में हो सकता है, विज्ञापन टेक्नोलॉजी को सोर्स और ट्रिगर, दोनों के रजिस्ट्रेशन को ऑपरेटिंग सिस्टम को सौंपना होगा. ज़्यादा जानकारी के लिए, वेबव्यू से जुड़ा सेक्शन देखें.
  • डुप्लीकेट एट्रिब्यूशन रिपोर्ट बनाने से बचने के लिए, विज्ञापन टेक्नोलॉजी विशेषज्ञों को एक साथ Chrome और Android API, दोनों के साथ सोर्स और ट्रिगर रजिस्टर करने से बचना चाहिए.

  • ब्राउज़र और ओएस के लिए, एट्रिब्यूशन अलग-अलग होता है. अगर कोई सोर्स, ब्राउज़र के साथ रजिस्टर है, लेकिन ट्रिगर, ओएस के साथ रजिस्टर है, तो दोनों को मैच नहीं किया जा सकता.

  • जिन सोर्स से ऐप्लिकेशन या वेब ट्रिगर हो सकता है उनके लिए, विज्ञापन टेक्नोलॉजी को वेब सोर्स और ट्रिगर रजिस्ट्रेशन को Android Attribution Reporting API को सौंपने का सुझाव दिया जाता है.

  • ऐप्लिकेशन पर आधारित सोर्स से ट्रिगर होने वाले ट्रिगर के लिए, विज्ञापन टेक्नोलॉजी, Android एट्रिब्यूशन रिपोर्टिंग एपीआई को वेब ट्रिगर रजिस्ट्रेशन का काम सौंप सकती है.

  • जिन कैंपेन में सोर्स और ट्रिगर, दोनों ऐप्लिकेशन में होते हैं उनके लिए, दोनों को OS Attribution Reporting API के साथ रजिस्टर करना होगा.

ऐप्लिकेशन सोर्स और वेब ट्रिगर रजिस्टर करना

कुछ कैंपेन के लिए, सोर्स किसी ऐप्लिकेशन में हो सकता है, जबकि ट्रिगर उसी डिवाइस पर मोबाइल ब्राउज़र में मौजूद वेबसाइट पर होगा.

उदाहरण

कोई उपयोगकर्ता अपने पसंदीदा समाचार ऐप्लिकेशन में लेख पढ़ रहा है. उसे पेरिस के लिए सस्ती फ़्लाइट का विज्ञापन दिखता है और वह उत्साह से बुक करने के लिए क्लिक करता है. समाचार ऐप्लिकेशन में विज्ञापन दिखाने वाली विज्ञापन टेक्नोलॉजी, क्लिक सोर्स को Android Attribution Reporting API के साथ रजिस्टर करती है. उपयोगकर्ता को Chrome में विज्ञापन देने वाले के वेब पेज पर ले जाया जाता है, जहां वह ग्राहक में बदल सकता है. विज्ञापन देने वाले की साइट पर मौजूद विज्ञापन टेक्नोलॉजी, यह जांच करती है कि ओएस लेवल का एपीआई उपलब्ध है या नहीं. अगर उपलब्ध है, तो विज्ञापन टेक्नोलॉजी, सीधे Chrome के Attribution Reporting API के साथ रजिस्टर करने के बजाय, Chrome को ओएस के साथ रजिस्टर करने का निर्देश देकर कन्वर्ज़न ट्रिगर को रजिस्टर करती है. इसके बाद, ओएस-लेवल का Attribution Reporting API, ऐप्लिकेशन सोर्स और वेब ट्रिगर को मैच कर सकता है. साथ ही, काम की रिपोर्ट भेज सकता है.

ऐप्लिकेशन से वेब पर जाने वाले उपयोगकर्ताओं के लिए एट्रिब्यूशन फ़्लो
ऐप्लिकेशन से वेब पर जाने वाले उपयोगकर्ताओं के लिए एट्रिब्यूशन फ़्लो

ऐप्लिकेशन के सोर्स का रजिस्ट्रेशन:

  1. Daily News के Android ऐप्लिकेशन में मौजूद विज्ञापन टेक्नोलॉजी SDK टूल, registerSource() का इस्तेमाल करके क्लिक को रजिस्टर करता है

  2. Android पर Attribution Reporting API, registerSource() को दिए गए विज्ञापन टेक्नोलॉजी सर्वर के यूआरएल पर अनुरोध भेजता है

  3. सोर्स रजिस्टर करने के लिए, विज्ञापन टेक्नोलॉजी सर्वर, Attribution-Reporting-Register-Source हेडर के साथ जवाब देता है

वेब ट्रिगर रजिस्ट्रेशन:

  1. विज्ञापन टेक्नोलॉजी, ट्रिगर को रजिस्टर करती है और Attribution Reporting API में ओएस की उपलब्धता की जांच करती है

  2. वेब ARA, इस बारे में जानकारी दिखाता है कि किस प्लैटफ़ॉर्म पर यह सुविधा काम करती है

  3. OS-Trigger हेडर, वेब ARA API को OS ARA API के registerWebTrigger() फ़ंक्शन को कॉल करने के लिए कहता है

  4. registerWebTrigger() को कॉल करने की प्रोसेस, डिवाइस के अंदर होती है. इसलिए, डेवलपर को सीधे तौर पर ओएस के ज़रिए registerWebTrigger() को कॉल करने की ज़रूरत नहीं होती

  5. OS ARA, Attribution-Reporting-Register-OS-Trigger हेडर से मिले विज्ञापन टेक्नोलॉजी सर्वर यूआरएल पर अनुरोध भेजता है

  6. विज्ञापन टेक्नोलॉजी, OS API की मदद से ट्रिगर रजिस्ट्रेशन पूरा करेगी

  7. OS ARA, ऐप्लिकेशन<>ऐप्लिकेशन एट्रिब्यूशन के लिए लागू किए गए उसी लॉजिक के हिसाब से एट्रिब्यूशन करेगा और वही रिपोर्ट भेजेगा

वर्कफ़्लो

नीचे दिए गए चरणों में, टास्क पूरा करने का तरीका बताया गया है:

  1. ऐप्लिकेशन की विज्ञापन टेक्नोलॉजी, Android के एट्रिब्यूशन रिपोर्टिंग एपीआई के साथ एक सोर्स को इन अडजस्टमेंट के साथ रजिस्टर करती है:

    • किसी ऐसे ऐप्लिकेशन सोर्स को रजिस्टर करने के लिए जिसकी वेबसाइट पर कन्वर्ज़न होने की संभावना है, Attribution-Reporting-Register-Source रिस्पॉन्स हेडर में ऐप्लिकेशन डेस्टिनेशन के बजाय वेब डेस्टिनेशन (eTLD+1) शामिल होना चाहिए.
    Attribution-Reporting-Register-Source: {
        "web_destination": "https://advertiser.example",
        ...
    }
    
    वाला सेक्शन देखें
    • हो सकता है कि कुछ विज्ञापन देने वाले, 302 रीडायरेक्ट चेन का इस्तेमाल करके, मेज़रमेंट की सेवा देने वाली कई कंपनियों (उदाहरण के लिए, तीसरे पक्ष का मेज़रमेंट टूल या आंकड़ों का टूल) का इस्तेमाल कर रहे हों. कुछ मामलों में, Attribution Reporting API, बैकग्राउंड में Attribution-Reporting-Redirect हेडर में बताए गए रीडायरेक्ट पाथ का इस्तेमाल करेगा. साथ ही, मौजूदा नेविगेशन अनुरोधों के लिए, 302 रीडायरेक्ट पाथ फ़ोरग्राउंड में लागू होगा. ये अनुरोध एक ही यूआरएल पर भेजे जाएंगे. इससे, तीसरे पक्ष के मेज़रमेंट प्रोवाइडर के रजिस्ट्रेशन की गिनती दो बार हो सकती है. रजिस्ट्रेशन की गिनती दो बार होने से रोकने के लिए, विज्ञापन टेक्नोलॉजी विशेषज्ञ, रीडायरेक्ट करने के व्यवहार में बदलाव कर सकते हैं. इससे, Attribution Reporting API रजिस्ट्रेशन को किसी ऐसे यूआरएल पर भेजा जा सकता है जो पहले से तय हो और कोई दूसरा यूआरएल न हो.
    • इस सुविधा को चालू करने के लिए, विज्ञापन टेक्नोलॉजी विशेषज्ञों को रजिस्ट्रेशन अनुरोध का जवाब देते समय, एक नया एचटीटीपी हेडर शामिल करना होगा:

      • हेडर Attribution-Reporting-Redirect-Config है
      • हेडर की वैल्यू, redirect-302-to-well-known होनी चाहिए
      Attribution-Reporting-Redirect-Config: redirect-302-to-well-known
      
    • सोर्स के रजिस्ट्रेशन की बाकी प्रोसेस, ऐप्लिकेशन-टू-ऐप्लिकेशन सोर्स रजिस्ट्रेशन की स्टैंडर्ड प्रोसेस जैसी ही है.

    सेक्शन देखें
  2. विज्ञापन देने वाले की वेबसाइट पर मौजूद विज्ञापन टेक्नोलॉजी, ट्रिगर को रजिस्टर करती है. इसके लिए, वह Chrome से Android Attribution Reporting API को रजिस्टर करने के लिए कहती है:

    • जब कोई उपयोगकर्ता किसी वेबसाइट पर कन्वर्ज़न पूरा कर लेता है, तो विज्ञापन टेक्नोलॉजी, Chrome के साथ ट्रिगर को रजिस्टर करने का अनुरोध करेगी

      1. ट्रिगर रजिस्टर करने के अनुरोध के लिए, पिक्सल या fetch() अनुरोध का इस्तेमाल किया जा सकता है

      2. Attribution-Reporting-Support अनुरोध हेडर को Chrome, विज्ञापन टेक्नोलॉजी को दिखाता है. अगर Chrome ब्राउज़र और Android डिवाइस, दोनों पर एपीआई चालू है, तो हेडर os, web दिखाएगा

      Attribution-Reporting-Support: os, web
      
    • इसके बाद, विज्ञापन टेक्नोलॉजी को Chrome को Attribution-Reporting-Register-OS-Trigger हेडर का इस्तेमाल करके, ओएस को अनुमति देनी चाहिए. इस हेडर में:

      1. Chrome को OS को रजिस्ट्रेशन करने की अनुमति देता है

      2. Chrome, OS API फ़ंक्शन को कॉल करके, OS को रजिस्ट्रेशन की जानकारी देता है registerWebTrigger()

        • registerWebTrigger() को कॉल करने की प्रोसेस, बैकग्राउंड में होती है. विज्ञापन टेक्नोलॉजी को registerWebTrigger() को सीधे कॉल करने की ज़रूरत नहीं होती
      3. OS API, ब्राउज़र से पास किए गए विज्ञापन टेक्नोलॉजी यूआरएल पर सेकंडरी एपीआई कॉल शुरू करता है

      Attribution-Reporting-Register-OS-Trigger: "https://adtech.example/register-trigger",
      "https://other-adtech.example/register-trigger"
      
    • कुछ मामलों में, Attribution-Reporting-Support हेडर उपलब्ध नहीं होता और इसे भेजा नहीं जा सकता. ऐसा होने पर भी, विज्ञापन टेक्नोलॉजी, ट्रिगर रजिस्ट्रेशन को मैनेज करने के लिए, Attribution-Reporting-Info हेडर को शामिल करके, पसंदीदा प्लैटफ़ॉर्म सेट कर सकती है. कुंजी, preferred-platform है और अनुमति वाली वैल्यू, os और web हैं. ब्राउज़र, पसंदीदा प्लैटफ़ॉर्म के उपलब्ध होने पर उसका इस्तेमाल करेगा. अगर ओएस उपलब्ध नहीं है, तो वेब प्लैटफ़ॉर्म का इस्तेमाल किया जाएगा.

    Attribution-Reporting-Info: preferred-platform=os
    
    • ट्रिगर रजिस्ट्रेशन पूरा करने के लिए, विज्ञापन टेक्नोलॉजी के एंडपॉइंट को रिस्पॉन्स हेडर का इस्तेमाल करके, Android Attribution Reporting API के अनुरोध का जवाब देना चाहिए.
    Attribution-Reporting-Register-Trigger: {
        "event_trigger_data": [{"trigger_data":"1"}],
        "aggregatable_trigger_data": [
            {"key_piece":"0x400","source_keys":["campaignCounts"]},
            {"key_piece":"0xA80","source_keys":["geoValue"]}
        ],
        ...
    }
    

वेब सोर्स और ऐप्लिकेशन ट्रिगर रजिस्टर करना

कुछ कैंपेन के लिए, मोबाइल ब्राउज़र में किसी साइट पर सोर्स दिख सकता है, जबकि ट्रिगर उसी डिवाइस पर किसी ऐप्लिकेशन में दिख सकता है.

उदाहरण

एक व्यक्ति अपने Android फ़ोन पर Chrome ब्राउज़र में किसी साइट को ब्राउज़ कर रहा है. उन्हें अपने पसंदीदा स्टोर से स्वेटर का विज्ञापन दिखता है. वे विज्ञापन पर क्लिक करते हैं और उन्हें उस ऐप्लिकेशन पर ले जाया जाता है जिसे उन्होंने पहले ही डाउनलोड कर लिया है. जिस वेबसाइट पर विज्ञापन दिखाया गया था उस पर मौजूद विज्ञापन टेक्नोलॉजी, क्लिक सोर्स को रजिस्टर करती है. इसके लिए, Chrome पर Attribution Reporting API का इस्तेमाल करने के बजाय, Chrome को Android Attribution Reporting API को रजिस्टर करने का निर्देश दिया जाता है. उपयोगकर्ता, शॉपिंग ऐप्लिकेशन में स्वेटर खरीदता है. इसके बाद, विज्ञापन देने वाले के ऐप्लिकेशन में मौजूद विज्ञापन टेक्नोलॉजी, Android Attribution Reporting API के साथ कन्वर्ज़न ट्रिगर को रजिस्टर करती है. ओएस-लेवल पर काम करने वाला Attribution Reporting API, वेब सोर्स और ऐप्लिकेशन ट्रिगर को मैच कर सकता है. साथ ही, काम की रिपोर्ट भेज सकता है.

वेब से ऐप्लिकेशन पर जाने वाले उपयोगकर्ताओं के लिए एट्रिब्यूशन फ़्लो
वेब से ऐप्लिकेशन पर जाने वाले उपयोगकर्ताओं के लिए एट्रिब्यूशन फ़्लो

वेब सोर्स का रजिस्ट्रेशन:

  1. विज्ञापन टेक्नोलॉजी, किसी सोर्स को रजिस्टर करती है और Attribution Reporting API में ओएस की उपलब्धता की जांच करती है

  2. वेब ARA, इस बारे में जानकारी दिखाता है कि किस प्लैटफ़ॉर्म पर यह सुविधा काम करती है

  3. OS-Source हेडर, वेब ARA API को OS ARA API के registerWebSource() फ़ंक्शन को कॉल करने के लिए कहता है

  4. registerWebSource() को कॉल करने की प्रोसेस, बैकग्राउंड में होती है. इसलिए, डेवलपर को सीधे ओएस से registerWebSource() को कॉल करने की ज़रूरत नहीं होती

  5. OS ARA, Attribution-Reporting-Register-OS-Source हेडर से मिले विज्ञापन टेक्नोलॉजी सर्वर यूआरएल पर अनुरोध भेजता है

  6. विज्ञापन टेक्नोलॉजी, OS API की मदद से सोर्स रजिस्ट्रेशन की प्रोसेस पूरी करेगी

ऐप्लिकेशन ट्रिगर रजिस्ट्रेशन:

  1. कपड़ों के स्टोर के Android ऐप्लिकेशन में मौजूद विज्ञापन टेक्नोलॉजी SDK टूल, ट्रिगर को OS ARA के साथ रजिस्टर करता है

  2. Android पर Attribution Reporting API, registerTrigger() को दिए गए विज्ञापन टेक्नोलॉजी सर्वर के यूआरएल पर अनुरोध भेजता है

  3. ट्रिगर रजिस्ट्रेशन पूरा करने के लिए, विज्ञापन टेक्नोलॉजी सर्वर Attribution-Reporting-Register-Trigger हेडर के साथ जवाब देता है

  4. OS ARA, ऐप्लिकेशन<>ऐप्लिकेशन एट्रिब्यूशन के लिए लागू किए गए उसी लॉजिक के हिसाब से एट्रिब्यूशन करेगा और वही रिपोर्ट भेजेगा

वर्कफ़्लो

नीचे दिए गए चरणों में, टास्क पूरा करने का तरीका बताया गया है:

  1. पब्लिशर की वेबसाइट पर मौजूद विज्ञापन टेक्नोलॉजी, सोर्स को रजिस्टर करती है. इसके लिए, वह Chrome को Android Attribution Reporting API को रजिस्टर करने का निर्देश देती है:

    • वेब से ऐप्लिकेशन के इस्तेमाल के उदाहरण के लिए, किसी सोर्स को रजिस्टर करते समय, एट्रिब्यूशन सोर्स पैरामीटर को सीधे तौर पर तय करना होगा. इसके लिए, attributionsrc टैग या JavaScript रजिस्टरेशन का इस्तेमाल किया जा सकता है
    • इस उदाहरण में, सोर्स पैरामीटर की जानकारी देने के लिए attributionsrc टैग का इस्तेमाल किया गया है:
    <img src="https://adtech.example/conversionpixel"
    attributionsrc="https://adtech.example/register-source?purchase=12">
    
  2. Chrome, विज्ञापन टेक्नोलॉजी को Attribution-Reporting-Support अनुरोध हेडर दिखाता है. अगर Chrome ब्राउज़र और Android डिवाइस, दोनों पर एपीआई चालू है, तो हेडर os, web दिखाएगा.

    Attribution-Reporting-Support: os, web
    
  3. विज्ञापन टेक्नोलॉजी को Chrome को, Attribution-Reporting-Register-OS-Source हेडर का इस्तेमाल करके, ओएस-लेवल एपीआई को काम सौंपने के लिए कहना चाहिए. इस हेडर में:

    1. Chrome को OS को रजिस्ट्रेशन करने की अनुमति देता है
    2. Chrome, OS API फ़ंक्शन को कॉल करके, OS को रजिस्ट्रेशन की जानकारी देता है registerWebSource()
    3. registerWebSource() को कॉल करने की प्रोसेस, विज्ञापन टेक्नोलॉजी के तहत होती है. विज्ञापन टेक्नोलॉजी को registerWebSource() को सीधे कॉल करने की ज़रूरत नहीं होती
    4. OS API, ब्राउज़र से पास किए गए विज्ञापन टेक्नोलॉजी यूआरएल पर सेकंडरी एपीआई कॉल शुरू करता है
    Attribution-Reporting-Register-OS-Source: "https://adtech.example/register-source"
    
    • कुछ मामलों में, Attribution-Reporting-Support हेडर उपलब्ध नहीं होता. ऐसा होने पर भी, विज्ञापन टेक्नोलॉजी, सोर्स रजिस्ट्रेशन को मैनेज करने के लिए, Attribution-Reporting-Info हेडर को शामिल करके, पसंदीदा प्लैटफ़ॉर्म सेट कर सकती है. कुंजी, preferred-platform है और वैल्यू के तौर पर os और web का इस्तेमाल किया जा सकता है. ब्राउज़र, पसंदीदा प्लैटफ़ॉर्म उपलब्ध होने पर उसका इस्तेमाल करेगा. अगर ओएस उपलब्ध नहीं है, तो वह वेब प्लैटफ़ॉर्म पर फ़ॉलबैक करेगा.
    Attribution-Reporting-Info: preferred-platform=os
    
    • सोर्स का रजिस्ट्रेशन पूरा करने के लिए, विज्ञापन टेक्नोलॉजी के एंडपॉइंट को रिस्पॉन्स हेडर Attribution-Reporting-Register-Source के साथ, Android Attribution Reporting API के अनुरोध का जवाब देना चाहिए. जवाब में, डेस्टिनेशन फ़ील्ड में ऐप्लिकेशन डेस्टिनेशन की जानकारी भी होनी चाहिए.
    Attribution-Reporting-Register-Source: {
        "source_event_id":"123001",
        "destination":"android-app://com.example.advertiser",
        ...
    }
    
  4. विज्ञापन देने वाले के ऐप्लिकेशन में मौजूद विज्ञापन टेक्नोलॉजी, Android Attribution Reporting API के साथ एक ट्रिगर रजिस्टर करती है:

ऐसे कैंपेन जिनमें ऐप्लिकेशन और वेब, दोनों संभावित डेस्टिनेशन हैं

  1. दो डेस्टिनेशन सेट अप करना

    • कुछ कैंपेन, विज्ञापन देने वाले के ऐप्लिकेशन या उसके वेब पेज पर रीडायरेक्ट करने के लिए सेट अप किए जा सकते हैं. यह कई बातों पर निर्भर करता है. जैसे, उपयोगकर्ता के पास ऐप्लिकेशन इंस्टॉल है या नहीं.
    • ऐसे मामलों में, हमारा सुझाव है कि सोर्स रजिस्ट्रेशन को ऑपरेटिंग सिस्टम को सौंपें. ऐसा तब करें, जब यह सुविधा उपलब्ध हो. इससे, ट्रिगर होने की जगह के बावजूद, सोर्स को सही तरीके से एट्रिब्यूट किया जा सकता है. ओएस के साथ सोर्स को रजिस्टर करते समय, संबंधित पैरामीटर में ऐप्लिकेशन और वेब डेस्टिनेशन, दोनों की जानकारी दी जा सकती है.
    • ऐप्लिकेशन डेस्टिनेशन, destination फ़ील्ड में होना चाहिए
    • वेब डेस्टिनेशन, web_destination फ़ील्ड में होना चाहिए
    • Chrome डेवलपर को ध्यान रखना चाहिए कि OS के लिए destination फ़ील्ड, ऐप्लिकेशन पैकेज होना चाहिए, न कि यूआरएल.
    Attribution-Reporting-Register-Source: {
        "source_event_id":"123001",
        "destination":"android-app://com.example.advertiser",
        "web_destination": "https://example.advertiser"
        ...
    }
    
    • रफ़ रिपोर्टिंग के अगले सेक्शन में बताया जाएगा कि दो डेस्टिनेशन का इस्तेमाल करने से, आपकी रिपोर्ट में मौजूद ग़ैर-ज़रूरी डेटा पर क्या असर पड़ सकता है.
  2. ड्यूअल डेस्टिनेशन सोर्स के लिए, इवेंट-लेवल की रिपोर्ट में ग़ैर-ज़रूरी डेटा को कम करने के लिए, बारीक रिपोर्टिंग का इस्तेमाल करें:

    • अगर सोर्स रजिस्ट्रेशन में ओएस (ऐप्लिकेशन) और वेब डेस्टिनेशन, दोनों की जानकारी दी गई है, तो इवेंट-लेवल की रिपोर्ट से यह पता चलेगा कि ट्रिगर डिफ़ॉल्ट रूप से वेब डेस्टिनेशन या ऐप्लिकेशन डेस्टिनेशन में हुआ है या नहीं. हालांकि, निजता की सीमाओं को बनाए रखने के लिए, इन रिपोर्ट में ज़्यादा नॉइज़ जोड़ा जाएगा.
    • विज्ञापन टेक्नोलॉजी विशेषज्ञ, Attribution-Reporting-Register-Source हेडर के नीचे मौजूद coarse_event_report_destinations फ़ील्ड का इस्तेमाल करके, ज़्यादा जानकारी वाली रिपोर्टिंग चालू कर सकते हैं और ग़ैर-ज़रूरी डेटा को कम कर सकते हैं. अगर coarse_event_report_destinations फ़ील्ड की जानकारी वाले सोर्स को एट्रिब्यूशन मिलता है, तो उससे तैयार की गई रिपोर्ट में ऐप्लिकेशन और वेब डेस्टिनेशन, दोनों शामिल होते हैं. इसमें इस बात का कोई फ़र्क़ नहीं पड़ता कि असल ट्रिगर कहां हुआ था. हालांकि, इसमें ऐप्लिकेशन या वेब डेस्टिनेशन की जानकारी वाली रिपोर्ट की तुलना में कम गड़बड़ियां होती हैं.
    • एग्रीगेट रिपोर्ट में कोई बदलाव नहीं होता.

Chrome के कस्टम टैब का इस्तेमाल करने वाले ऐप्लिकेशन के लिए

कुछ ऐप्लिकेशन, वेब कॉन्टेंट को रेंडर करने के लिए कस्टम टैब का इस्तेमाल कर सकते हैं. सभी ऐप्लिकेशन और मोबाइल वेब साइटों को मेज़र करते समय, कस्टम टैब एक सामान्य वेब पेज की तरह काम करते हैं.

  1. ऐप्लिकेशन सोर्स और कस्टम टैब ट्रिगर रजिस्टर करें:

  2. कस्टम टैब का सोर्स और ऐप्लिकेशन ट्रिगर रजिस्टर करना:

  3. सीसीटी सोर्स और सीसीटी ट्रिगर रजिस्टर करना

वेबव्यू का इस्तेमाल करने वाले ऐप्लिकेशन के लिए

कुछ ऐप्लिकेशन, कॉन्टेंट दिखाने के लिए वेबव्यू का इस्तेमाल कर सकते हैं. वेबव्यू के इस्तेमाल के कई उदाहरण हैं. जैसे, विज्ञापन रेंडर करना, वेब कॉन्टेंट होस्ट करना या वेब फ़ॉर्मैट के हिसाब से बेहतर कस्टम ऐप्लिकेशन की सुविधाएं.

  1. वेबव्यू को एट्रिब्यूशन रिपोर्टिंग एपीआई का इस्तेमाल करने की अनुमति देने के लिए, एम्बेड किए गए ऐप्लिकेशन को सही अनुमतियों के साथ कॉन्फ़िगर करना होगा.

  2. वेबव्यू में सिर्फ़ ओएस-लेवल का एट्रिब्यूशन उपलब्ध है. Attribution-Reporting-Support हेडर सिर्फ़ os दिखाएगा. ऐसा सिर्फ़ तब होगा, जब Android Attribution Reporting API उपलब्ध हो.

  3. ओएस को काम सौंपते समय, वेबव्यू registerSource या registerWebSource और registerTrigger या registerWebTrigger का इस्तेमाल कर सकता है. वेबव्यू में किन तरीकों का इस्तेमाल किया जाए, यह तय करने का अधिकार उस ऐप्लिकेशन के पास होता है जो वेबव्यू को रेंडर करता है. यह तय करने के लिए, हर वेबव्यू के हिसाब से तय किया जाता है.

    • registerSource और registerWebSource के बीच का अंतर यह है कि किस सोर्स को पब्लिशर के तौर पर लॉग किया जाता है. registerSource का इस्तेमाल करने पर, ऐप्लिकेशन को पब्लिशर के तौर पर लॉग किया जाता है. registerSource का इस्तेमाल कब करना है, इसका एक उदाहरण यह है कि कोई पब्लिशर ऐप्लिकेशन, वेबव्यू का इस्तेमाल करके रेंडर किया गया विज्ञापन दिखाता है. registerWebSource का इस्तेमाल करने पर, वेबव्यू में होस्ट की गई वेबसाइट को पब्लिशर के तौर पर लॉग किया जाता है. registerWebSource का इस्तेमाल कब करना है, इसका एक उदाहरण यह है कि कोई ऐप्लिकेशन वेबव्यू होस्ट करता है और वेबव्यू से रेंडर की जा रही वेबसाइट पर विज्ञापन दिखाए जा रहे हैं. registerTrigger और registerWebTrigger एक जैसे काम करते हैं. तीसरे आइटम में दिए गए चार्ट में, अलग-अलग स्थितियों के बारे में बताया गया है. इनमें, ऐप्लिकेशन या SDK टूल डेवलपर के registerSource या registerWebSource और registerTrigger या registerWebTrigger का इस्तेमाल करने के लिए, एपीआई को कॉन्फ़िगर करने के बारे में बताया गया है.
    • डिफ़ॉल्ट रूप से, Android Attribution Reporting API को कॉल करते समय वेबव्यू, registerSource और registerWebTrigger का इस्तेमाल करेगा. यह सोर्स को ऐप्लिकेशन से जोड़ता है और ट्रिगर होने पर, वेबव्यू में यूआरएल के टॉप-लेवल ऑरिजिन के साथ ट्रिगर करता है.
      • अगर किसी ऐप्लिकेशन को अलग तरह के व्यवहार की ज़रूरत है, तो उसे androidx.webkit.WebViewSettingsCompat क्लास पर, नए तरीके setAttributionRegistrationBehavior का इस्तेमाल करना होगा. इस तरीके से यह तय किया जा सकेगा कि वेबव्यू को registerSource() या registerTrigger() के बजाय registerWebSource() या registerWebTrigger() को कॉल करना चाहिए या नहीं.

      • शुरू किए गए हर वेबव्यू के लिए, यह व्यवहार सेट करना होगा.

      • अगर विज्ञापन टेक्नोलॉजी SDK टूल, वेबव्यू को शुरू कर रहा है, तो SDK टूल को यह डिफ़ॉल्ट व्यवहार सेट करना होगा.

      • जिन ऐप्लिकेशन को registerWebSource() का इस्तेमाल करके, सोर्स रजिस्ट्रेशन को ऐप्लिकेशन के बजाय वेबव्यू में मौजूद वेबसाइट से जोड़ना है उन्हें वेब ऐप्लिकेशन की अनुमति वाली सूची में शामिल होना होगा. अनुमति वाली सूची में शामिल होने के लिए, यह फ़ॉर्म भरें. अनुमति वाली सूची का मकसद, वेब कॉन्टेक्स्ट के लिए भरोसा बनाने से जुड़ी निजता से जुड़ी चिंताओं को कम करना है.

      वैल्यू जानकारी इस्तेमाल के उदाहरण
      APP_SOURCE_AND_WEB_TRIGGER (डिफ़ॉल्ट) इससे ऐप्लिकेशन, वेबव्यू से ऐप्लिकेशन सोर्स (ऐप्लिकेशन पैकेज के नाम से जुड़े सोर्स) और वेब ट्रिगर (eTLD+1 से जुड़े ट्रिगर) रजिस्टर कर सकते हैं. वे ऐप्लिकेशन जो वेब ब्राउज़िंग की सुविधा चालू करने के बजाय, विज्ञापन दिखाने के लिए वेबव्यू का इस्तेमाल करते हैं
      WEB_SOURCE_AND_WEB_TRIGGER इससे ऐप्लिकेशन, वेबव्यू से वेब सोर्स और वेब ट्रिगर रजिस्टर कर सकते हैं. वेबव्यू पर आधारित ब्राउज़र ऐप्लिकेशन, जहां वेबव्यू में वेबसाइटों पर विज्ञापन इंप्रेशन और कन्वर्ज़न, दोनों हो सकते हैं.
      APP_SOURCE_AND_APP_TRIGGER इससे ऐप्लिकेशन, वेबव्यू से ऐप्लिकेशन के सोर्स और ऐप्लिकेशन ट्रिगर रजिस्टर कर सकते हैं. वेबव्यू पर आधारित ऐप्लिकेशन, जहां विज्ञापन इंप्रेशन और कन्वर्ज़न को हमेशा ऐप्लिकेशन से जोड़ा जाना चाहिए, न कि वेबव्यू के eTLD+1 से.
      बंद है वेबव्यू से सोर्स और ट्रिगर रजिस्ट्रेशन की सुविधा बंद कर देता है.
    1. वेबव्यू से सोर्स और ट्रिगर रजिस्ट्रेशन
    2. विज्ञापन टेक्नोलॉजी विशेषज्ञों को Attribution-Reporting-Register-OS-Source हेडर का इस्तेमाल करके, सोर्स रजिस्ट्रेशन का जवाब देना चाहिए. वेबव्यू के लिए सेट किए गए व्यवहार के आधार पर, यह ओएस के साथ registerSource() या registerWebSource() को कॉल करेगा. साथ ही, Android Attribution Reporting API से विज्ञापन टेक्नोलॉजी यूआरएल पर सेकंडरी एपीआई कॉल शुरू करेगा.

      • सोर्स का रजिस्ट्रेशन पूरा करने के लिए, विज्ञापन टेक्नोलॉजी के एंडपॉइंट को रिस्पॉन्स हेडर के साथ, Android Attribution Reporting API के अनुरोध का जवाब देना चाहिए.
       Attribution-Reporting-Register-OS-Source: {
        "source_event_id":"123001",
        "destination":"android-app://com.example.advertiser",
        ...
      }
      
    3. सोर्स रजिस्ट्रेशन का बाकी हिस्सा पहले जैसा ही रहेगा.

    4. विज्ञापन टेक्नोलॉजी विशेषज्ञों को Attribution-Reporting-Register-OS-Trigger हेडर का इस्तेमाल करके, ट्रिगर रजिस्ट्रेशन का जवाब देना चाहिए. वेबव्यू के लिए सेट किए गए व्यवहार के आधार पर, यह ओएस के साथ registerTrigger() या registerWebTrigger() को कॉल करेगा. साथ ही, Rb से विज्ञापन टेक्नोलॉजी यूआरएल पर सेकंडरी एपीआई कॉल शुरू करेगा.

    5. ट्रिगर रजिस्ट्रेशन पूरा करने के लिए, विज्ञापन टेक्नोलॉजी के एंडपॉइंट को रिस्पॉन्स हेडर के साथ, Android Attribution Reporting API के अनुरोध का जवाब देना चाहिए.

    Attribution-Reporting-Register-OS-Trigger: {
        "event_trigger_data": [{"trigger_data":"1"}],
        "aggregatable_trigger_data": [
            {"key_piece":"0x400","source_keys":["campaignCounts"]},
            {"key_piece":"0xA80","source_keys":["geoValue"]}
        ],
        ...
    }
    

डीबग

किसी ऐप्लिकेशन को वेब पर लागू करने के लिए सेट अप करते समय, हमारा सुझाव है कि आप डीबग रिपोर्ट सेट अप करें. इससे यह पुष्टि की जा सकेगी कि सोर्स और ट्रिगर सही तरीके से रजिस्टर किए जा रहे हैं या नहीं. अगर वे रजिस्टर नहीं किए जा रहे हैं, तो इसकी वजह की जानकारी भी मिलेगी.

एट्रिब्यूशन रिपोर्टिंग की गड़बड़ियों को ठीक करने के सामान्य चरणों के बारे में जानने के लिए, गड़बड़ी को ठीक करने के बारे में जानकारी देखें.