了解 2023 年 Google I/O 大会上介绍的 Firebase 亮点。了解详情

स्पंदन ऐप में डायनामिक लिंक बनाएं

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

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

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

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

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

    flutter pub add firebase_dynamic_links
    
  3. यदि आप एक Android ऐप बना रहे हैं, तो Firebase कंसोल का प्रोजेक्ट सेटिंग पृष्ठ खोलें और सुनिश्चित करें कि आपने अपनी 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-वर्णों के प्रत्यय के साथ लंबे लिंक बनाने चाहिए, जिससे यह बहुत कम हो जाता है कि कोई व्यक्ति एक वैध गतिशील लिंक का अनुमान लगा सकता है। ऐसा करने के लिए, buildShortLink() विधि में ShortDynamicLinkType.unguessable पास करें:

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);

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

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