Deferred Deep Link एक तंत्र है जो संक्रमण के लक्ष्य संदर्भ को संरक्षित करता है, भले ही ऐप उपयोगकर्ता के डिवाइस पर अभी तक स्थापित न हुआ हो। Branch Resources के अनुसार, ऐप इंस्टॉलेशन के बाद सिस्टम स्वचालित रूप से सहेजे गए संदर्भ को संसाधित करता है और उपयोगकर्ता को लक्ष्य स्क्रीन पर रीडायरेक्ट करता है। Deferred Deep Link सामान्य deep link की मुख्य समस्या को हल करता है — बिना इंस्टॉल किए ऐप्स के साथ काम करने में असमर्थता।
मुख्य बिंदु
Deferred Deep Link एक प्रकार का गहरा लिंक है जो दो चरणों में काम करता है: पहले उपयोगकर्ता ऐप इंस्टॉल होने से पहले लिंक पर क्लिक करता है, फिर इंस्टॉलेशन पूरा होने के बाद सिस्टम संदर्भ को पुनर्स्थापित करता है। सामान्य deep link केवल तभी ऐप खोलता है जब वह पहले से इंस्टॉल हो, जबकि deferred सभी संक्रमण पैरामीटर को सहेजता है और पहले लॉन्च पर उन्हें प्रेषित करता है।
यह तकनीक मोबाइल मार्केटिंग के विकास के साथ विशेष रूप से मांग में आ गई है, जहाँ विज्ञापन अभियान अक्सर उन उपयोगकर्ताओं को लक्षित करते हैं जिन्होंने अभी तक ऐप इंस्टॉल नहीं किया है। deferred deep link के बिना, ऐसा प्रत्येक संक्रमण बिना किसी संदर्भ के केवल ऐप डाउनलोड करने पर समाप्त हो जाएगा — उपयोगकर्ता लक्ष्य स्क्रीन के बजाय मुख्य स्क्रीन पर पहुँचेगा।
सामान्य deep link पहले से इंस्टॉल किए गए ऐप में लक्ष्य सामग्री खोलता है। यदि ऐप इंस्टॉल नहीं है, तो ब्राउज़र एक त्रुटि प्रदर्शित करता है। Deferred Deep Link एक मध्यवर्ती सर्वर के माध्यम से काम करता है जो उपयोगकर्ता को स्टोर पर रीडायरेक्ट करता है, और इंस्टॉलेशन के बाद ऐप को सहेजे गए पैरामीटर के बारे में सूचित करता है। इस प्रकार, deferred लिंक को ऐप की पूर्व-स्थापना की आवश्यकता नहीं होती है और यह विज्ञापन से सामग्री तक एक एंड-टू-एंड उपयोगकर्ता पथ प्रदान करता है।
deferred deep link प्रसंस्करण तीन चरणों से मिलकर बना है। पहले चरण में, उपयोगकर्ता लिंक पर क्लिक करता है — सर्वर यह निर्धारित करता है कि ऐप इंस्टॉल है या नहीं। यदि नहीं, तो वह एक अद्वितीय सत्र पहचानकर्ता उत्पन्न करता है, संक्रमण पैरामीटर सहेजता है, और उपयोगकर्ता को इस पहचानकर्ता के साथ App Store या Google Play पर रीडायरेक्ट करता है।
दूसरे चरण में, उपयोगकर्ता स्टोर से ऐप इंस्टॉल करता है। इंस्टॉलेशन और पहले लॉन्च के बाद, प्लेटफ़ॉर्म SDK सर्वर से संपर्क करता है, डिवाइस पहचानकर्ता प्रेषित करता है, और सहेजे गए संक्रमण पैरामीटर प्राप्त करता है। तीसरे चरण में, ऐप प्राप्त डेटा को संसाधित करता है और स्वचालित रूप से उपयोगकर्ता को लक्ष्य स्क्रीन पर रीडायरेक्ट करता है।
लिंक क्लिक और इंस्टॉलेशन के बीच पैरामीटर सहेजने के लिए विभिन्न तंत्रों का उपयोग किया जाता है। iOS पर, यह iCloud Keychain या क्लिपबोर्ड है; Android पर, यह Install Referrer API है। Firebase Dynamic Links सत्र पहचानकर्ता प्रेषित करने के लिए ब्राउज़र localStorage और स्टोर रेफरल लिंक के संयोजन का उपयोग करता है। Branch.io कई भंडारों में डेटा बैकअप के साथ अपना स्वयं का प्रोटोकॉल लागू करता है।
iOS में, deferred deep link Universal Links और Shared Web Credentials के संयोजन के माध्यम से कार्यान्वित किया जाता है। जब उपयोगकर्ता ऐप की वेबसाइट पर Universal Link पर क्लिक करता है, Safari ऐप के डोमेन से जुड़े iCloud Keychain में संक्रमण पैरामीटर सहेजता है। App Store से ऐप इंस्टॉल करने के बाद, iOS सहेजे गए डेटा की उपस्थिति की जाँच करता है और पहले लॉन्च पर उन्हें ऐप को प्रेषित करता है।
Apple deferred deep link के लिए कोई अंतर्निहित API प्रदान नहीं करता है — कार्यान्वयन पूरी तरह से तृतीय-पक्ष SDK पर छोड़ दिया गया है। Firebase Dynamic Links एक passive deferred तंत्र का उपयोग करता है, जहाँ डेटा ब्राउज़र कुकीज़ में सहेजा जाता है और ऐप के पहले लॉन्च पर एक विशेष URL पर रीडायरेक्ट के माध्यम से पुनर्स्थापित किया जाता है।
iOS 14 से शुरू करके, Apple ने गोपनीयता नियमों को कड़ा कर दिया, जिसने deferred deep link तंत्र को प्रभावित किया। क्लिपबोर्ड का उपयोग अब उपयोगकर्ता की स्पष्ट अनुमति के बिना डेटा पढ़ने के लिए नहीं किया जा सकता है। iCloud Keychain में भी डेटा आकार की सीमाएँ हैं — प्रति लेखन 4 KB से अधिक नहीं। यह अद्वितीय सत्र पहचानकर्ता वाले सर्वर-साइड समाधानों को संदर्भ प्रेषित करने के लिए पसंदीदा तरीका बनाता है।
Android Install Referrer API के माध्यम से deferred deep link के लिए अधिक लचीले विकल्प प्रदान करता है। जब उपयोगकर्ता Google Play के लिंक पर क्लिक करता है, स्टोर referrer को कैप्चर करता है — संक्रमण पैरामीटर वाली एक स्ट्रिंग। इंस्टॉलेशन के बाद, ऐप Install Referrer API के माध्यम से यह स्ट्रिंग प्राप्त करता है और उसमें से लक्ष्य संदर्भ निकालता है। यह Android पर सबसे विश्वसनीय deferred deep link तंत्र है।
Google Play के बाहर वितरित ऐप्स के लिए, Android एक रेफरल BroadcastReceiver का समर्थन करता है। डेवलपर इंस्टॉलेशन के बाद पैरामीटर के साथ एक कस्टम Intent भेज सकता है, और ऐप इसे मेनिफेस्ट में पंजीकृत BroadcastReceiver के माध्यम से प्राप्त करेगा। हालाँकि, यह तंत्र कम विश्वसनीय है क्योंकि यह इंस्टॉलर कार्यान्वयन पर निर्भर करता है।
Install Referrer API इंस्टॉलेशन स्रोत के बारे में जानकारी प्रदान करता है, जिसमें referrer URL, क्लिक समय और इंस्टॉल समय शामिल है। अधिकतम referrer स्ट्रिंग लंबाई 8 KB है, जो सभी आवश्यक deep link पैरामीटर प्रेषित करने के लिए पर्याप्त है। API Google Play Store संस्करण 8.3.73 और उच्चतर वाले उपकरणों पर उपलब्ध है, और Android 5.0 (API 21) पर समर्थित है।
Firebase Dynamic Links दोनों प्लेटफ़ॉर्म पर deferred deep link लागू करने का सबसे लोकप्रिय मुफ्त टूल है। Firebase deferred संक्रमण के सभी चरणों को स्वचालित रूप से संभालता है: ऐप की अनुपस्थिति में स्टोर पर रीडायरेक्ट, Firebase सर्वर पर पैरामीटर संग्रहीत करना, और ऐप के पहले लॉन्च पर SDK को उन्हें प्रेषित करना।
कार्यान्वयन के लिए, बस प्रोजेक्ट में Firebase SDK को एकीकृत करें, Firebase Console के माध्यम से गहरे लिंक और अभियान पैरामीटर निर्दिष्ट करते हुए एक Dynamic Link बनाएँ। Firebase SDK ऐप लॉन्च होने पर स्वचालित रूप से कॉल किया जाता है और getDynamicLink() विधि के माध्यम से आने वाले Dynamic Link की जाँच करता है।
Kotlin में Activity में deferred Firebase Dynamic Link के प्रसंस्करण का उदाहरण। कोड ऐप लॉन्च होने पर cold start और warm start दोनों के लिए समान रूप से काम करता है।
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
checkDeferredLink()
}
private fun checkDeferredLink() {
FirebaseDynamicLinks.getInstance()
.getDynamicLink(intent)
.addOnSuccessListener link ->
val deferredLink = link?.link.toString()
if (deferredLink.isNotEmpty()) {
navigateToContent(deferredLink)
}
}
}
}
getDynamicLink() विधि DynamicLink ऑब्जेक्ट के साथ PendingTask लौटाती है। यदि लिंक पर क्लिक करने के बाद ऐप इंस्टॉल किया गया था, तो listener पैरामीटर के साथ डेटा प्राप्त करेगा। यदि संक्रमण से पहले ऐप पहले से इंस्टॉल था, तो विधि सामान्य deep link के समान डेटा लौटाएगी। लिंक पैरामीटर में minimumAppVersion फ़्लैग प्रसंस्करण के लिए न्यूनतम ऐप संस्करण सेट करने की अनुमति देता है।
Deferred Deep Link मार्केटिंग अभियानों के लिए महत्वपूर्ण लाभ प्रदान करता है: उपयोगकर्ता बिना अतिरिक्त कार्रवाई के इंस्टॉलेशन के बाद लक्ष्य सामग्री प्राप्त करता है, जिससे रूपांतरण और प्रतिधारण बढ़ता है। रेफरल प्रोग्राम के लिए, deferred लिंक आमंत्रण को इंस्टॉलेशन और नए उपयोगकर्ता कार्यों से स्पष्ट रूप से जोड़ने की अनुमति देते हैं।
हालाँकि, तकनीक की भी सीमाएँ हैं। deferred deep link उन ब्राउज़रों में काम नहीं करता है जो तृतीय-पक्ष कुकीज़ को ब्लॉक करते हैं, और iOS संस्करण 14 से iCloud Keychain के लिए अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता होती है। इसके अलावा, लिंक क्लिक और इंस्टॉलेशन के बीच कई दिन लग सकते हैं, और सभी SDK उस अवधि के लिए डेटा संरक्षण की गारंटी नहीं देते हैं।
deferred deep link नए उपयोगकर्ताओं को लक्षित करने वाले विज्ञापन अभियानों, आमंत्रणों के साथ ईमेल न्यूज़लेटर और रेफरल प्रोग्राम के लिए अनिवार्य है। पहले से इंस्टॉल उपयोगकर्ताओं के लिए, सामान्य deep link पर्याप्त है। यदि ऐप मार्केटिंग अभियानों या रेफरल तंत्र का उपयोग नहीं करता है, तो deferred deep link की आवश्यकता नहीं है — Universal Links और App Links पर्याप्त हैं।
कार्यान्वयन चुनते समय, लागत पर विचार करें: Firebase Dynamic Links मुफ्त है लेकिन इसमें सीमित विश्लेषण है। Branch.io और AppsFlyer उन्नत एट्रिब्यूशन प्रदान करते हैं लेकिन सदस्यता की आवश्यकता होती है। छोटी परियोजनाओं के लिए, Firebase इष्टतम समाधान है; दर्जनों विज्ञापन चैनलों वाले enterprise के लिए, वाणिज्यिक MMP चुनाव हैं।
अक्सर पूछे जाने वाले प्रश्न
सामान्य deep link के लिए ऐप इंस्टॉल होना आवश्यक है और इसे सीधे खोलता है। Deferred Deep Link तब भी काम करता है जब ऐप इंस्टॉल न हो — यह स्टोर पर रीडायरेक्ट करता है, और इंस्टॉलेशन के बाद संक्रमण संदर्भ को पुनर्स्थापित करता है और लक्ष्य स्क्रीन खोलता है।
भंडारण अवधि प्लेटफ़ॉर्म पर निर्भर करती है। Firebase Dynamic Links पैरामीटर को 30 दिनों तक संग्रहीत करता है। Branch.io डेटा को 90 दिनों तक सहेजता है। Android पर, Install Referrer API referrer स्ट्रिंग को ऐप द्वारा पहली बार पढ़ने तक संग्रहीत करता है, लेकिन 90 दिनों से अधिक नहीं।
डेस्कटॉप पर, deferred deep link का कोई मतलब नहीं है क्योंकि कंप्यूटर पर स्टोर के माध्यम से ऐप इंस्टॉल नहीं किया जा सकता है। डेस्कटॉप से लिंक पर क्लिक करने पर, उपयोगकर्ता को एक फ़ॉलबैक URL दिखाई देगा — सामग्री का वेब संस्करण या मोबाइल डिवाइस पर इंस्टॉलेशन के लिए QR कोड वाला पेज।
Chrome, Safari और Samsung Internet कुकी और localStorage तंत्र के माध्यम से deferred deep link का समर्थन करते हैं। Firefox में सख्त तृतीय-पक्ष कुकी अवरोधन नीति के कारण सीमित समर्थन है। अधिकतम कवरेज के लिए, Firebase या Branch.io SDK का उपयोग करने की अनुशंसा की जाती है।
तकनीकी रूप से, एक मध्यवर्ती सर्वर और रेफरल तंत्र के माध्यम से एक स्वतंत्र समाधान लागू किया जा सकता है। हालाँकि, इसके लिए सर्वर बुनियादी ढाँचे के विकास और रखरखाव, कुकीज़ को संभालने, प्रत्येक स्टोर के साथ एकीकरण और विभिन्न प्लेटफ़ॉर्म पर समस्याओं को हल करने की आवश्यकता होती है। तैयार Firebase और Branch.io SDK विकास को दस गुना तेज करते हैं।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें