फ़्लटर ऐप में डायनामिक लिंक बनाएं

आप फायरबेस डायनेमिक लिंक बिल्डर एपीआई के साथ छोटे या लंबे डायनेमिक लिंक बना सकते हैं। यह एपीआई या तो एक लंबे डायनेमिक लिंक या डायनेमिक लिंक पैरामीटर वाले ऑब्जेक्ट को स्वीकार करता है, और निम्न उदाहरणों की तरह यूआरएल लौटाता है:

https://example.com/link/WXYZ
https://example.page.link/WXYZ

इससे पहले कि आप अपने एंड्रॉइड ऐप में डायनामिक लिंक बना सकें, आपको फायरबेस एसडीके शामिल करना होगा। यदि आपका ऐप डायनामिक लिंक प्राप्त करने के लिए सेट है, तो आपने पहले ही ये चरण पूरे कर लिए हैं और आप इस अनुभाग को छोड़ सकते हैं।

  1. यदि आपने पहले से ऐसा नहीं किया है तो फ़्लटर के लिए फ़ायरबेस एसडीके स्थापित करें और प्रारंभ करें

  2. अपने फ़्लटर प्रोजेक्ट की रूट डायरेक्ट्री से, डायनामिक लिंक प्लगइन स्थापित करने के लिए निम्न कमांड चलाएँ:

    flutter pub add firebase_dynamic_links
    
  3. यदि आप एक एंड्रॉइड ऐप बना रहे हैं, तो फायरबेस कंसोल का प्रोजेक्ट सेटिंग पेज खोलें और सुनिश्चित करें कि आपने अपनी SHA-1 साइनिंग कुंजी निर्दिष्ट कर दी है। यदि आप ऐप लिंक का उपयोग करते हैं, तो अपनी SHA-256 कुंजी भी निर्दिष्ट करें।

  4. फायरबेस कंसोल में, डायनेमिक लिंक अनुभाग खोलें।

    1. यदि आपने पहले से ही अपने डायनामिक लिंक के लिए कोई डोमेन सेट नहीं किया है, तो आरंभ करें बटन पर क्लिक करें और संकेतों का पालन करें।

      यदि आपके पास पहले से ही डायनामिक लिंक डोमेन है, तो इस पर ध्यान दें। जब आप प्रोग्रामेटिक रूप से डायनामिक लिंक बनाते हैं तो आपको एक डायनामिक लिंक डोमेन प्रदान करना होगा।

    2. अनुशंसित : "अधिक" (⋮) मेनू से, अपने डीप लिंक और फ़ॉलबैक लिंक में अनुमत URL पैटर्न निर्दिष्ट करें। ऐसा करके, आप अनधिकृत पार्टियों को डायनामिक लिंक बनाने से रोकते हैं जो आपके डोमेन से उन साइटों पर रीडायरेक्ट होते हैं जिन्हें आप नियंत्रित नहीं करते हैं।

      विशिष्ट URL पैटर्न की अनुमति दें देखें।

डायनामिक लिंक बनाने के लिए, एक नया DynamicLinkParameters ऑब्जेक्ट बनाएं और इसे buildLink() या buildShortLink() में पास करें।

निम्नलिखित न्यूनतम उदाहरण https://www.example.com/ पर एक लंबा डायनामिक लिंक बनाता है जो Android पर com.example.app.android और iOS पर ऐप com.example.app.ios के साथ खुलता है:

final dynamicLinkParams = DynamicLinkParameters(
  link: Uri.parse("https://www.example.com/"),
  uriPrefix: "https://example.page.link",
  androidParameters: const AndroidParameters(packageName: "com.example.app.android"),
  iosParameters: const IOSParameters(bundleId: "com.example.app.ios"),
);
final dynamicLink =
    await FirebaseDynamicLinks.instance.buildLink(dynamicLinkParams);

एक छोटा डायनेमिक लिंक बनाने के लिए, DynamicLinkParameters ऑब्जेक्ट को buildShortLink() पर पास करें। लघु लिंक बनाने के लिए नेटवर्क कॉल की आवश्यकता होती है। उदाहरण के लिए:

final dynamicLinkParams = DynamicLinkParameters(
  link: Uri.parse("https://www.example.com/"),
  uriPrefix: "https://example.page.link",
  androidParameters: const AndroidParameters(packageName: "com.example.app.android"),
  iosParameters: const IOSParameters(bundleId: "com.example.app.ios"),
);
final dynamicLink =
    await FirebaseDynamicLinks.instance.buildShortLink(dynamicLinkParams);

डिफ़ॉल्ट रूप से, छोटे डायनामिक लिंक ऐसे प्रत्ययों के साथ उत्पन्न होते हैं जो केवल कुछ वर्ण लंबे होते हैं। हालाँकि यह लिंक को अधिक संक्षिप्त बनाता है, यह संभावना भी प्रस्तुत करता है कि कोई वैध लघु लिंक का अनुमान लगा सकता है। अक्सर, अगर कोई ऐसा करता है तो कोई नुकसान नहीं होता, क्योंकि लिंक सार्वजनिक जानकारी की ओर ले जाता है।

हालाँकि, यदि आपके छोटे लिंक उपयोगकर्ता-विशिष्ट जानकारी तक ले जाते हैं, तो आपको 17-वर्ण प्रत्ययों के साथ लंबे लिंक बनाने चाहिए, जिससे यह बहुत कम संभावना हो जाती है कि कोई वैध डायनामिक लिंक का अनुमान लगा सके। ऐसा करने के लिए, ShortDynamicLinkType.unguessable को buildShortLink() विधि में पास करें:

final unguessableDynamicLink = await FirebaseDynamicLinks.instance.buildShortLink(
    dynamicLinkParams,
    shortLinkType: ShortDynamicLinkType.unguessable,
);

आप किसी भी समर्थित पैरामीटर के साथ डायनामिक लिंक बनाने के लिए डायनामिक लिंक बिल्डर एपीआई का उपयोग कर सकते हैं। एपीआई संदर्भ देखें.

निम्नलिखित उदाहरण कई सामान्य पैरामीटर सेट के साथ एक डायनामिक लिंक बनाता है:

final dynamicLinkParams = DynamicLinkParameters(
  link: Uri.parse("https://www.example.com/"),
  uriPrefix: "https://example.page.link",
  androidParameters: const AndroidParameters(
    packageName: "com.example.app.android",
    minimumVersion: 30,
  ),
  iosParameters: const IOSParameters(
    bundleId: "com.example.app.ios",
    appStoreId: "123456789",
    minimumVersion: "1.0.1",
  ),
  googleAnalyticsParameters: const GoogleAnalyticsParameters(
    source: "twitter",
    medium: "social",
    campaign: "example-promo",
  ),
  socialMetaTagParameters: SocialMetaTagParameters(
    title: "Example of a Dynamic Link",
    imageUrl: Uri.parse("https://example.com/image.png"),
  ),
);
final dynamicLink =
    await FirebaseDynamicLinks.instance.buildShortLink(dynamicLinkParams);

आप निम्न विधियों से डायनामिक लिंक पैरामीटर सेट कर सकते हैं:

डायनामिकलिंक पैरामीटर
सेटलिंक आपका ऐप लिंक खुल जाएगा. एक यूआरएल निर्दिष्ट करें जिसे आपका ऐप संभाल सकता है, आमतौर पर ऐप की सामग्री या पेलोड, जो ऐप-विशिष्ट तर्क शुरू करता है (जैसे कि उपयोगकर्ता को कूपन के साथ क्रेडिट करना या स्वागत स्क्रीन प्रदर्शित करना)। यह लिंक एक अच्छी तरह से स्वरूपित यूआरएल होना चाहिए, उचित यूआरएल-एनकोडेड होना चाहिए, HTTP या HTTPS का उपयोग करना चाहिए, और कोई अन्य डायनामिक लिंक नहीं हो सकता।
setDomainUriPrefix आपका डायनामिक लिंक यूआरएल उपसर्ग, जिसे आप फायरबेस कंसोल में पा सकते हैं। डायनामिक लिंक डोमेन निम्नलिखित उदाहरणों जैसा दिखता है:
https://example.com/link
https://example.page.link
एंड्रॉइड पैरामीटर्स
setFallbackUrl ऐप इंस्टॉल न होने पर लिंक खुलेगा। जब ऐप इंस्टॉल न हो तो प्ले स्टोर से अपना ऐप इंस्टॉल करने के अलावा कुछ और करने के लिए इसे निर्दिष्ट करें, जैसे सामग्री का मोबाइल वेब संस्करण खोलना, या अपने ऐप के लिए एक प्रचार पृष्ठ प्रदर्शित करना।
न्यूनतम संस्करण सेट करें आपके ऐप के न्यूनतम संस्करण का संस्करणकोड जो लिंक खोल सकता है। यदि इंस्टॉल किया गया ऐप पुराना संस्करण है, तो ऐप को अपग्रेड करने के लिए उपयोगकर्ता को प्ले स्टोर पर ले जाया जाता है।
Iosपैरामीटर
setAppStoreId आपके ऐप की ऐप स्टोर आईडी, ऐप इंस्टॉल न होने पर उपयोगकर्ताओं को ऐप स्टोर पर भेजने के लिए उपयोग की जाती है
setFallbackUrl ऐप इंस्टॉल न होने पर लिंक खुलेगा। जब ऐप इंस्टॉल न हो तो ऐप स्टोर से अपना ऐप इंस्टॉल करने के अलावा कुछ और करने के लिए इसे निर्दिष्ट करें, जैसे सामग्री का मोबाइल वेब संस्करण खोलना, या अपने ऐप के लिए एक प्रचार पृष्ठ प्रदर्शित करना।
setCustomScheme आपके ऐप की कस्टम URL योजना, यदि आपके ऐप की बंडल आईडी के अलावा किसी अन्य चीज़ के रूप में परिभाषित की गई है
setIpadFallbackUrl ऐप इंस्टॉल न होने पर आईपैड पर खुलने वाला लिंक। जब ऐप इंस्टॉल न हो तो ऐप स्टोर से अपना ऐप इंस्टॉल करने के अलावा कुछ और करने के लिए इसे निर्दिष्ट करें, जैसे सामग्री का वेब संस्करण खोलना, या अपने ऐप के लिए एक प्रचार पृष्ठ प्रदर्शित करना।
setIpadBundleId लिंक खोलने के लिए आईपैड पर उपयोग करने के लिए आईओएस ऐप की बंडल आईडी। ऐप को फायरबेस कंसोल के अवलोकन पृष्ठ से आपके प्रोजेक्ट से कनेक्ट होना चाहिए।
न्यूनतम संस्करण सेट करें आपके ऐप के न्यूनतम संस्करण की संस्करण संख्या जो लिंक खोल सकती है। यह फ़्लैग आपके ऐप के खुलने पर उसे भेज दिया जाता है, और आपके ऐप को यह तय करना होगा कि इसके साथ क्या करना है।
नेविगेशनइन्फोपैरामीटर
setForcedRedirectEnabled यदि '1' पर सेट है, तो डायनामिक लिंक खुलने पर ऐप पूर्वावलोकन पृष्ठ को छोड़ दें और इसके बजाय ऐप या स्टोर पर रीडायरेक्ट करें। ऐप पूर्वावलोकन पृष्ठ (डिफ़ॉल्ट रूप से सक्षम) उपयोगकर्ताओं को ऐप्स में डायनामिक लिंक खोलने पर अधिक विश्वसनीय रूप से सबसे उपयुक्त गंतव्य पर भेज सकता है; हालाँकि, यदि आप उम्मीद करते हैं कि डायनामिक लिंक केवल उन ऐप्स में खोला जाएगा जो इस पेज के बिना डायनामिक लिंक को विश्वसनीय रूप से खोल सकते हैं, तो आप इसे इस पैरामीटर के साथ अक्षम कर सकते हैं। यह पैरामीटर केवल iOS पर डायनामिक लिंक के व्यवहार को प्रभावित करेगा।
सोशलमेटाटैग पैरामीटर्स
सेटटाइटल किसी सामाजिक पोस्ट में डायनामिक लिंक साझा किए जाने पर उपयोग किया जाने वाला शीर्षक।
सेट विवरण किसी सामाजिक पोस्ट में डायनामिक लिंक साझा किए जाने पर उपयोग करने का विवरण।
setImageUrl इस लिंक से संबंधित छवि का URL. छवि कम से कम 300x200 px और 300 KB से कम होनी चाहिए।
GoogleAnalytics पैरामीटर्स
सेटसोर्स
सेटमीडियम
सेटअभियान
सेटटर्म
सेटसामग्री
Google Play विश्लेषण पैरामीटर. ये पैरामीटर (`utm_source`, `utm_medium`, `utm_campaign`, `utm_term`, `utm_content`) प्ले स्टोर पर भेजे जाते हैं और साथ ही लिंक पेलोड में जोड़े जाते हैं।
आईट्यून्सकनेक्टएनालिटिक्स पैरामीटर्स
setProviderToken
setAffiliateToken
setCampaignToken
आईट्यून्स कनेक्ट एनालिटिक्स पैरामीटर। ये पैरामीटर (`pt`, `at`, `ct`) ऐप स्टोर को भेज दिए जाते हैं।