Firebase डाइनैमिक लिंक बिल्डर एपीआई की मदद से, छोटे या लंबे डाइनैमिक लिंक बनाए जा सकते हैं. यह एपीआई लंबा डाइनैमिक लिंक या डाइनैमिक लिंक वाला ऑब्जेक्ट स्वीकार करता है पैरामीटर की मदद से सेट किया जाता है और नीचे दिए गए उदाहरणों की तरह यूआरएल दिखाता है:
https://example.com/link/WXYZ https://example.page.link/WXYZ
Firebase और डाइनैमिक लिंक SDK टूल सेट अप करना
अपने Android ऐप्लिकेशन में डाइनैमिक लिंक बनाने से पहले, आपको Firebase SDK टूल. अगर आपका ऐप्लिकेशन डाइनैमिक लिंक पाने के लिए सेट अप किया गया है, तो आपने पहले ही ने इन चरणों को पूरा कर लिया है और आप इस सेक्शन को छोड़ सकते हैं.
अगर आपने अब तक ऐसा नहीं किया है, तो अपने Android प्रोजेक्ट में Firebase जोड़ें.
अपना ऐप्लिकेशन रजिस्टर करते समय, अपनी SHA-1 साइनिंग कुंजी बताएं. अगर आपको ऐप्लिकेशन लिंक, अपनी SHA-256 कुंजी भी बताएं.
-
आपके मॉड्यूल (ऐप्लिकेशन-लेवल) की Gradle फ़ाइल में (आम तौर पर
<project>/<app-module>/build.gradle.kts
या<project>/<app-module>/build.gradle
), Android के लिए डाइनैमिक लिंक लाइब्रेरी के लिए डिपेंडेंसी जोड़ें. हमारा सुझाव है कि Firebase Android बीओएम लाइब्रेरी के वर्शन को कंट्रोल करने के लिए.डाइनैमिक लिंक के साथ बेहतर अनुभव पाने के लिए, हमारा सुझाव है कि Google Analytics चालू करना जोड़ना होगा. साथ ही, अपने ऐप्लिकेशन में Google Analytics के लिए Firebase SDK टूल जोड़ना होगा.
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.1.2")) // Add the dependencies for the Dynamic Links and Analytics libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-dynamic-links' implementation 'com.google.firebase:firebase-analytics' }
Firebase Android BoM का इस्तेमाल करके, आपका ऐप्लिकेशन हमेशा Firebase Android लाइब्रेरी के साथ काम करने वाले वर्शन का इस्तेमाल करेगा.
(वैकल्पिक) BoM का इस्तेमाल किए बिना Firebase लाइब्रेरी डिपेंडेंसी जोड़ें
अगर आप Firebase BoM का इस्तेमाल नहीं करना चाहते हैं, तो आपको Firebase लाइब्रेरी का हर वर्शन बताना होगा इसकी डिपेंडेंसी लाइन में.
ध्यान दें कि अगर आप अपने ऐप्लिकेशन में कई Firebase लाइब्रेरी का इस्तेमाल करते हैं, तो हम लाइब्रेरी वर्शन को मैनेज करने के लिए BoM का इस्तेमाल करने की सलाह देते हैं. इससे यह पक्का होता है कि साथ काम करता है.
dependencies { // Add the dependencies for the Dynamic Links and Analytics libraries // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-dynamic-links:22.1.0' implementation 'com.google.firebase:firebase-analytics:22.0.2' }
- Firebase कंसोल में, डाइनैमिक लिंक सेक्शन खोलें.
-
अगर आपने पहले से सेवा की शर्तें स्वीकार नहीं की हैं और कोई डोमेन सेट कर लिया है आपके डाइनैमिक लिंक के लिए, प्रॉम्प्ट मिलने पर यह काम करें.
अगर आपके पास पहले से ही डाइनैमिक लिंक डोमेन है, तो उस पर ध्यान दें. आपको ये काम करने होंगे प्रोग्राम बनाकर डाइनैमिक लिंक बनाते समय, आपको डाइनैमिक लिंक डोमेन उपलब्ध कराना चाहिए.
- सुझाव: अपने डीप लिंक में इस्तेमाल किए जा सकने वाले यूआरएल पैटर्न तय करें और फ़ॉलबैक लिंक. ऐसा करके, आप अनधिकृत पक्षों को ऐसे डाइनैमिक लिंक बनाना जो आपके डोमेन से उन साइटों पर रीडायरेक्ट करते हों जिन पर आपका कंट्रोल नहीं है. खास तौर पर अनुमति दें यूआरएल पैटर्न.
Firebase कंसोल का इस्तेमाल करना
अगर आपको टेस्टिंग के लिए या अपनी मार्केटिंग टीम के लिए एक ही डाइनैमिक लिंक जनरेट करना है ताकि कोई ऐसा लिंक आसानी से बनाया जा सके जिसका इस्तेमाल सोशल मीडिया पोस्ट में किया जा सके. सबसे आसान तरीक़ा यह है कि Firebase कंसोल पर जाएं और सिलसिलेवार तरीके से दिए गए निर्देशों का पालन करके, मैन्युअल तौर पर नया टेंप्लेट बनाया जा सकता है.
पैरामीटर से डाइनैमिक लिंक बनाना
डायनामिक लिंक बनाने के लिए, इसकी मदद से एक नया DynamicLink
ऑब्जेक्ट बनाएं
बिल्डर, जिसमें बिल्डर तरीकों के साथ डाइनैमिक लिंक पैरामीटर तय होते हैं. इसके बाद, कॉल करें
buildDynamicLink
या buildShortDynamicLink
.
नीचे दिए गए छोटे से उदाहरण से एक लंबा डाइनैमिक लिंक बन जाता है, जो
https://www.example.com/
, जो Android पर आपके Android ऐप्लिकेशन के साथ खुलता है
iOS पर com.example.ios
ऐप्लिकेशन के लिए:
Kotlin+KTX
val dynamicLink = Firebase.dynamicLinks.dynamicLink { link = Uri.parse("https://www.example.com/") domainUriPrefix = "https://example.page.link" // Open links with this app on Android androidParameters { } // Open links with com.example.ios on iOS iosParameters("com.example.ios") { } } val dynamicLinkUri = dynamicLink.uri
Java
DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.parse("https://www.example.com/")) .setDomainUriPrefix("https://example.page.link") // Open links with this app on Android .setAndroidParameters(new DynamicLink.AndroidParameters.Builder().build()) // Open links with com.example.ios on iOS .setIosParameters(new DynamicLink.IosParameters.Builder("com.example.ios").build()) .buildDynamicLink(); Uri dynamicLinkUri = dynamicLink.getUri();
छोटा डाइनैमिक लिंक बनाने के लिए, उसी तरीके से DynamicLink
बनाएं और
फिर buildShortDynamicLink
पर कॉल करें. छोटा लिंक बनाने के लिए,
नेटवर्क कॉल का अनुरोध किया है, इसलिए सीधे लिंक को लौटाने के बजाय,
buildShortDynamicLink
एक Task
दिखाता है, जो
अनुरोध पूरा होने पर यह छोटा लिंक दिखेगा. उदाहरण के लिए:
Kotlin+KTX
val shortLinkTask = Firebase.dynamicLinks.shortLinkAsync { link = Uri.parse("https://www.example.com/") domainUriPrefix = "https://example.page.link" // Set parameters // ... }.addOnSuccessListener { (shortLink, flowchartLink) -> // You'll need to import com.google.firebase.dynamiclinks.component1 and // com.google.firebase.dynamiclinks.component2 // Short link created processShortLink(shortLink, flowchartLink) }.addOnFailureListener { // Error // ... }
Java
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.parse("https://www.example.com/")) .setDomainUriPrefix("https://example.page.link") // Set parameters // ... .buildShortDynamicLink() .addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() { @Override public void onComplete(@NonNull Task<ShortDynamicLink> task) { if (task.isSuccessful()) { // Short link created Uri shortLink = task.getResult().getShortLink(); Uri flowchartLink = task.getResult().getPreviewLink(); } else { // Error // ... } } });
डिफ़ॉल्ट रूप से, 17 वर्णों के लिंक के सफ़िक्स के साथ छोटे डाइनैमिक लिंक जनरेट होते हैं
किसी मान्य डाइनैमिक लिंक का अनुमान लगाने की संभावना को काफ़ी कम कर दें. अगर, इसके लिए
कोई नुकसान नहीं होता, क्योंकि कोई व्यक्ति
छोटे लिंक का सही अनुमान लगाता है,
ऐसा हो सकता है कि आप ऐसे सफ़िक्स जनरेट करना पसंद करें जो सिर्फ़ तब तक ज़रूरी हों
यूनीक है, जो ShortDynamicLink.Suffix.SHORT
को पास करके ऐसा किया जा सकता है
buildShortDynamicLink
तरीके से:
Kotlin+KTX
val shortLinkTask = Firebase.dynamicLinks.shortLinkAsync(ShortDynamicLink.Suffix.SHORT) { // Set parameters // ... }
Java
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() // ... .buildShortDynamicLink(ShortDynamicLink.Suffix.SHORT); // ...
डाइनैमिक लिंक पैरामीटर
आप डाइनैमिक लिंक बनाने के लिए, डाइनैमिक लिंक बिल्डर एपीआई का इस्तेमाल करके, इनमें से किसी भी इस्तेमाल किए जा सकने वाले पैरामीटर हैं. एपीआई का संदर्भ देखें.
नीचे दिए गए उदाहरण में कई सामान्य पैरामीटर के साथ एक डाइनैमिक लिंक बनाया गया है सेट:
Kotlin+KTX
val dynamicLink = Firebase.dynamicLinks.dynamicLink { // or Firebase.dynamicLinks.shortLinkAsync link = Uri.parse("https://www.example.com/") domainUriPrefix = "https://example.page.link" androidParameters("com.example.android") { minimumVersion = 125 } iosParameters("com.example.ios") { appStoreId = "123456789" minimumVersion = "1.0.1" } googleAnalyticsParameters { source = "orkut" medium = "social" campaign = "example-promo" } itunesConnectAnalyticsParameters { providerToken = "123456" campaignToken = "example-promo" } socialMetaTagParameters { title = "Example of a Dynamic Link" description = "This link works whether the app is installed or not!" } }
Java
DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.parse("https://www.example.com/")) .setDomainUriPrefix("https://example.page.link") .setAndroidParameters( new DynamicLink.AndroidParameters.Builder("com.example.android") .setMinimumVersion(125) .build()) .setIosParameters( new DynamicLink.IosParameters.Builder("com.example.ios") .setAppStoreId("123456789") .setMinimumVersion("1.0.1") .build()) .setGoogleAnalyticsParameters( new DynamicLink.GoogleAnalyticsParameters.Builder() .setSource("orkut") .setMedium("social") .setCampaign("example-promo") .build()) .setItunesConnectAnalyticsParameters( new DynamicLink.ItunesConnectAnalyticsParameters.Builder() .setProviderToken("123456") .setCampaignToken("example-promo") .build()) .setSocialMetaTagParameters( new DynamicLink.SocialMetaTagParameters.Builder() .setTitle("Example of a Dynamic Link") .setDescription("This link works whether the app is installed or not!") .build()) .buildDynamicLink(); // Or buildShortDynamicLink()
इन तरीकों का इस्तेमाल करके, डाइनैमिक लिंक पैरामीटर को सेट किया जा सकता है:
डाइनैमिक लिंक पैरामीटर | |
---|---|
लिंक सेट करें |
वह लिंक जिससे आपका ऐप्लिकेशन खुलेगा. उस यूआरएल के बारे में बताएं जिसे आपका ऐप्लिकेशन मैनेज कर सकता है. आम तौर पर, इसमें ऐप्लिकेशन के कॉन्टेंट का यूआरएल होता है या पेलोड, जो ऐप्लिकेशन के खास लॉजिक को शुरू करता है (जैसे कि उपयोगकर्ता को कूपन के साथ क्रेडिट देना या वेलकम स्क्रीन दिखेगी). यह लिंक एक सही ढंग से फ़ॉर्मैट किया गया यूआरएल होना चाहिए, सही तरीके से यूआरएल-एन्कोड किया गया होना चाहिए, इसका इस्तेमाल करें जो एचटीटीपी या एचटीटीपीएस में से कोई एक हो और कोई दूसरा डाइनैमिक लिंक न हो. |
सेटडोमेनयूरीप्रीफ़िक्स | आपका डाइनैमिक लिंक यूआरएल प्रीफ़िक्स, जो आपको Firebase कंसोल में मिलेगा. ऐप्लिकेशन
डाइनैमिक लिंक डोमेन के उदाहरण यहां दिए गए हैं:
https://example.com/link https://example.page.link |
Android के पैरामीटर | |
---|---|
setFallbackUrl | ऐप्लिकेशन इंस्टॉल न होने पर खुलने वाला लिंक. इसके बारे में बताएं कि यह ऐप्लिकेशन इंस्टॉल न होने पर, Play Store से आपका ऐप्लिकेशन इंस्टॉल करने के अलावा कुछ और करेगा. जैसे, कॉन्टेंट का मोबाइल वेब वर्शन खोलना या अपने ऐप्लिकेशन का प्रमोशन करने वाला पेज दिखाना. |
सेट कम से कम वर्शन | आपके ऐप्लिकेशन के कम से कम वर्शन का versionCode , जो लिंक को खोल सकता हो. अगर इंस्टॉल किया गया ऐप्लिकेशन पुराना वर्शन है, तो उपयोगकर्ता को ऐप्लिकेशन अपग्रेड करने के लिए Play Store पर ले जाया जाता है. |
Ios पैरामीटर | |
---|---|
setAppStoreId | आपके ऐप्लिकेशन का ऐप स्टोर आईडी, जिसका इस्तेमाल ऐप्लिकेशन के इंस्टॉल न होने पर, उपयोगकर्ताओं को App Store पर भेजने के लिए किया जाता है |
setFallbackUrl | ऐप्लिकेशन इंस्टॉल न होने पर खुलने वाला लिंक. इसके बारे में बताएं कि यह ऐप्लिकेशन इंस्टॉल न होने पर, App Store से आपका ऐप्लिकेशन इंस्टॉल करने के अलावा, कुछ और करने के लिए भी निर्देश देगा. जैसे, कॉन्टेंट का मोबाइल वेब वर्शन खोलना या अपने ऐप्लिकेशन का प्रमोशन पेज दिखाना. |
सेट कस्टम स्कीम | आपके ऐप्लिकेशन के बंडल आईडी की जगह, आपके ऐप्लिकेशन की कस्टम यूआरएल स्कीम |
setIpadFallbackUrl | iPad पर, ऐप्लिकेशन इंस्टॉल न होने पर खोलने के लिए लिंक. इसके बारे में बताएं कि यह ऐप्लिकेशन इंस्टॉल न होने पर, App Store से आपका ऐप्लिकेशन इंस्टॉल करने के अलावा, कुछ और करने के लिए भी निर्देश देगा. जैसे, कॉन्टेंट का वेब वर्शन खोलना या अपने ऐप्लिकेशन का प्रमोशन करने वाला पेज दिखाना. |
setIpadBundleId | iPad पर इस्तेमाल करने के लिए, iOS ऐप्लिकेशन का बंडल आईडी. ऐप्लिकेशन, Firebase कंसोल के खास जानकारी देने वाले पेज से आपके प्रोजेक्ट से कनेक्ट होना चाहिए. |
सेट कम से कम वर्शन | आपके ऐप्लिकेशन के उस वर्शन का वर्शन नंबर जो लिंक को खोल सकता है. आपके ऐप्लिकेशन को खोले जाने पर, यह फ़्लैग आपके पास भेजा जाता है. इसके बाद, आपके ऐप्लिकेशन को यह तय करना होता है कि उसका क्या करना है. |
नेविगेशनजानकारी पैरामीटर | |
---|---|
setForcedredirectEnabled | अगर यह नीति '1' पर सेट है, तो डाइनैमिक लिंक के खुलने पर ऐप्लिकेशन की झलक दिखाने वाले पेज को छोड़कर आगे बढ़ें. इसके बजाय, उपयोगकर्ताओं को ऐप्लिकेशन या स्टोर पर रीडायरेक्ट करें. जब उपयोगकर्ता ऐप्लिकेशन में डाइनैमिक लिंक खोलते हैं, तो ऐप्लिकेशन की झलक दिखाने वाला पेज (डिफ़ॉल्ट रूप से चालू होता है), उपयोगकर्ताओं को सबसे सही डेस्टिनेशन पर भेज सकता है; हालांकि, अगर आपको कोई डाइनैमिक लिंक सिर्फ़ ऐसे ऐप्लिकेशन में खुलने की उम्मीद है जो इस पेज के बिना भी डाइनैमिक लिंक को भरोसेमंद तरीके से खोल सकते हैं, तो इस पैरामीटर की मदद से उसे बंद किया जा सकता है. यह पैरामीटर सिर्फ़ iOS पर डाइनैमिक लिंक के काम करने के तरीके पर असर डालेगा. |
SocialMetaTagपैरामीटर | |
---|---|
सेट टाइटल | सोशल मीडिया पर पोस्ट में डाइनैमिक लिंक शेयर करने के दौरान इस्तेमाल किया जाने वाला टाइटल. |
जानकारी सेट करें | सोशल मीडिया पर पोस्ट में डाइनैमिक लिंक शेयर करने के दौरान इस्तेमाल किया जाने वाला ब्यौरा. |
सेट चित्र Url | इस लिंक से जुड़ी इमेज का यूआरएल. इमेज का साइज़ कम से कम 300x200 पिक्सल और उसका साइज़ 300 केबी से कम होना चाहिए. |
GoogleAnalyticsपैरामीटर | |
---|---|
setSource setMedium setCampaign setTerm setContent |
Google Play के आंकड़ों के पैरामीटर. ये पैरामीटर
(utm_source , utm_medium ,
utm_campaign , utm_term , और utm_content )
Play Store पर पास की जाती हैं और लिंक पेलोड में जोड़ दी जाती हैं.
|
ItunesConnectAnalytics पैरामीटर | |
---|---|
setProviderToken setAffiliateToken setCampaignToken |
iTunes Connect के आंकड़ों के पैरामीटर. ये पैरामीटर (pt ,
at , ct ) App Store में पास की जाती हैं. |
लंबे डाइनैमिक लिंक को छोटा करना
लंबे डायनामिक लिंक को छोटा करने के लिए
दूसरे बिल्डर के साथ पैरामीटर सेट करने के बजाय setLongLink
तरीका:
Kotlin+KTX
val shortLinkTask = Firebase.dynamicLinks.shortLinkAsync { longLink = Uri.parse( "https://example.page.link/?link=" + "https://www.example.com/&apn=com.example.android&ibn=com.example.ios", ) }.addOnSuccessListener { (shortLink, flowChartLink) -> // You'll need to import com.google.firebase.dynamiclinks.component1 and // com.google.firebase.dynamiclinks.component2 // Short link created processShortLink(shortLink, flowChartLink) }.addOnFailureListener { // Error // ... }
Java
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLongLink(Uri.parse("https://example.page.link/?link=https://www.example.com/&apn=com.example.android&ibn=com.example.ios")) .buildShortDynamicLink() .addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() { @Override public void onComplete(@NonNull Task<ShortDynamicLink> task) { if (task.isSuccessful()) { // Short link created Uri shortLink = task.getResult().getShortLink(); Uri flowchartLink = task.getResult().getPreviewLink(); } else { // Error // ... } } });