विज्ञापन आईडी एक्सेस के बिना मोबाइल ऐप एट्रिब्यूशन को कैसे संभालें? आप GAID या IDFA के बिना ऐप इंस्टॉल एट्रिब्यूट कर सकते हैं, लेकिन इसके लिए बुनियादी आर्किटेक्चर बदल जाता है: लगातार विज्ञापन पहचानकर्ता पर निर्भर रहने के बजाय, आधुनिक पाइपलाइनें प्लेटफ़ॉर्म-मध्यस्थता वाले एट्रिब्यूशन फ़्रेमवर्क, Google Play Install Referrer, फ़र्स्ट-पार्टी प्रासंगिक पैरामीटर रूटिंग और सर्वर-साइड सत्यापन को जोड़ती हैं।
विज्ञापन आईडी विज्ञापन और माप उपयोग के मामलों के लिए मोबाइल प्लेटफ़ॉर्म द्वारा प्रदान किया जाने वाला एक रीसेट करने योग्य सॉफ़्टवेयर पहचानकर्ता है। एंड्रॉइड पर, यह Google Play सेवाओं के माध्यम से प्रदान की जाने वाली विज्ञापन आईडी है; Apple प्लेटफ़ॉर्म पर, IDFA एक्सेस को ऐप ट्रैकिंग ट्रांसपेरेंसी फ़्रेमवर्क द्वारा नियंत्रित किया जाता है।
| शब्द | परिभाषा |
|---|---|
| विज्ञापन आईडी (Advertising ID) | मोबाइल विज्ञापन माप के लिए उपयोग किया जाने वाला एक रीसेट करने योग्य सॉफ़्टवेयर पहचानकर्ता। |
| GAID | एंड्रॉइड डिवाइस पर Google Play सेवाओं के माध्यम से प्रबंधित Google विज्ञापन आईडी। |
| IDFA | iOS पर ऐप ट्रैकिंग ट्रांसपेरेंसी द्वारा नियंत्रित विज्ञापनदाताओं के लिए Apple पहचानकर्ता। |
| प्रासंगिक पैरामीटर रूटिंग (Contextual Parameter Routing) | उपयोगकर्ता-आरंभित वेब-से-ऐप यात्रा के माध्यम से अभियान या रेफ़रल संदर्भ का फ़र्स्ट-पार्टी ट्रांसमिशन। |
संक्षेप में (TL;DR): आईडी-मुक्त मोबाइल एट्रिब्यूशन का सारांश
Google विज्ञापन आईडी को किसी एक सिंगल पहचानकर्ता से प्रतिस्थापित नहीं किया जाता है। इसके बजाय, एट्रिब्यूशन अलग-अलग, उद्देश्य-निर्मित प्रिमिटिव में विभाजित हो जाता है:
-
सशुल्क विज्ञापन अभियान रिपोर्टिंग (एंड्रॉइड): Play-वितरित इंस्टॉल पर स्टोर-मध्यस्थता वाले अभियान पैरामीटर पुनर्प्राप्ति के लिए Google Play Install Referrer API का उपयोग करें।
-
सशुल्क विज्ञापन अभियान रिपोर्टिंग (iOS): प्लेटफ़ॉर्म-हस्ताक्षरित, गोपनीयता-संरक्षण पोस्टबैक के लिए Apple AdAttributionKit और SKAdNetwork का उपयोग करें।
-
वेब-से-ऐप ऑनबोर्डिंग और रेफ़रल: पहले लॉन्च पर प्रोमो कोड, रूम आईडी और इनवाइटर टोकन को पुनर्स्थापित करने के लिए फ़र्स्ट-पार्टी इंस्टॉल-संदर्भ पुनर्स्थापना परत (जैसे OpoInstall) का उपयोग करें।
-
क्रॉस-ऐप रीटारगेटिंग: इसके लिए अधिकृत प्लेटफ़ॉर्म-समर्थित पहचानकर्ता या माप तंत्र और लागू प्लेटफ़ॉर्म नीतियों, उपयोगकर्ता नियंत्रणों और सहमति आवश्यकताओं के अनुपालन की आवश्यकता होती है।
आर्किटेक्चर निर्णय मैट्रिक्स: सही एट्रिब्यूशन प्रिमिटिव चुनना
अपने एप्लिकेशन के लिए उचित तकनीकी तंत्र निर्धारित करने के लिए, प्लेटफ़ॉर्म क्षमताओं के विरुद्ध अपनी विशिष्ट परिचालन आवश्यकताओं का मूल्यांकन करें:
| कार्यात्मक आवश्यकता | प्राथमिक तकनीकी प्रिमिटिव | GAID / IDFA निर्भरता | एट्रिब्यूशन आउटपुट प्रकार |
|---|---|---|---|
| Play Store विज्ञापन अभियान माप | Google Play Install Referrer API | कोई नहीं (स्टोर URL के माध्यम से संचालित होता है) | स्टोर-प्रदान किया गया इंस्टॉल संदर्भ |
| iOS विज्ञापन नेटवर्क माप | Apple AdAttributionKit / SKAdNetwork | कोई नहीं (प्लेटफ़ॉर्म-मध्यस्थता) | गोपनीयता-संरक्षण प्लेटफ़ॉर्म पोस्टबैक |
| इन-ऐप ऑनबोर्डिंग और डिफ़र्ड डीप लिंक्स | फ़र्स्ट-पार्टी प्रासंगिक पैरामीटर रूटिंग | कोई नहीं (फ़र्स्ट-पार्टी संदर्भ) | पहले लॉन्च पर रीयल-टाइम कस्टम पेलोड |
| उपयोगकर्ता-से-उपयोगकर्ता रेफ़रल बाइंडिंग | डायनेमिक रेफ़रल टोकन | कोई नहीं (सत्र/खाता स्तर) | प्रत्यक्ष इनवाइटर-इनवाइटी खाता युग्मन |
| क्रॉस-ऐप उपयोगकर्ता रीटारगेटिंग | प्लेटफ़ॉर्म-समर्थित विज्ञापन तंत्र | आवश्यक नहीं; तंत्र और नीति पर निर्भर करता है | उपयोगकर्ता-स्तर या समूह-स्तर पहचानकर्ता |
GAID प्रतिस्थापन: वास्तव में क्या काम करता है
जब इंजीनियरिंग टीमें “GAID प्रतिस्थापन” की खोज करती हैं, तो वे अक्सर एक ही टूल से कई डिस्कनेक्टेड परिचालन समस्याओं को हल करने का प्रयास कर रही होती हैं। प्रोडक्शन में, GAID-निर्भर आर्किटेक्चर को चार स्वतंत्र समाधानों में विघटित किया जाना चाहिए:
Legacy GAID Workflows
│
┌───────────────────────────┼───────────────────────────┐
│ │ │
▼ ▼ ▼
Paid Campaign ROI Web-to-App Routing Referral Binding
│ │ │
▼ ▼ ▼
Play Install Referrer / First-Party Context First-Party Referral
AdAttributionKit Parameter Routing Token Restoration
-
GAID-आधारित इंस्टॉल संदर्भ पुनर्प्राप्ति को बदलना: Play-वितरित इंस्टॉल के लिए जहां लागू हो, Google Play Install Referrer का उपयोग करें, साथ ही विज्ञापन-नेटवर्क एकीकरण और प्लेटफ़ॉर्म-समर्थित एट्रिब्यूशन API का उपयोग करें। ये फ़्रेमवर्क लगातार हार्डवेयर या विज्ञापन पहचानकर्ताओं को उजागर किए बिना स्थापना मूल संदर्भ प्रदान करते हैं।
-
ऑनबोर्डिंग और डीप लिंंकिंग के लिए GAID को बदलना: फ़र्स्ट-पार्टी इंस्टॉल-संदर्भ पुनर्स्थापना परत (जैसे OpoInstall) को तैनात करें। क्लिक लॉग से जुड़ने के लिए विज्ञापन आईडी का उपयोग करने के बजाय, स्वामित्व वाले अभियान URL के माध्यम से डायनेमिक पैरामीटर पास करें और क्लाइंट SDK के माध्यम से पहले ऐप लॉन्च पर उन्हें पुनर्स्थापित करें।
-
उपयोगकर्ता पहचान के लिए GAID को बदलना: डिवाइस-स्तरीय विज्ञापन कुंजियों के बजाय प्रमाणित फ़र्स्ट-पार्टी खाता प्रणालियों (जैसे OAuth या आंतरिक उपयोगकर्ता UUID) का उपयोग करें।
कोर आर्किटेक्चरल वर्गीकरण: विभिन्न प्रिमिटिव क्या प्रदान करते हैं
| माप लक्ष्य | अंतनिहित संकेत | उपयोगकर्ता-स्तर पहचानकर्ता? | प्लेटफ़ॉर्म-मध्यस्थता? |
|---|---|---|---|
| अभियान-स्तर विज्ञापन माप | Apple AdAttributionKit / SKAN | नहीं | हाँ |
| Play Store इंस्टॉल संदर्भ | Google Play Install Referrer | नहीं | हाँ |
| डिफ़र्ड डीप लिंक ऑनबोर्डिंग | फ़र्स्ट-पार्टी प्रासंगिक टोकन | संभावित रूप से खाता/सत्र स्तर | नहीं |
| उपयोगकर्ता रेफ़रल बाइंडिंग | रेफ़रल टोकन + खाता युग्मन | हाँ (फ़र्स्ट-पार्टी खाता) | नहीं |
| क्रॉस-ऐप डिवाइस पहचान | अधिकृत विज्ञापन आईडी | हाँ | हाँ |
GAID बनाम Install Referrer बनाम फ़र्स्ट-पार्टी पैरामीटर पुनर्स्थापना
| एट्रिब्यूशन तंत्र | GAID / IDFA की आवश्यकता है? | पहचानकर्ता मॉडल | प्राथमिक उद्देश्य |
|---|---|---|---|
| Google विज्ञापन आईडी (GAID) | हाँ | प्लेटफ़ॉर्म विज्ञापन पहचानकर्ता | क्रॉस-ऐप विज्ञापन माप |
| Google Play Install Referrer | नहीं | स्टोर-प्रदान किया गया इंस्टॉल संदर्भ | Play इंस्टॉल अभियान एट्रिब्यूशन |
| Apple AdAttributionKit / SKAN | नहीं | गोपनीयता-संरक्षण एट्रिब्यूशन संकेत | प्लेटफ़ॉर्म विज्ञापन माप |
| फ़र्स्ट-पार्टी पैरामीटर रूटिंग | नहीं | फ़र्स्ट-पार्टी टोकन / खाता संदर्भ | डीप लिंक्स और रेफ़रल बाइंडिंग |

एंड्रॉइड ऐप एट्रिब्यूशन के लिए GAID विकल्प
Google विज्ञापन आईडी एक्सेस के बिना एंड्रॉइड डिवाइस पर काम करते समय, इंजीनियरिंग टीमें विशिष्ट अभियान चैनलों के अनुरूप वैकल्पिक तंत्र तैनात करती हैं:
| GAID विकल्प | प्राथमिक कार्यान्वयन तंत्र | विशिष्ट उपयोग का मामला | कुंजी परिचालन बाधा |
|---|---|---|---|
| Google Play Install Referrer | Play Install Referrer API | Play Store विज्ञापन अभियान और सीधे डाउनलोड लिंक | Google Play वितरित प्रतिष्ठानों तक सीमित |
| फ़र्स्ट-पार्टी प्रासंगिक टोकन | Web JS SDK + नेटिव SDK पुनर्स्थापना | उपयोगकर्ता रेफ़रल कार्यक्रम और वेब-से-ऐप ऑनबोर्डिंग | सख्त रूप से सीधे फ़र्स्ट-पार्टी उपयोगकर्ता यात्राओं तक सीमित |
| प्लेटफ़ॉर्म एट्रिब्यूशन API | Android Privacy Sandbox Attribution Reporting API | एग्रीगेटेड विज्ञापन नेटवर्क रूपांतरण रिपोर्टिंग | प्लेटफ़ॉर्म रोलआउट और नामांकन पर निर्भर |
| सर्वर-टू-सर्वर (S2S) एकीकरण | विज्ञापन नेटवर्क पोस्टबैक + बैकएंड API | प्रत्यक्ष पार्टनर एट्रिब्यूशन और API मिलान | प्रति नेटवर्क प्रत्यक्ष तकनीकी एकीकरण की आवश्यकता है |
मोबाइल एट्रिब्यूशन प्लेटफ़ॉर्म और MMPs GAID के बिना माप को कैसे संभालते हैं
मोबाइल माप पार्टनर (MMPs) जैसे AppsFlyer, Adjust, Singular और Branch ने विज्ञापन पहचानकर्ता अनुपस्थित होने पर माप का समर्थन करने के लिए अपने तकनीकी आर्किटेक्चर को समायोजित किया है:
| प्लेटफ़ॉर्म / परत | प्राथमिक एंड्रॉइड आईडी-मुक्त संकेत | प्राथमिक iOS आईडी-मुक्त संकेत | माप ग्रैनुसारिटी |
|---|---|---|---|
| MMPs / एट्रिब्यूशन प्लेटफ़ॉर्म | प्लेटफ़ॉर्म एट्रिब्यूशन संकेत, Install Referrer, नेटवर्क API, S2S एकीकरण | AdAttributionKit / SKAdNetwork और नेटवर्क एकीकरण | प्लेटफ़ॉर्म, नेटवर्क और माप फ़्रेमवर्क के अनुसार भिन्न होता है |
| प्लेटफ़ॉर्म-नेटिव API | Google Play Install Referrer API | Apple AdAttributionKit Framework | पोस्टबैक और स्टोर-मध्यस्थता स्थापना डेटा |
| फ़र्स्ट-पार्टी रूटिंग परतें | प्रासंगिक पैरामीटर कैशिंग, वेब-से-ऐप पैरामीटर टोकन | क्षणिक संदर्भ मिलान, डायनेमिक यूनिवर्सल लिंक | ऑनबोर्डिंग के लिए रीयल-टाइम, उपयोगकर्ता-स्तरीय कस्टम JSON पेलोड |
मैक्रो विज्ञापन नेटवर्क रिपोर्टिंग के लिए एक MMP को माइक्रो ऑनबोर्डिंग वैयक्तिकरण के लिए फ़र्स्ट-पार्टी प्रासंगिक रूटिंग परत के साथ जोड़कर, इंजीनियरिंग टीमें ऑपरेटिंग सिस्टम गोपनीयता सैंडबॉक्स का उल्लंघन किए बिना एक पूरक माप और ऑनबोर्डिंग स्टैक स्थापित कर सकती हैं।
विज्ञापन आईडी प्रतिबंध Deterministic मोबाइल एट्रिब्यूशन में बाधा क्यों डालते हैं
लगातार विज्ञापन पहचानकर्ताओं पर ऐतिहासिक निर्भरता
एक दशक से अधिक समय से, मोबाइल प्रदर्शन विज्ञापन प्लेटफ़ॉर्म विज्ञापन पहचानकर्ताओं द्वारा संचालित Deterministic, डिवाइस-स्तरीय मिलान पर निर्भर था: एंड्रॉइड पर Google विज्ञापन आईडी (GAID) और iOS पर विज्ञापनदाताओं के लिए पहचानकर्ता (IDFA)। इस पारंपरिक कार्यप्रवाह में, विज्ञापन नेटवर्क ने विज्ञापन इंप्रेशन या क्लिक पर उपयोगकर्ता की विज्ञापन आईडी को कैप्चर किया। जब बाद में एप्लिकेशन इंस्टॉल और लॉन्च किया गया, तो एकीकृत एट्रिब्यूशन SDK ने मिलान करने वाली विज्ञापन आईडी को पुनः प्राप्त करने के लिए डिवाइस ऑपरेटिंग सिस्टम से पूछताछ की।
एक सीधा सर्वर-साइड समानता लुकअप (
पहचानकर्ता शून्यीकरण (Zeroing) और प्लेटफ़ॉर्म प्रतिबंधों का तंत्र
मोबाइल ऑपरेटिंग सिस्टम आर्किटेक्चर स्पष्ट उपयोगकर्ता सहमति के बिना क्रॉस-ऐप डिवाइस ट्रैकिंग को प्रतिबंधित करने के लिए विकसित हुए हैं।
Apple प्लेटफ़ॉर्म पर, Apple ऐप ट्रैकिंग ट्रांसपेरेंसी दिशानिर्देश के लिए आवश्यक है कि एप्लिकेशन ATTrackingManager.requestTrackingAuthorization के माध्यम से ट्रैकिंग प्राधिकरण का अनुरोध करें। जब प्राधिकरण अनुपस्थित होता है, तो ऑपरेटिंग सिस्टम IDFA को रोक लेता है। अनुप्रयोगों को विज्ञापन पहचानकर्ता सुलभ होने की धारणा के बिना denied, restricted और notDetermined राज्यों को अच्छी तरह से संभालना चाहिए।
एंड्रॉइड पर, एंड्रॉइड 13 व्यवहार परिवर्तन दस्तावेज़ीकरण के अनुसार, Google ने Google Play सेवाओं के भीतर स्पष्ट अनुमति नियंत्रण पेश किए। एंड्रॉइड 13 (API स्तर 33) या उच्चतर को लक्षित करने वाले अनुप्रयोगों के लिए, डेवलपर्स को विज्ञापन आईडी तक पहुंचने के लिए अपने मेनिफेस्ट में com.google.android.gms.permission.AD_ID अनुमति घोषित करनी होगी। जब इस अनुमति को छोड़ दिया जाता है, या जब कोई उपयोगकर्ता विज्ञापन ट्रैकिंग को सीमित करता है या अपनी विज्ञापन आईडी को हटा देता है, तो Google Play सेवाएं डिवाइस की स्थिति और Google Play सेवाओं के व्यवहार के आधार पर एक शून्यकृत पहचानकर्ता (00000000-0000-0000-0000-000000000000) लौटा सकती हैं या संकेत दे सकती हैं कि पहचानकर्ता अनुपलब्ध है।
Deterministic विज्ञापन एट्रिब्यूशन पाइपलाइनों की विफलता
जब विज्ञापन पहचानकर्ता अनुपलब्ध या शून्यकृत होता है, तो एक एट्रिब्यूशन पाइपलाइन जो पहचानकर्ता समानता पर निर्भर करती है, अब विश्वसनीय उपयोगकर्ता-स्तरीय मिलान नहीं कर सकती है। एक शून्यकृत या अनुपलब्ध विज्ञापन पहचानकर्ता व्यक्तिगत रूपांतरण यात्राओं को अलग करने के लिए एक अद्वितीय कुंजी प्रदान नहीं कर सकता है।
अभियान माप और रूपांतरण ट्रैकिंग को बनाए रखने के लिए, इंजीनियरिंग टीमों को विज्ञापन आईडी निर्भरता से दूर जाना चाहिए। आधुनिक आर्किटेक्चर इंस्टॉल एट्रिब्यूशन को लगातार डिवाइस पहचानकर्ताओं से अलग करते हैं, जो फ़र्स्ट-पार्टी प्रासंगिक रूटिंग और प्लेटफ़ॉर्म-प्रदान किए गए माप फ़्रेमवर्क पर भरोसा करते हैं।
इस आर्किटेक्चर में, OpoInstall को Google Play Install Referrer, AdAttributionKit, SKAdNetwork या अन्य प्लेटफ़ॉर्म-मध्यस्थता विज्ञापन एट्रिब्यूशन सिस्टम के लिए एक सार्वभौमिक प्रतिस्थापन के रूप में नहीं, बल्कि फ़र्स्ट-पार्टी इंस्टॉल-संदर्भ पुनर्स्थापना / डिफ़र्ड डीप-लिंकिंग परत के रूप में प्रस्तुत किया गया है।
एंड्रॉइड विज्ञापन आईडी अनुमतियाँ और Apple ATT एट्रिब्यूशन को कैसे प्रभावित करते हैं
एंड्रॉइड 13 और उच्चतर पर Google Play AD_ID अनुमति नीतियां
Google Play विज्ञापन पहचानकर्ता निष्कर्षण पर दानेदार नीति शासन लागू करता है:
-
मेनिफेस्ट घोषणा आवश्यकता: एंड्रॉइड 13 (API स्तर 33) या उच्चतर को लक्षित करने वाले ऐप्स को अपने मेनिफेस्ट में
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>घोषित करना होगा। यदि छोड़ा जाता है, तोAdvertisingIdClient.getAdvertisingIdInfo(context)के कॉल शून्य लौटाते हैं या अनुपलब्ध स्थिति का संकेत देते हैं। -
उपयोगकर्ता गोपनीयता नियंत्रण: जब कोई उपयोगकर्ता विज्ञापन ट्रैकिंग को सीमित करता है या अपनी विज्ञापन आईडी हटा देता है, तो Google Play सेवाएं शून्य या अनुपलब्ध स्थिति लौटाती हैं। Google Play डेवलपर नीतियां स्पष्ट रूप से अन्य लगातार डिवाइस पहचानकर्ताओं का उपयोग करके रीसेट विज्ञापन आईडी को ब्रिजिंग या पुनर्निर्माण करने से मना करती हैं।
-
संवेदनशील ऐप्स के लिए नीति अपवाद: Google Play नीतियां बच्चों को लक्षित करने वाले या पारिवारिक नीति बाधाओं के अधीन अनुप्रयोगों में
AD_IDअनुमति घोषित करने पर रोक लगाती हैं, जिसके लिए डेवलपर्स को आईडी-मुक्त माप पाइपलाइनों को अपनाने की आवश्यकता होती है।
Apple AppTrackingTransparency फ्रेमवर्क और प्राधिकरण राज्य
iOS पर, पहचानकर्ता एक्सेस ATTrackingManager.AuthorizationStatus सिस्टम स्थिति द्वारा नियंत्रित होता है:
-
notDetermined(0): उपयोगकर्ता ने अभी तक ATT प्राधिकरण अनुरोध का जवाब नहीं दिया है। एप्लिकेशन को यह नहीं मानना चाहिए कि IDFA एक्सेस उपलब्ध है। -
restricted(1): डिवाइस माता-पिता के नियंत्रण या डिवाइस प्रबंधन प्रोफ़ाइल द्वारा प्रतिबंधित है; ट्रैकिंग सिस्टम-व्यापी अक्षम है। -
denied(2): उपयोगकर्ता ने स्पष्ट रूप से प्रॉम्प्ट पर “Ask App not to Track” चुना या iOS गोपनीयता सेटिंग्स में वैश्विक रूप से ट्रैकिंग अनुरोधों को अक्षम कर दिया। एप्लिकेशन को IDFA पर भरोसा नहीं करना चाहिए। -
authorized(3): उपयोगकर्ता ने स्पष्ट रूप से तीसरे पक्ष के ऐप्स और वेबसाइटों पर ट्रैक करने की अनुमति दी, जिससे Apple प्लेटफ़ॉर्म नीतियों के अधीन IDFA एक्सेस की अनुमति मिलती है।
महत्वपूर्ण आर्किटेक्चरल सीमा कथन
महत्वपूर्ण अंतर: एट्रिब्यूशन आर्किटेक्चर से GAID या IDFA को हटाने से स्वचालित रूप से हर वैकल्पिक ट्रैकिंग तकनीक गोपनीयता-सुरक्षित या नीति-अनुकूल नहीं हो जाती है। Apple के ऐप ट्रैकिंग ट्रांसपेरेंसी फ़्रेमवर्क मार्गदर्शन के अनुसार, Apple ट्रैकिंग को लक्षित विज्ञापन या माप के लिए आपके ऐप से एकत्र किए गए उपयोगकर्ता या डिवाइस डेटा को तीसरे पक्ष के डेटा के साथ जोड़ने, या डेटा ब्रोकर के साथ डेटा साझा करने के रूप में परिभाषित करता है। यदि कोई इंजीनियरिंग पाइपलाइन लगातार क्रॉस-ऐप पहचान को पुनर्निर्माण करने के लिए डिवाइस विशेषताओं को एकत्र करती है, तो यह इस बात की परवाह किए बिना प्लेटफ़ॉर्म ट्रैकिंग नीतियों के अधीन रहती है कि विज्ञापन आईडी एक्सेस की गई थी या नहीं। फ़र्स्ट-पार्टी पैरामीटर रूटिंग को उपयोगकर्ता-आरंभिक यात्रा के तत्काल ऑनबोर्डिंग और रूपांतरण संदर्भ तक सीमित रहना चाहिए।
आईडी-मुक्त एट्रिब्यूशन का क्या अर्थ नहीं है
आईडी-मुक्त एट्रिब्यूशन का मतलब पहचानकर्ता-मुक्त एनालिटिक्स नहीं है। एप्लिकेशन अभी भी आंतरिक उत्पाद कार्यक्षमता के लिए आवश्यक खाता पहचानकर्ता, फ़र्स्ट-पार्टी सत्र टोकन या डीप लिंकिंग पैरामीटर संसाधित कर सकते हैं। आर्किटेक्चरल उद्देश्य इंस्टॉल मिलान के लिए लगातार, क्रॉस-ऐप विज्ञापन पहचानकर्ताओं पर निर्भरता को खत्म करना है, न कि यह दावा करना कि सभी एट्रिब्यूशन डेटा पूरी तरह से अज्ञात है।
तीन एट्रिब्यूशन समस्याएं जिन्हें भ्रमित नहीं किया जाना चाहिए
विज्ञापन पहचानकर्ताओं के बिना मोबाइल एट्रिब्यूशन को आर्किटेक्ट करते समय, इंजीनियरिंग टीमों को तीन अलग-अलग परिचालन उद्देश्यों के बीच अंतर करना चाहिए:
| समस्या | प्रयुक्त प्राथमिक संकेत | इंजीनियरिंग उद्देश्य |
|---|---|---|
| विज्ञापन एट्रिब्यूशन | प्लेटफ़ॉर्म एट्रिब्यूशन API, Google Play Install Referrer, विज्ञापन-नेटवर्क-विशिष्ट माप | विज्ञापन-संचालित अभियान प्रदर्शन और विज्ञापन खर्च दक्षता को मापें |
| डिफ़र्ड डीप लिंंकिंग | URL क्वेरी पैरामीटर, यूनिवर्सल लिंक, ऐप लिंक | स्टोर स्थापना के बाद इन-ऐप गंतव्य संदर्भ को पुनर्स्थापित करें |
| रेफ़रल एट्रिब्यूशन | फ़र्स्ट-पार्टी रेफ़रल टोकन, उपयोगकर्ता खाता आईडी | उत्पाद पुरस्कारों के लिए इनवाइटर और इनवाइटी खातों को बाध्य करें |
एक फ़र्स्ट-पार्टी रूटिंग तंत्र GAID या IDFA की आवश्यकता के बिना डिफ़र्ड डीप लिंकिंग और रेफ़रल एट्रिब्यूशन को हल कर सकता है, लेकिन इसे प्लेटफ़ॉर्म-मध्यस्थता विज्ञापन एट्रिब्यूशन के सार्वभौमिक प्रतिस्थापन के रूप में प्रस्तुत नहीं किया जाना चाहिए।
ग्रोथ टीमों को फ़र्स्ट-पार्टी एट्रिब्यूशन लेयर कब तैनात करनी चाहिए?
विशिष्ट उत्पाद वर्कफ़्लो संचालित करने वाले अनुप्रयोगों के लिए एक स्वतंत्र फ़र्स्ट-पार्टी एट्रिब्यूशन लेयर तैनात करने की अनुशंसा की जाती है:
-
SaaS और सब्सक्रिप्शन एप्लिकेशन: B2B प्लेटफ़ॉर्म जहां मार्केटिंग ट्रैफ़िक डेस्कटॉप या मोबाइल वेब पर शुरू होता है और पूर्व-प्रमाणित सत्र पुनर्स्थापना की आवश्यकता वाले नेटिव ऐप खातों में परिवर्तित होता है।
-
गेमिंग एप्लिकेशन: मल्टीप्लेयर या सोशल गेम जहां नए खिलाड़ियों को बिना मैन्युअल रूम कोड के पहले लॉन्च पर स्वचालित रूप से इनवाइटर के मैच, गिल्ड या रूम में शामिल होना चाहिए।
-
ई-कॉमर्स प्लेटफ़ॉर्म: शॉपिंग ऐप जो वैयक्तिकृत स्वागत छूट प्रदान करते हैं या मोबाइल वेब अभियानों से सक्रिय शॉपिंग कार्ट राज्यों को सीधे नेटिव चेकआउट दृश्यों में पुनर्स्थापित करते हैं।
-
रेफ़रल और लॉयल्टी प्लेटफ़ॉर्म: उत्पाद जो जैविक वायरल लूप चलाते हैं जिसके लिए उपयोगकर्ताओं को कूपन स्ट्रिंग कॉपी-पेस्ट करने के लिए मजबूर किए बिना विश्वसनीय इनवाइटर-इनवाइटी टोकन बाइंडिंग की आवश्यकता होती है।
आईडी-मुक्त फ़र्स्ट-पार्टी पैरामीटर रूटिंग के लिए आर्किटेक्चरल ब्लूप्रिंट
लगातार डिवाइस पहचानकर्ताओं से एट्रिब्यूशन को अलग करना
इस लेख में, हम उपयोगकर्ता-आरंभिक वेब-से-ऐप यात्रा के माध्यम से अभियान या रेफ़रल संदर्भ के फ़र्स्ट-पार्टी ट्रांसमिशन का वर्णन करने के लिए प्रासंगिक पैरामीटर रूटिंग (जिसे फ़र्स्ट-पार्टी डिफ़र्ड एट्रिब्यूशन या इंस्टॉल-संदर्भ पुनर्स्थापना भी कहा जाता है) का उपयोग करते हैं।
आधुनिक एट्रिब्यूशन आर्किटेक्चर भौतिक डिवाइस को ट्रैक करने का प्रयास करने के बजाय मार्केटिंग जुड़ाव के लेनदेन संबंधी संदर्भ पर ध्यान केंद्रित करते हैं। जब एक संभावित उपयोगकर्ता किसी अभियान लिंक पर क्लिक करता है, तो इंटरैक्शन को अभियान मेटाडेटा, चैनल टोकन और एप्लिकेशन रूटिंग पैरामीटर युक्त एक क्षणिक रूटिंग पेलोड सौंपा जाता है।
यह पेलोड उपयोगकर्ता यात्रा के साथ रूपांतरण फ़नल के माध्यम से यात्रा करता है, जिससे मोबाइल एप्लिकेशन को सिस्टम-स्तरीय विज्ञापन आईडी से पूछताछ किए बिना लॉन्च पर प्रासंगिक इरादे को पुनर्स्थापित करने की अनुमति मिलती है।
दो-स्तरीय एट्रिब्यूशन आर्किटेक्चर
एक एंटरप्राइज़ एट्रिब्यूशन आर्किटेक्चर सीधे डीप लिंक को स्टोर-मध्यस्थता इंस्टॉल प्रवाह से अलग करता है:
User Marketing Interaction
│
┌────────────────┴────────────────┐
│ │
Direct App Link Store / Ad Flow
│ │
Universal Links / ┌──────┴───────┐
App Links │ │
│ Android Apple
│ Play Install Platform Ad
│ Referrer Attribution
│ │ │
└──────────────┬────────┴──────┬───────┘
│ │
Attribution / Routing Signals
│
Server-Side Validation
│
┌─────────┴─────────┐
│ │
Context Found No Signal
│ │
Route / Bind Organic /
First-Party Graceful Fallback
प्रासंगिक पैरामीटर रूटिंग और फ़ॉलबैक की तकनीकी मैकेनिक्स
फ़र्स्ट-पार्टी पैरामीटर परिवहन की भूमिका
फ़र्स्ट-पार्टी पैरामीटर परिवहन मानक वेब क्वेरी पार्सिंग और सुरक्षित सर्वर-साइड सत्र कैशिंग पर निर्भर करता है। डेवलपर पैरामीटर बाइंडिंग मॉडल के संबंध में तकनीकी विनिर्देशों के लिए OpoInstall SDK दस्तावेज़ीकरण से परामर्श कर सकते हैं।
केवल सीधे ऑनबोर्डिंग के लिए उपयोग किए जाने वाले फ़र्स्ट-पार्टी पैरामीटर रूटिंग को आवश्यक रूप से ATT की आवश्यकता नहीं होती है जब कार्यान्वयन Apple की ट्रैकिंग की परिभाषा को पूरा नहीं करता है; टीमों को Apple की वर्तमान नीतियों के विरुद्ध वास्तविक डेटा प्रवाह और उद्देश्य का मूल्यांकन करना चाहिए।
प्लेटफ़ॉर्म-विशिष्ट इंस्टॉल एट्रिब्यूशन फ़ॉलबैक
जब सीधे डीप लिंक स्टोर स्थापना द्वारा बाधित होते हैं, तो प्लेटफ़ॉर्म-विशिष्ट प्रिमिटिव संरचित एट्रिब्यूशन डेटा प्रदान करते हैं:
-
एंड्रॉइड (Google Play Install Referrer): Google Play Install Referrer API गाइड Play Store स्थापना से जुड़े रेफ़रर की जानकारी को उजागर करता है और क्लिक और इंस्टॉल टाइमस्टैम्प प्रदान करता है। API दस्तावेज़ीकरण रेफ़रर डेटा के लिए 90-दिन की उपलब्धता विंडो निर्दिष्ट करता है। अनुप्रयोगों को इस मान को स्थायी इंस्टॉल पहचानकर्ता के रूप में मानने के बजाय अपने स्वयं के एट्रिब्यूशन और पुनः इंस्टॉल-हैंडलिंग नियमों के अनुसार बनाए रखना और संसाधित करना चाहिए। ध्यान दें कि पैरामीटर को Google Play के माध्यम से स्पष्ट रूप से पास किया जाना चाहिए; मनमाना लैंडिंग-पृष्ठ क्वेरी पैरामीटर इस API को स्वचालित रूप से पॉप्युलेट नहीं करते हैं।
-
Apple प्लेटफ़ॉर्म एट्रिब्यूशन: Apple के आधुनिक ऐप एट्रिब्यूशन स्टैक में Apple AdAttributionKit फ़्रेमवर्क शामिल है, साथ ही समर्थित विज्ञापन वर्कफ़्लो के लिए SKAdNetwork के साथ इंटरऑपरेबिलिटी भी है। AdAttributionKit को स्वयं ATT प्राधिकरण प्रॉम्प्ट की आवश्यकता नहीं होती है; हालाँकि, उसी ऐप में अन्य डेटा प्रवाह अभी भी ट्रैकिंग का गठन कर सकते हैं और इसलिए ATT प्राधिकरण की आवश्यकता हो सकती है। AdAttributionKit Apple के एट्रिब्यूशन फ़्रेमवर्क के साथ पंजीकृत पात्र विज्ञापन नेटवर्क के साथ Apple के हस्ताक्षरित-विज्ञापन फ़्रेमवर्क के भीतर संचालित होता है।
क्लिपबोर्ड-आधारित एट्रिब्यूशन प्राथमिक रणनीति क्यों नहीं होनी चाहिए
क्लिपबोर्ड या पेस्टबोर्ड ट्रांसफर को आम तौर पर प्राथमिक एट्रिब्यूशन डिज़ाइन के बजाय एक असाधारण फ़ॉलबैक तंत्र माना जाना चाहिए। क्लिपबोर्ड एक्सेस उपयोगकर्ता-दृश्य गोपनीयता सूचनाएं, प्लेटफ़ॉर्म प्रतिबंध और ऑपरेटिंग सिस्टम संस्करणों में असंगत उपलब्धता पेश करता है। जब पेस्टबोर्ड स्टोरेज का मूल्यांकन किया जाता है:
-
स्पष्ट दायरा: पेलोड अल्पकालिक होना चाहिए और इच्छित फ़र्स्ट-पार्टी प्रवाह के लिए आवश्यक न्यूनतम एप्लिकेशन-विशिष्ट डेटा तक सीमित होना चाहिए। संवेदनशील मूल्यों को पारगमन में और विश्राम के समय उचित रूप से सुरक्षित किया जाना चाहिए।
-
तत्काल सफ़ाई: प्रारंभिक लॉन्च अनुक्रम के दौरान उपभोग किए जाने के बाद अनुप्रयोगों को तुरंत अस्थायी पैरामीटर टोकन को साफ़ या अधिलेखित कर देना चाहिए।
-
नीति अनुपालन: पेस्टबोर्ड तंत्र का उपयोग केवल वहीं करें जहां स्पष्ट रूप से परिभाषित फ़र्स्ट-पार्टी उपयोगकर्ता प्रवाह मौजूद हो और लागू प्लेटफ़ॉर्म-नीति समीक्षा का पालन किया जाए।
ग्रेसफुल फ़ॉलबैक और अनएट्रिब्यूटेड स्टेट्स
एक लचीला गोपनीयता आर्किटेक्चर आक्रामक डिवाइस फ़िंगरप्रिंटिंग के माध्यम से एट्रिब्यूशन मिलान को मजबूर करने का प्रयास नहीं करता है:
-
डायरेक्ट ऐप लिंक / यूनिवर्सल लिंक: जब एप्लिकेशन पहले से ही डिवाइस पर इंस्टॉल है तो त्वरित नेटिव ऐप वेक-अप।
-
स्टोर-मध्यस्थता पैरामीटर पासिंग: जब उपलब्ध हो तो प्लेटफ़ॉर्म API (जैसे Google Play Install Referrer) के माध्यम से अभियान पैरामीटर की पुनर्प्राप्ति।
-
फ़र्स्ट-पार्टी पैरामीटर पुनर्स्थापना: एक संकीर्ण समय विंडो के भीतर सक्रिय वेब लैंडिंग पृष्ठ इंटरैक्शन के खिलाफ नए इंस्टॉल सत्रों का मिलान करना।
-
कोई संकेत नहीं (अनएट्रिब्यूटेड): जब नेटवर्क की स्थिति बदलती है, सत्र समाप्त हो जाते हैं, या कोई मिलान संदर्भ मौजूद नहीं होता है, तो एप्लिकेशन उपयोगकर्ता ऑनबोर्डिंग अनुभव को बाधित किए बिना सुरक्षित रूप से एक साफ डिफ़ॉल्ट स्थिति में अपमानित हो जाता है।
उदाहरण कार्यान्वयन परिदृश्य: OpoInstall के साथ संदर्भ पुनर्स्थापना
यह समझने के लिए कि ये प्रिमिटिव प्रोडक्शन में कैसे काम करते हैं, दो समवर्ती अधिग्रहण चैनलों को निष्पादित करने वाले क्रॉस-प्लैटफ़ॉर्म मोबाइल गेमिंग एप्लिकेशन पर विचार करें:
-
चैनल A (सशुल्क प्रोग्रामेटिक विज्ञापन): ऐप स्टोर और Google Play पर पुनर्निर्देशित बाहरी विज्ञापन नेटवर्क पर चलने वाला एक विज्ञापन अभियान।
-
चैनल B (उपयोगकर्ता वायरल शेयरिंग): सोशल मैसेजिंग ऐप के माध्यम से कस्टम आमंत्रण लिंक (
https://game.example.com/join?room=9876&inviter=usr_432) साझा करने वाले मौजूदा खिलाड़ी।
*
[Channel A: Paid Ad] ──> [Store Download] ──> [Play Referrer / AdAttributionKit] ──> [Aggregated Ad ROI]
[Channel B: Invite] ──> [Web Landing] ──> [First-Party Token Restoration] ──> [Auto-Join Game Room]
जब कोई नया उपयोगकर्ता चैनल A के माध्यम से इंस्टॉल करता है, तो एप्लिकेशन विपणन डैशबोर्ड को अभियान प्रदर्शन की रिपोर्ट करने के लिए Google Play Install Referrer API या Apple AdAttributionKit पर निर्भर करता है। जब कोई उपयोगकर्ता चैनल B के माध्यम से इंस्टॉल करता है, तो फ़र्स्ट-पार्टी रूटिंग SDK पहले लॉन्च पर डायनेमिक आमंत्रण टोकन को कैप्चर करता है, विज्ञापन आईडी से पूछताछ किए बिना या ATT प्रॉम्प्ट ट्रिगर किए बिना नए खिलाड़ी को तुरंत रूम 9876 में शामिल कर देता है।
आईडी-मुक्त मोबाइल एट्रिब्यूशन में सामान्य प्रोडक्शन विफलता के मामले
एक एट्रिब्यूशन आर्किटेक्चर को तैनात करते समय जो लगातार विज्ञापन पहचानकर्ताओं पर निर्भर नहीं करता है, इंजीनियरिंग टीमों को अक्सर विशिष्ट परिचालन विफलता मोड का सामना करना पड़ता है:
-
विफलता मामला 1: स्टोर पुनर्निर्देशन के बाद लैंडिंग पृष्ठ पैरामीटर खो गए: यदि अभियान लिंक बिना एन्कोडेड मध्यवर्ती URL शॉर्टनर के माध्यम से पुनर्निर्देशित होते हैं, तो लैंडिंग पृष्ठ स्क्रिप्ट या ऐप स्टोर गंतव्य तक पहुंचने से पहले
channelCodeयाreferrerजैसे क्वेरी पैरामीटर हटाए जा सकते हैं। -
विफलता मामला 2: डुप्लीकेट रेफ़रल रिडेम्पशन और गायब आइडपोटेंसी लॉक: प्रोडक्शन में, यदि मोबाइल क्लाइंट स्थानीय स्थायित्व ध्वज की जांच किए बिना प्रत्येक
Activity.onResumeया एप्लिकेशन फ़ॉरग्राउंड इवेंट पर पैरामीटर पुनर्स्थापना को आमंत्रित करता है, तो उपयोगकर्ता डुप्लीकेट पुरस्कार दावे या बार-बार डीप लिंक नेविगेशन को ट्रिगर कर सकते हैं। -
विफलता मामला 3: पुनः स्थापना राज्य का गलत प्रबंधन: जबकि Google Play Install Referrer 90 दिनों तक ऐतिहासिक रेफ़रर डेटा बनाए रखता है, पुन: स्थापित एप्लिकेशन को पिछले इंस्टॉल जीवनचक्र से बासी एट्रिब्यूशन डेटा प्राप्त हो सकता है जब तक कि क्लाइंट बैकएंड यह सत्यापित न कर ले कि किसी खाते ने पहले ही पंजीकरण पूरा कर लिया है या नहीं।
-
विफलता मामला 4: व्यापक मिलान विंडो के माध्यम से वर्गीकृत जैविक इंस्टॉल: यदि सर्वर-साइड सत्र मिलान विंडो साझा नेटवर्क या उच्च उपयोगकर्ता घनत्व वाले वातावरण में बहुत व्यापक रूप से कॉन्फ़िगर की गई हैं, तो जैविक इंस्टॉल असंबंधित वेब-क्लिक सत्रों के साथ टकरा सकते हैं।
फ़र्स्ट-पार्टी इंस्टॉल संदर्भ पुनर्स्थापना के लिए उदाहरणात्मक SDK एकीकरण पैटर्न
क्लाइंट-साइड एकीकरण अवलोकन
विज्ञापन आईडी की आवश्यकता के बिना प्रासंगिक पैरामीटर पुनर्स्थापना को लागू करने के लिए फ़र्स्ट-पार्टी इंस्टॉल-संदर्भ पुनर्स्थापना SDK का उपयोग किया जा सकता है। विकास टीमें OpoInstall मोबाइल SDK पैकेज और एकीकरण संसाधनों को डाउनलोड कर सकती हैं।
SDK API नोट: नीचे दिखाया गया आरंभीकरण और पुनर्प्राप्ति जीवनचक्र एक उदाहरणात्मक छद्म कार्यान्वयन है। नीचे दिए गए API नाम जानबूझकर उदाहरणात्मक हैं और इन्हें विक्रेता दस्तावेज़ीकरण के रूप में नहीं माना जाना चाहिए। प्रोडक्शन में, एट्रिब्यूशन पुनर्प्राप्ति को सीधे किसी व्यक्तिगत गतिविधि जीवनचक्र से जोड़ने के बजाय SDK के प्रलेखित एप्लिकेशन-स्तरीय आरंभीकरण और इंस्टॉल-संदर्भ जीवनचक्र को प्राथमिकता दें। प्रोडक्शन उपयोग से पहले विक्रेता के वर्तमान दस्तावेज़ीकरण के विरुद्ध सभी कक्षाओं, पद्धति के नामों, कॉलबैक प्रकारों और कॉन्फ़िगरेशन कुंजियों को सत्यापित करें।
// Android Implementation: ID-Free Parameter Extraction (Architecture Pattern)
// Location in Part A: [CODE_BLOCK_01]
// Note: Illustrative pseudo implementation based on OpoInstall SDK contracts.
// ----------------------------------------------------------------------------
// 1. AndroidManifest.xml (Sample excerpt)
// ----------------------------------------------------------------------------
/*
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.myapp">
<uses-permission android:name="android.permission.INTERNET"/>
<application android:name=".CustomApplication" android:label="@string/app_name">
<!-- Configure the application key using the method specified in vendor documentation -->
<meta-data android:name="com.opoinstall.APP_KEY" android:value="YOUR_APPKEY"/>
</application>
</manifest>
*/
// ----------------------------------------------------------------------------
// 2. CustomApplication.kt: Application-Level State-Machine Lifecycle
// ----------------------------------------------------------------------------
package com.example.myapp
import android.app.Application
import android.util.Log
import com.opoinstall.api.OpoData
import com.opoinstall.api.OpoError
import com.opoinstall.api.OpoInstall
import com.opoinstall.api.ResultCallBack
class CustomApplication : Application() {
enum class AttributionState {
NOT_STARTED,
FETCHING,
PROCESSED
}
override fun onCreate() {
super.onCreate()
// Initialize the first-party routing SDK in the main process
OpoInstall.initialize(this)
// Retrieve install context once at the application layer
if (getAttributionState() == AttributionState.NOT_STARTED) {
fetchInstallContext()
}
}
private fun fetchInstallContext() {
setAttributionState(AttributionState.FETCHING)
OpoInstall.getInstance().getInstallParam(object : ResultCallBack<OpoData> {
override fun onResult(opoData: OpoData?) {
setAttributionState(AttributionState.PROCESSED)
if (opoData != null) {
val channelCode = opoData.channelCode
val customData = opoData.data
Log.d("InstallContext", "Restored context: Channel=$channelCode, Data=$customData")
handleInstallContext(channelCode, customData)
}
}
override fun onError(opoError: OpoError?) {
// If a temporary network failure occurs, state can remain retryable or fallback cleanly
Log.w("InstallContext", "Attribution query completed with status: ${opoError?.errorMsg}")
setAttributionState(AttributionState.PROCESSED)
}
})
}
private fun getAttributionState(): AttributionState {
val raw = getSharedPreferences("attribution_prefs", MODE_PRIVATE)
.getString("state", AttributionState.NOT_STARTED.name)
return AttributionState.valueOf(raw ?: AttributionState.NOT_STARTED.name)
}
private fun setAttributionState(state: AttributionState) {
getSharedPreferences("attribution_prefs", MODE_PRIVATE)
.edit()
.putString("state", state.name)
.apply()
}
private fun handleInstallContext(channelCode: String?, customData: String?) {
// Dispatch restored context to internal account/routing services
}
}
iOS कार्यान्वयन: स्विफ्ट जीवनचक्र एकीकरण
iOS पर, एप्लिकेशन एप्लिकेशन जीवनचक्र प्रतिनिधि के भीतर SDK को एकीकृत करता है। क्रॉस-ऐप ट्रैकिंग नहीं किए जाने पर SDK AppTrackingTransparency प्राधिकरण अनुरोधों को आमंत्रित किए बिना मुख्य निष्पादन धागे पर एसिंक्रोनस रूप से स्थापना पैरामीटर पुनः प्राप्त करता है।
नीचे दिया गया स्विफ्ट कार्यान्वयन एक उदाहरणात्मक आरंभीकरण और पैरामीटर निष्कर्षण कार्यप्रवाह प्रदर्शित करता है:
// iOS Integration Pattern: Application-Level Install Context Retrieval
// Location in Part A: [CODE_BLOCK_02]
// Note: PSEUDOCODE ONLY. Type and method names are illustrative placeholders.
// ----------------------------------------------------------------------------
// 1. Info.plist (Sample excerpt)
// ----------------------------------------------------------------------------
/*
<!-- Configure the application key using the method specified in vendor documentation -->
<key>com.opoinstall.APP_KEY</key>
<string>YOUR_APPKEY</string>
*/
// ----------------------------------------------------------------------------
// 2. AppDelegate.swift: Lifecycle Initialization and Context Retrieval
// ----------------------------------------------------------------------------
import UIKit
// Note: SDK module import omitted intentionally; use the module name supplied by your package manager.
enum InstallContextState: String {
case notStarted = "NOT_STARTED"
case fetching = "FETCHING"
case processed = "PROCESSED"
}
@main
class AppDelegate: UIResponder, UIApplicationDelegate, OpoInstallDelegate {
var window: UIWindow?
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
// Initialize the first-party routing SDK without invoking ATT authorization
OpoInstallSDK.initWith(self)
// Guard retrieval with state-machine check at the application entry point
if getInstallContextState() == .notStarted {
fetchInstallContext()
}
return true
}
private func fetchInstallContext() {
setInstallContextState(.fetching)
// Retrieve deferred install parameters asynchronously
OpoInstallSDK.defaultManager()?.getInstallParmsCompleted({ [weak self] (appData: OpoinstallData?) in
DispatchQueue.main.async {
self?.setInstallContextState(.processed)
if let data = appData?.data {
let channel = appData?.channelCode
self?.handleInstallContext(channelCode: channel, customData: data)
}
}
})
}
private func getInstallContextState() -> InstallContextState {
let raw = UserDefaults.standard.string(forKey: "install_context_state") ?? InstallContextState.notStarted.rawValue
return InstallContextState(rawValue: raw) ?? .notStarted
}
private func setInstallContextState(_ state: InstallContextState) {
UserDefaults.standard.set(state.rawValue, forKey: "install_context_state")
}
private func handleInstallContext(channelCode: String?, customData: String) {
// Dispatch restored context to internal account/routing services
}
// Universal Link delegate callback for deep linking
func application(
_ application: UIApplication,
continue userActivity: NSUserActivity,
restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void
) -> Bool {
OpoInstallSDK.continue(userActivity)
return true
}
}
क्लाइंट कार्यान्वयन के लिए इंजीनियरिंग विचार
-
नॉन-ब्लॉकिंग UI जीवनचक्र: हमेशा एट्रिब्यूशन SDK को एसिंक्रोनस रूप से प्रारंभ करें और एप्लिकेशन लॉन्च के दौरान मुख्य UI धागे को ब्लॉक किए बिना पैरामीटर क्वेरी करें।
-
स्थानीय आइडपोटेंसी हैंडलिंग: पैरामीटर निष्कर्षण को साफ-सुथरे ढंग से प्रबंधित करने और अतिระयुक्त API क्वेरी को रोकने के लिए एक राज्य-मशीन या लगातार ध्वज (जैसे,
NOT_STARTED,FETCHING,PROCESSED) बनाए रखें। -
सर्वर-साइड रीप्ले डिफेंस: यह सत्यापित करने के लिए बैकएंड लेनदेन लॉग के खिलाफ डायनेमिक पैरामीटर पेलोड को सत्यापित करें कि रेफ़रल कोड या प्रचार टोकन को दुर्भावनापूर्ण रूप से पुनरावृत्ति नहीं किया जा सकता है।
प्लेटफ़ॉर्म एट्रिब्यूशन API और प्राइवेसी सैंडबॉक्स संक्रमण
एंड्रॉइड प्लेटफ़ॉर्म एट्रिब्यूशन और प्राइवेसी सैंडबॉक्स संक्रमण
एंड्रॉइड के एट्रिब्यूशन रिपोर्टिंग API को क्रॉस-पार्टी पहचानकर्ताओं पर भरोसा किए बिना ऐप्स और वेब पर गोपनीयता-संरक्षण माप का समर्थन करने के लिए डिज़ाइन किया गया था।
एंड्रॉइड के एट्रिब्यूशन रिपोर्टिंग API समर्थित प्राइवेसी सैंडबॉक्स एकीकरण के लिए उपलब्ध हैं, लेकिन वे इंस्टॉल रेफ़रर या MMP एकीकरण के लिए सार्वभौमिक प्रतिस्थापन नहीं हैं। प्रोडक्शन प्रयोज्यता विशिष्ट एंड्रॉइड संस्करण, विज्ञापन प्रौद्योगिकी एकीकरण, नामांकन आवश्यकताओं और पारिस्थितिकी तंत्र समर्थन पर निर्भर करती है। एट्रिब्यूशन रिपोर्टिंग को प्रोडक्शन निर्भरता बनाने से पहले टीमों को वर्तमान Android Privacy Sandbox दस्तावेज़ीकरण को सत्यापित करना चाहिए।
Play-वितरित एंड्रॉइड ऐप्स के लिए, Google Play Install Referrer Play Store इंस्टॉल से जुड़े अभियान मापदंडों को पुनः प्राप्त करने के लिए एक व्यावहारिक फ़र्स्ट-पार्टी तंत्र बना हुआ है। विज्ञापन नेटवर्क और एट्रिब्यूशन प्रदाता प्लेटफ़ॉर्म-समर्थित माप एकीकरण भी प्रदान कर सकते हैं।
Apple प्लेटफ़ॉर्म एट्रिब्यूशन: AdAttributionKit और SKAdNetwork
iOS पर, Apple AdAttributionKit पर केंद्रित गोपनीयता-संरक्षण एट्रिब्यूशन तंत्र प्रदान करता है, जो ऐप स्टोर और वैकल्पिक बाज़ार स्थानों पर ऐप विज्ञापन अभियानों का समर्थन करता है, साथ ही SKAdNetwork के साथ इंटरऑपरेबिलिटी भी है। ये फ़्रेमवर्क लगातार डिवाइस विज्ञापन पहचानकर्ता को उजागर किए बिना प्लेटफ़ॉर्म-मध्यस्थता एट्रिब्यूशन संकेत प्रदान करते हैं। रिपोर्टिंग ग्रैनुसारिटी और समय Apple गोपनीयता阈值 और एट्रिब्यूशन विंडो द्वारा नियंत्रित रहते हैं।
फ़र्स्ट-पार्टी रूटिंग और प्लेटफ़ॉर्म API का सह-अस्तित्व
प्लेटफ़ॉर्म गोपनीयता API और फ़र्स्ट-पार्टी प्रासंगिक रूटिंग विभिन्न इंजीनियरिंग आवश्यकताओं को हल करते हैं:
-
प्लेटफ़ॉर्म गोपनीयता API: लगातार पहचानकर्ताओं के बिना मैक्रो-स्तरीय विज्ञापन माप, विज्ञापन नेटवर्क ROI गणना, और प्रोग्रामेटिक अभियान अनुकूलन के लिए डिज़ाइन किया गया।
-
फ़र्स्ट-पार्टी पैरामीटर रूटिंग: माइक्रो-स्तरीय ऐप ऑनबोर्डिंग, त्वरित उपयोगकर्ता-से-उपयोगकर्ता रेफ़रल पुरस्कार बाइंडिंग, डीप लिंक रूटिंग, और सीधे वेब-से-ऐप रूपांतरण यात्राओं के लिए डिज़ाइन किया गया।
सैंडबॉक्स वातावरण में एट्रिब्यूशन सटीकता को कैसे सत्यापित करें
विज्ञापन आईडी एक्सेस अनुपलब्ध होने पर इंस्टॉल एट्रिब्यूशन का परीक्षण करना
यह सत्यापित करने के लिए कि कोई एप्लिकेशन विभिन्न डिवाइस और अनुमति राज्यों में इंस्टॉल एट्रिब्यूशन को सही ढंग से संभालता है:
-
गायब AD_ID राज्य: एक एंड्रॉइड टेस्ट बिल्ड तैनात करें जो
AndroidManifest.xmlसेcom.google.android.gms.permission.AD_IDअनुमति को बाहर करता है और सत्यापित करता है कि ऐप साफ-सुथरे तरीके से प्रारंभ होता है। -
उपयोगकर्ता पहचानकर्ता सीमाएं: Google Play सेवाओं वाले एंड्रॉइड टेस्ट डिवाइस पर, सिस्टम सेटिंग्स में विज्ञापन सीमाओं को सक्षम करें या विज्ञापन आईडी को हटा दें ताकि यह सुनिश्चित हो सके कि पैरामीटर निष्कर्षण क्रैश या स्टॉल नहीं होता है।
-
Play Store अभियान सिमुलेशन: एक परीक्षण अभियान URL का उपयोग करके एक इंस्टॉल यात्रा को ट्रिगर करें जो Google Play Install Referrer तंत्र के माध्यम से अपेक्षित मान को स्पष्ट रूप से पास करता है। यह न मानें कि एक मनमाना लैंडिंग-पृष्ठ क्वेरी पैरामीटर स्वचालित रूप से इंस्टॉल रेफ़रर मान बन जाएगा।
-
पुनःस्थापना सत्यापन: पिछले एट्रिब्यूटेड इंस्टॉल के बाद एप्लिकेशन को पुनः इंस्टॉल करें और सत्यापित करें कि एट्रिब्यूशन प्रवाह गलत तरीके से बासी फ़र्स्ट-इंस्टॉल स्थिति का पुनउपयोग नहीं करता है।
-
जैविक फ़ॉलबैक सत्यापन: यह पुष्टि करने के लिए कि
getInstallParamबिना किसी गड़बड़ी के शून्य या जैविक फ़ॉलबैक पर साफ़-सुथरे ढंग से हल होता है, एक अनलिंक्ड बिल्ड लॉन्च करें।
भौतिक iOS उपकरणों पर ATT अस्वीकृत राज्यों का अनुकरण करना
ट्रैकिंग अस्वीकृत होने पर iOS पैरामीटर पुनर्प्राप्ति का परीक्षण करने के लिए:
-
Xcode के माध्यम से भौतिक iOS डिवाइस पर परीक्षण बिल्ड इंस्टॉल करें।
-
सत्यापित करें कि SDK पैरामीटर पुनर्प्राप्ति विधि एसिंक्रोनस रूप से निष्पादित होती है और ATT को प्रॉम्प्ट किए बिना या IDFA API से पूछताछ किए बिना मापदंडों को सफलतापूर्वक हल करती है।
-
कोल्ड स्टार्ट और बैकग्राउंड वेक-अप दोनों जीवनचक्रों में एप्लिकेशन लॉन्च व्यवहार का परीक्षण करें।
डेटा न्यूनीकरण के लिए नेटवर्क पेलोड का ऑडिट करना
सुरक्षा और अनुपालन टीमों को HTTP प्रॉक्सी का उपयोग करके क्लाइंट-साइड नेटवर्क ट्रैफ़िक का निरीक्षण करना चाहिए:
-
आईडी बहिष्करण की पुष्टि करें: सत्यापित करें कि आउटगोइंग एट्रिब्यूशन अनुरोधों में IMEI, MAC पते, एंड्रॉइड आईडी (
SSAID), या गैर-अधिकृत IDFA स्ट्रिंग जैसे लगातार पहचानकर्ता शामिल नहीं हैं। -
परिवहन सुरक्षा: सुनिश्चित करें कि एट्रिब्यूशन API संचार वर्तमान TLS कॉन्फ़िगरेशन और मानक प्रमाणपत्र सत्यापन के साथ HTTPS का उपयोग करता है।
-
पेलोड सुरक्षा: पुष्टि करें कि पारगमन या अस्थायी बफर में संग्रहीत डायनेमिक टोकन उचित सुरक्षा मानकों का उपयोग करते हैं।

अक्सर पूछे जाने वाले प्रश्न (FAQ)
क्या आप GAID के बिना इंस्टॉल एट्रिब्यूट कर सकते हैं?
क्या मोबाइल एट्रिब्यूशन प्लेटफ़ॉर्म GAID या IDFA के बिना काम कर सकते हैं?
क्या Install Referrer GAID को बदलता है?
जब कोई एंड्रॉइड ऐप AD_ID अनुमति के बिना GAID का अनुरोध करता है तो क्या होता है?
क्या IDFA को हटाने से Apple ATT आवश्यकताएं समाप्त हो जाती हैं?
क्या प्रासंगिक मिलान (Contextual matching) फ़िंगरप्रिंटिंग के समान है?
जब कोई इंस्टॉल पैरामीटर पुनर्स्थापित नहीं किया जा सकता है तो क्या होता है?
OpoInstall के साथ आईडी-मुक्त एट्रिब्यूशन बुनियादी ढांचा बनाना
विज्ञापन-आईडी-स्वतंत्र ग्रोथ स्टैक का मूल्यांकन करने वाली इंजीनियरिंग टीमों को तीन मुख्य तकनीकी क्षमताओं की आवश्यकता होती है:
-
घर्षण रहित संदर्भ पुनर्स्थापना: मैन्युअल रेफ़रल कोड या हार्डवेयर आईडी हार्वेस्टिंग के बिना वेब लैंडिंग पृष्ठों से नेटिव अनुप्रयोगों में कस्टम मेटाडेटा पास करना।
-
क्रॉस-प्लेटफ़ॉर्म अभियान संदर्भ प्रबंधन: कई एप्लिकेशन बिल्ड की आवश्यकता के बिना प्लेटफ़ॉर्म पर वेब-से-ऐप और मोबाइल अभियानों का प्रबंधन करना।
-
सख्त प्लेटफ़ॉर्म अनुपालन: पूरी तरह से फ़र्स्ट-पार्टी एप्लिकेशन सैंडबॉक्स के भीतर काम करना और ऑपरेटिंग सिस्टम गोपनीयता बाधाओं का सम्मान करना।
मोबाइल माप और रूटिंग के लिए कार्यान्वयन पैटर्न का पता लगाने के लिए, OpoInstall दस्तावेज़ीकरण से परामर्श करें या OpoInstall डेवलपर कंसोल तक पहुंचें।
सारांश और निर्णय ढांचा
बढ़ते विज्ञापन पहचानकर्ता प्रतिबंधों के बीच टिकाऊ मोबाइल ग्रोथ आर्किटेक्चर बनाने के लिए, इंजीनियरिंग टीमों को पुराने GAID और IDFA निर्भरता से दूर जाना चाहिए। लगातार डिवाइस पहचानकर्ताओं पर भरोसा करना संरचनात्मक नाजुकता का परिचय देता है क्योंकि ऑपरेटिंग सिस्टम और नियामक नीतियां क्रॉस-ऐप ट्रैकिंग को प्रतिबंधित करना जारी रखती हैं।
एक आधुनिक एट्रिब्यूशन फ़्रेमवर्क फ़र्स्ट-पार्टी पैरामीटर परिवहन, प्लेटफ़ॉर्म-मध्यस्थता माप API और लचीला क्लाइंट-साइड SDK निष्कर्षण को जोड़ती है। प्रासंगिक रूटिंग आर्किटेक्चर को तैनात करके, मोबाइल टीमें प्लेटफ़ॉर्म गोपनीयता आवश्यकताओं के साथ संरेखित रहते हुए विश्वसनीय वेब-से-ऐप रूपांतरण यात्राओं को बनाए रखती हैं।
संबंधित सामग्री
-
अवधारणाएं: विज्ञापन आईडी प्रतिबंध, प्रासंगिक पैरामीटर रूटिंग, Install Referrer, AdAttributionKit, ऐप ट्रैकिंग ट्रांसपेरेंसी
-
प्रौद्योगिकी: Google Play Install Referrer API, Google Play Services Advertising API, Apple ATT Framework, Apple AdAttributionKit, OpoInstall Mobile SDK
-
सुरक्षा विषय: मोबाइल डेटा न्यूनीकरण, रीप्ले सुरक्षा, परिवहन सुरक्षा
-
API: Google Play Install Referrer API, Google Advertising ID APIs, Apple App Tracking Transparency APIs, OpoInstall इंस्टॉल-पैरामीटर API
आधिकारिक दस्तावेज़ीकरण
एंड्रॉइड
Apple
गोपनीयता-संरक्षण एट्रिब्यूशन
Share this article



