Firebase Dynamic Links Google की एक सेवा है जो स्मार्ट लिंक बनाती है जो उपयोगकर्ता को एप्लिकेशन में सही स्थान पर ले जाती है, भले ही एप्लिकेशन इंस्टॉल हो या नहीं। Firebase दस्तावेज़ीकरण के अनुसार, Dynamic Links स्वचालित रूप से उपयोगकर्ता को App Store या Google Play पर रीडायरेक्ट करती हैं यदि एप्लिकेशन इंस्टॉल नहीं है और इंस्टॉलेशन के बाद संक्रमण संदर्भ को पुनर्स्थापित करती हैं। Firebase के स्मार्ट लिंक URL Scheme समस्या को हल करते हैं, जो अनइंस्टॉल किए गए एप्लिकेशन के साथ काम नहीं करती।
मुख्य बिंदु
Firebase Dynamic Links Google की एक क्लाउड सेवा है जो iOS और Android पर मोबाइल ऐप्स के लिए एकीकृत यूनिवर्सल लिंक बनाती है। एक डायनामिक लिंक में ऐप के अंदर कंटेंट का डीप लिंक होता है लेकिन यह एक सामान्य HTTPS लिंक की तरह व्यवहार करता है: यदि ऐप इंस्टॉल है, तो यह सीधे खुलता है; यदि नहीं, तो यह ऐप स्टोर पर रीडायरेक्ट करता है।
सामान्य URL Scheme के विपरीत, Dynamic Links डिफर्ड डीप लिंक तकनीक के कारण अनइंस्टॉल किए गए ऐप्स के साथ काम कर सकती हैं। जब कोई उपयोगकर्ता लिंक पर क्लिक करने के बाद ऐप इंस्टॉल करता है, Firebase संक्रमण पैरामीटर सहेजता है और पहले लॉन्च पर उन्हें भेजता है। यह रेफरल प्रोग्राम, मार्केटिंग अभियान और निमंत्रण के लिए अवसर खोलता है।
URL Scheme के लिए ऐप इंस्टॉल होना आवश्यक है और उनके पास कोई मानक फ़ॉलबैक तंत्र नहीं है। Firebase Dynamic Links एक मध्यवर्ती Firebase वेब सेवा के माध्यम से इस समस्या को हल करती हैं जो डिवाइस पर ऐप इंस्टॉलेशन स्थिति निर्धारित करती है और उपयोगकर्ता को सही ढंग से रूट करती है। साथ ही, एक लिंक दोनों प्लेटफ़ॉर्म पर समान रूप से काम करता है।
Firebase Dynamic Link yourcode.page.link जैसे डोमेन का उपयोग करता है, जो Firebase Console में रजिस्टर किया जाता है। जब उपयोगकर्ता ऐसे लिंक पर क्लिक करता है, Firebase डिवाइस प्रकार और ऐप इंस्टॉलेशन स्थिति निर्धारित करता है। iOS के लिए Universal Links तंत्र का उपयोग किया जाता है, Android के लिए Digital Asset Links के माध्यम से स्वचालित सत्यापन के साथ App Links का उपयोग किया जाता है।
प्रसंस्करण प्रक्रिया में कई क्रमिक चरण शामिल हैं: लिंक पर क्लिक करने पर, ब्राउज़र Firebase सर्वर को GET अनुरोध भेजता है; सर्वर प्लेटफ़ॉर्म निर्धारित करता है और डिवाइस पर ऐप की उपस्थिति की जाँच करता है। यदि ऐप इंस्टॉल है, तो लक्ष्य स्क्रीन खोलने के लिए पैरामीटर के साथ Universal Link या Intent पर रीडायरेक्ट जनरेट किया जाता है। यदि ऐप इंस्टॉल नहीं है, तो डाउनलोड के लिए App Store या Google Play पर रीडायरेक्ट करता है।
ऐप Firebase SDK आरंभीकरण के दौरान लिंक प्राप्त करता है। getDynamicLink() विधि संक्रमण डेटा के साथ PendingResult लौटाती है। सफल प्राप्ति के बाद, डीप लिंक पैरामीटर, एनालिटिक्स के लिए UTM टैग और लिंक बनाते समय भेजा गया मनमाना डेटा निकाला जाता है।
Firebase Console Dynamic Links बनाने के लिए एक दृश्य इंटरफ़ेस प्रदान करता है। डेवलपर डीप लिंक URL, अभियान का नाम, iOS और Android के लिए अलग-अलग सेटिंग्स और एनालिटिक्स पैरामीटर निर्दिष्ट करता है। निर्माण के बाद, Firebase https://yourcode.page.link/abc123 जैसा एक छोटा लिंक जनरेट करता है, जिसे विज्ञापन सामग्री, ईमेल अभियान और सोशल नेटवर्क में उपयोग किया जा सकता है।
Dynamic Links के प्रोग्रामेटिक निर्माण के लिए Firebase REST API या क्लाइंट SDK का उपयोग किया जाता है। REST API कस्टम पैरामीटर के साथ मार्केटिंग अभियानों के लिए बल्क लिंक जनरेशन की अनुमति देता है, जिसमें सोशल नेटवर्क लिंक और एसिंक्रोनस क्लिक एनालिटिक्स शामिल हैं। API के माध्यम से लिंक बनाते समय, socialMetaTagInfo पैरामीटर को सही ढंग से निर्दिष्ट करना महत्वपूर्ण है — वे निर्धारित करते हैं कि मैसेंजर और सोशल नेटवर्क में प्रीव्यू कार्ड के साथ साझा करने पर लिंक कैसे दिखाई देता है।
| पैरामीटर | उद्देश्य | अनिवार्यता |
|---|---|---|
| Deep Link URL | ऐप कंटेंट का आंतरिक लिंक | हाँ |
| iOS Bundle ID | App Store में ऐप पहचानकर्ता | iOS के लिए |
| Android Package Name | Google Play में पैकेज नाम | Android के लिए |
| Fallback URL | ऐप न होने पर वेब पेज | नहीं |
| UTM टैग | Google Analytics के लिए पैरामीटर | नहीं |
iOS पर Firebase Dynamic Links के साथ काम करने के लिए, CocoaPods या Swift Package Manager के माध्यम से Firebase SDK को एकीकृत करना, Info.plist को GOOGLE_APP_ID के साथ कॉन्फ़िगर करना और प्रोजेक्ट के Associated Domains में Dynamic Links डोमेन को रजिस्टर करना आवश्यक है। उसके बाद, ऐप स्वचालित रूप से Firebase द्वारा जनरेट किए गए Universal Links को संभालता है।
Xcode में, applinks:yourcode.page.link जैसी प्रविष्टि के साथ Associated Domains क्षमता जोड़ना आवश्यक है। Firebase SDK Universal Links को संभालने के लिए application(_:continue:restorationHandler:) विधि का उपयोग करता है, इसलिए AppDelegate के साथ अतिरिक्त एकीकरण की आवश्यकता नहीं है — Firebase स्वचालित रूप से User Activity से Dynamic Link पैरामीटर निकालता है।
उचित Firebase आरंभीकरण और Dynamic Link हैंडलर रजिस्ट्रेशन के लिए Info.plist कॉन्फ़िगरेशन का उदाहरण। FIROptions कुंजी में GoogleService-Info.plist से प्रोजेक्ट पहचानकर्ता होना चाहिए।
<key>FirebaseDynamicLinksCustomDomains</key>
<array>
<string>https://yourcode.page.link</string>
</array>
<key>FirebaseAppDelegateProxyEnabled</key>
<false/>
यदि AppDelegate प्रॉक्सी अक्षम है, तो handleUniversalLink(_:) विधि को मैन्युअल रूप से कॉल करना और continue NSUserActivity से User Activity पास करना आवश्यक है। Firebase SDK स्वचालित रूप से लिंक पैरामीटर निकालता है और completion handler के माध्यम से DynamicLink लौटाता है।
Android पर, Firebase Dynamic Links एकीकरण build.gradle में निर्भरताएँ और Firebase Console से google-services.json फ़ाइल जोड़ने से शुरू होता है। Dynamic Links डोमेन Firebase Console में रजिस्टर किया जाता है, जिसके बाद इस डोमेन वाले सभी लिंक action VIEW के साथ Intent Filter के माध्यम से Android ऐप द्वारा स्वचालित रूप से पहचाने जाते हैं। सही संचालन के लिए, रूट और मॉड्यूल build.gradle में Google Services प्लगइन जोड़ना और Gradle सिंक्रोनाइज़ेशन करना भी आवश्यक है।
Android पर लिंक को सही ढंग से संभालने के लिए, उस Activity में Dynamic Links डोमेन के लिए Intent Filter जोड़ना आवश्यक है जो इनकमिंग लिंक प्राप्त करेगी। फ़िल्टर में https स्कीम, आपका Dynamic Links डोमेन होस्ट और डिफ़ॉल्ट पथ शामिल होना चाहिए।
yourcode.page.link डोमेन पर Dynamic Links प्राप्त करने के लिए AndroidManifest.xml में Intent Filter का उदाहरण।
<activity android:name=".MainActivity"
android:launchMode="singleTask">
<intent-filter
android:autoVerify="true">
<action
android:name="android.intent.action.VIEW" />
<category
android:name="android.intent.category.DEFAULT" />
<category
android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="yourcode.page.link" />
</intent-filter>
</activity>
Dynamic Links प्राप्त करने वाली Activity के लिए launchMode को singleTask पर सेट करना महत्वपूर्ण है। यह बार-बार लिंक क्लिक करने पर Activity का नया इंस्टेंस बनने से रोकता है और सभी इनकमिंग डीप लिंक को एक ही इंस्टेंस में संभालने की अनुमति देता है।
Android के लिए Firebase SDK FirebaseDynamicLinks.getInstance().getDynamicLink(intent) विधि प्रदान करता है, जो लिंक डेटा के साथ PendingTask ऑब्जेक्ट लौटाती है। DynamicLink ऑब्जेक्ट से डीप URI, UTM पैरामीटर और संक्रमण टाइमस्टैम्प निकाला जाता है। Activity के onCreate() और onNewIntent() विधियों में प्रसंस्करण करने की अनुशंसा की जाती है।
प्रसंस्करण करते समय, यह ध्यान रखना महत्वपूर्ण है कि Dynamic Link कोल्ड स्टार्ट से ऐप लॉन्च करते समय और किसी अन्य ऐप से पहले से चल रहे ऐप में संक्रमण करते समय दोनों स्थितियों में प्राप्त किया जा सकता है। दूसरे मामले के लिए, onNewIntent() को ओवरराइड करना और Dynamic Link जाँच को फिर से कॉल करना आवश्यक है।
MainActivity में Firebase Dynamic Link प्राप्त करने और संभालने का उदाहरण। कोड कोल्ड स्टार्ट और किसी अन्य ऐप से संक्रमण दोनों को संभालता है।
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
checkDynamicLink(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
checkDynamicLink(intent)
}
private fun checkDynamicLink(intent: Intent) {
FirebaseDynamicLinks.getInstance()
.getDynamicLink(intent)
.addOnSuccessListener link ->
val deepLink = link?.link.toString()
handleDeepLink(deepLink)
}
}
}
addOnSuccessListener विधि एक DynamicLink लौटाती है, जिससे link?.link के माध्यम से लक्ष्य लिंक निकाला जाता है। यदि listener null लौटाता है, तो इसका मतलब है कि Intent में Dynamic Link नहीं है — यह बिना इनकमिंग लिंक के सामान्य ऐप लॉन्च है। क्लिक एनालिटिक्स के लिए UTM टैग भी उपलब्ध हैं, जिनमें campaign, medium, source और content शामिल हैं, जिन्हें प्रत्येक मार्केटिंग चैनल की प्रभावशीलता के विस्तृत मूल्यांकन के लिए Google Analytics को भेजा जा सकता है।
अक्सर पूछे जाने वाले प्रश्न
Firebase Dynamic Links डिफर्ड डीप लिंक का समर्थन करता है — लिंक संदर्भ को संरक्षित रखता है भले ही ऐप इंस्टॉल न हो। इंस्टॉलेशन के बाद, ऐप सभी संक्रमण पैरामीटर प्राप्त करता है, जो सामान्य URL Scheme या Universal Links के साथ असंभव है।
Firebase Dynamic Links मुफ्त Firebase Spark मूल्य योजना में शामिल हैं। बनाए जा सकने वाले लिंक की संख्या पर कोई सीमा नहीं है। हालाँकि, 2024 से Google ने एक नए बुनियादी ढाँचे में संक्रमण की घोषणा की है, इसलिए शर्तें बदल सकती हैं।
Dynamic Links मोबाइल एप्लिकेशन के लिए डिज़ाइन की गई हैं। डेस्कटॉप वेब ब्राउज़र से लिंक पर क्लिक करने पर, यह फ़ॉलबैक URL खोलेगा। वेब एप्लिकेशन के लिए, सामान्य लिंक या अपना स्वयं का रीडायरेक्ट तर्क उपयोग करें।
Firebase Console व्यवहार का पूर्वावलोकन करने के लिए Test Dynamic Link बटन प्रदान करता है। आप सभी संक्रमण परिदृश्यों के स्थानीय परीक्षण के लिए इंस्टॉल किए गए Firebase SDK के साथ Android एमुलेटर या iOS सिम्युलेटर का भी उपयोग कर सकते हैं।
एक छोटा Firebase Dynamic Link page.link डोमेन और लगभग 7 वर्णों के यादृच्छिक प्रत्यय से बना होता है। कुल लंबाई लगभग 30 वर्ण है। अंदर का डीप लिंक किसी भी लंबाई का हो सकता है, लेकिन संगतता के लिए इसे 2 KB तक सीमित रखने की अनुशंसा की जाती है।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें