iOS पर डाइनैमिक लिंक बनाना

Firebase Dynamic Links Builder API की मदद से, छोटे या बड़े Dynamic Links बनाए जा सकते हैं. यह एपीआई, लंबे Dynamic Link या Dynamic Link पैरामीटर वाले ऑब्जेक्ट को स्वीकार करता है. साथ ही, यहां दिए गए उदाहरणों की तरह यूआरएल दिखाता है:

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

ज़रूरी शर्तें

शुरू करने से पहले, पक्का करें कि आपने अपने iOS प्रोजेक्ट में Firebase जोड़ा हो.

Firebase डिपेंडेंसी इंस्टॉल और मैनेज करने के लिए, Swift Package Manager का इस्तेमाल करें.

  1. Xcode में, अपने ऐप्लिकेशन प्रोजेक्ट को खोलें. इसके बाद, File > Add Packages पर जाएं.
  2. जब आपसे कहा जाए, तब Firebase Apple प्लैटफ़ॉर्म SDK टूल की रिपॉज़िटरी जोड़ें:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Dynamic Links लाइब्रेरी चुनें.
  5. टारगेट की बिल्ड सेटिंग के Other Linker Flags सेक्शन में -ObjC फ़्लैग जोड़ें.
  6. Dynamic Links का बेहतर तरीके से इस्तेमाल करने के लिए, हमारा सुझाव है कि आप अपने Firebase प्रोजेक्ट में Google Analytics चालू करें. साथ ही, अपने ऐप्लिकेशन में Google Analytics के लिए Firebase SDK टूल जोड़ें. आपके पास, आईडीएफ़ए इकट्ठा करने की सुविधा के बिना या आईडीएफ़ए इकट्ठा करने की सुविधा के साथ लाइब्रेरी चुनने का विकल्प होता है. Firebase SDK के लिए Google Analytics में मॉड्यूल के नए संगठन के बारे में अक्सर पूछे जाने वाले सवाल देखें.
  7. इसके बाद, Xcode आपके पैकेज की डिपेंडेंसी से जुड़ी समस्या को हल करना शुरू कर देगा और उन्हें बैकग्राउंड में डाउनलोड करेगा.

अब, कॉन्फ़िगरेशन के कुछ चरण पूरे करें:

  1. Firebase कंसोल में, Dynamic Links सेक्शन खोलें.
  2. अगर आपने अब तक सेवा की शर्तें स्वीकार नहीं की हैं और Dynamic Links के लिए यूआरआई प्रीफ़िक्स सेट नहीं किया है, तो प्रॉम्प्ट मिलने पर ऐसा करें.

    अगर आपके पास पहले से Dynamic Links यूआरआई प्रीफ़िक्स है, तो उसे नोट कर लें. आपको प्रोग्राम के हिसाब से Dynamic Links बनाते समय, यह जानकारी देनी होगी.

  3. इसका सुझाव दिया जाता है: डीप लिंक और फ़ॉलबैक लिंक में इस्तेमाल किए जा सकने वाले यूआरएल पैटर्न तय करें. ऐसा करने से, बिना अनुमति वाले पक्ष Dynamic Links नहीं बना पाएंगे. ये Dynamic Links, आपके डोमेन से उन साइटों पर रीडायरेक्ट करते हैं जिन्हें आपने कंट्रोल नहीं किया है. यूआरएल के खास पैटर्न के लिए अनुमति देना लेख पढ़ें.
  4. पक्का करें कि आपके ऐप्लिकेशन की सेटिंग में, ऐप्लिकेशन का App Store आईडी और ऐप्लिकेशन आईडी प्रीफ़िक्स दिया गया हो. अपने ऐप्लिकेशन की सेटिंग देखने और उनमें बदलाव करने के लिए, अपने Firebase प्रोजेक्ट के सेटिंग पेज पर जाएं और अपना iOS ऐप्लिकेशन चुनें.

    पुष्टि करें कि आपके Firebase प्रोजेक्ट को iOS ऐप्लिकेशन में Dynamic Links का इस्तेमाल करने के लिए सही तरीके से कॉन्फ़िगर किया गया है. इसके लिए, apple-app-site-association फ़ाइल खोलें. यह फ़ाइल आपके Dynamic Links डोमेन पर होस्ट की जाती है. Firebase, डोमेन के रूट के साथ-साथ apple-app-site-association सबडायरेक्ट्री से भी apple-app-site-association फ़ाइल दिखाएगा..well-known उदाहरण के लिए:

        https://example.com/apple-app-site-association
        https://example.com/.well-known/apple-app-site-association
        

    अगर आपका ऐप्लिकेशन कनेक्ट है, तो apple-app-site-association फ़ाइल में आपके ऐप्लिकेशन के ऐप्लिकेशन आईडी प्रीफ़िक्स और बंडल आईडी का रेफ़रंस होता है. उदाहरण के लिए:

    {"applinks":{"apps":[],"details":[{"appID":"1234567890.com.example.ios","paths":["/*"]}]}}

    अगर details प्रॉपर्टी खाली है, तो दोबारा जांच लें कि आपने अपने ऐप्लिकेशन आईडी का प्रीफ़िक्स डाला हो. ध्यान दें कि आपका ऐप्लिकेशन आईडी प्रीफ़िक्स, आपके टीम आईडी से अलग हो सकता है.

अपने ऐप्लिकेशन में Firebase जोड़ना

  1. अपने UIApplicationDelegate में FirebaseCore मॉड्यूल के साथ-साथ, ऐप्लिकेशन डेलिगेट इस्तेमाल करने वाले अन्य Firebase मॉड्यूल इंपोर्ट करें. उदाहरण के लिए, Cloud Firestore और Authentication का इस्तेमाल करने के लिए:

    SwiftUI

    import SwiftUI
    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Swift

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    Objective-C

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. अपने ऐप्लिकेशन डेलिगेट के application(_:didFinishLaunchingWithOptions:) तरीके में, शेयर किए गए इंस्टेंस FirebaseApp को कॉन्फ़िगर करें:

    SwiftUI

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Swift

    // Use Firebase library to configure APIs
    FirebaseApp.configure()

    Objective-C

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. अगर SwiftUI का इस्तेमाल किया जा रहा है, तो आपको एक ऐप्लिकेशन डेलिगेट बनाना होगा. साथ ही, इसे UIApplicationDelegateAdaptor या NSApplicationDelegateAdaptor के ज़रिए अपनी App स्ट्रक्चर से जोड़ना होगा. आपको ऐप्लिकेशन के डेलिगेट स्विज़लिंग को भी बंद करना होगा. ज़्यादा जानकारी के लिए, SwiftUI के निर्देश देखें.

    SwiftUI

    @main
    struct YourApp: App {
      // register app delegate for Firebase setup
      @UIApplicationDelegateAdaptor(AppDelegate.self) var delegate
    
      var body: some Scene {
        WindowGroup {
          NavigationView {
            ContentView()
          }
        }
      }
    }
          

Firebase कंसोल का इस्तेमाल करना

अगर आपको सिर्फ़ एक Dynamic Link जनरेट करना है, तो टेस्टिंग के लिए या अपनी मार्केटिंग टीम के लिए, ताकि वे आसानी से ऐसा लिंक बना सकें जिसका इस्तेमाल सोशल मीडिया पोस्ट जैसी किसी चीज़ में किया जा सके, तो सबसे आसान तरीका यह होगा कि आप Firebase कंसोल पर जाएं और चरण-दर-चरण दिए गए फ़ॉर्म को भरकर, मैन्युअल तरीके से एक लिंक बनाएं.

iOS Builder API का इस्तेमाल करना

iOS Builder API का इस्तेमाल, पैरामीटर से Dynamic Links बनाने या लंबी Dynamic Link को छोटा करने के लिए किया जा सकता है.

Dynamic Link बनाने के लिए, एक नया DynamicLinkComponents ऑब्जेक्ट बनाएं. इसके बाद, ऑब्जेक्ट की प्रॉपर्टी सेट करके, Dynamic Link के पैरामीटर तय करें. इसके बाद, ऑब्जेक्ट की url प्रॉपर्टी से लंबा लिंक पाएं या shorten() को कॉल करके छोटा लिंक पाएं.

नीचे दिए गए उदाहरण में, एक लंबा Dynamic Link से https://www.example.com/my-page बनाया गया है. यह iOS पर आपके iOS ऐप्लिकेशन और Android पर ऐप्लिकेशन com.example.android के साथ खुलता है:

Swift

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
guard let link = URL(string: "https://www.example.com/my-page") else { return }
let dynamicLinksDomainURIPrefix = "https://example.com/link"
let linkBuilder = DynamicLinkComponents(link: link, domainURIPrefix: dynamicLinksDomainURIPRefix)
linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "com.example.ios")
linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "com.example.android")

guard let longDynamicLink = linkBuilder.url else { return }
print("The long URL is: \(longDynamicLink)")

Objective-C

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
NSURL *link = [[NSURL alloc] initWithString:@"https://www.example.com/my-page"];
NSString *dynamicLinksDomainURIPrefix = @"https://example.com/link";
FIRDynamicLinkComponents *linkBuilder = [[FIRDynamicLinkComponents alloc]
                                         initWithLink:link
                                               domainURIPrefix:dynamicLinksDomainURIPrefix];
linkBuilder.iOSParameters = [[FIRDynamicLinkIOSParameters alloc]
                             initWithBundleID:@"com.example.ios"];
linkBuilder.androidParameters = [[FIRDynamicLinkAndroidParameters alloc]
                                 initWithPackageName:@"com.example.android"];

NSLog(@"The long URL is: %@", linkBuilder.url);

शॉर्ट Dynamic Link बनाने के लिए, DynamicLinkComponents को उसी तरह बनाएं और फिर shorten() को कॉल करें.

छोटा लिंक बनाने के लिए नेटवर्क कॉल की ज़रूरत होती है. इसलिए, लिंक को सीधे तौर पर वापस भेजने के बजाय, shorten() एक कंप्लीशन हैंडलर स्वीकार करता है. अनुरोध पूरा होने पर, इसे कॉल किया जाता है. उदाहरण के लिए:

Swift

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
linkBuilder.shorten() { url, warnings, error in
  guard let url = url, error != nil else { return }
  print("The short URL is: \(url)")
}

Objective-C

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
[linkBuilder shortenWithCompletion:^(NSURL * _Nullable shortURL,
                                     NSArray<NSString *> * _Nullable warnings,
                                     NSError * _Nullable error) {
  if (error || shortURL == nil) { return; }
  NSLog(@"The short URL is: %@", shortURL);
}];
      

डिफ़ॉल्ट रूप से, छोटे Dynamic Links, 17 वर्णों वाले लिंक सफ़िक्स के साथ जनरेट होते हैं. इससे, किसी व्यक्ति के लिए मान्य Dynamic Link का अनुमान लगाना बहुत मुश्किल हो जाता है. अगर आपके इस्तेमाल के उदाहरण में, किसी व्यक्ति के शॉर्ट लिंक का अनुमान लगाने से कोई नुकसान नहीं होता है, तो हो सकता है कि आप ऐसे सफ़िक्स जनरेट करना चाहें जो यूनीक होने के लिए सिर्फ़ ज़रूरी हों. इसके लिए, dynamicLinkComponentsOptions प्रॉपर्टी सेट करें:

Swift

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
linkBuilder.options = DynamicLinkComponentsOptions()
linkBuilder.options.pathLength = .short
linkBuilder.shorten() { url, warnings, error in
  guard let url = url, error != nil else { return }
  print("The short URL is: \(url)")
}

Objective-C

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
linkBuilder.dynamicLinkComponentsOptions = [[FIRDynamicLinkComponentsOptions alloc] init];
linkBuilder.dynamicLinkComponentsOptions.pathLength = FIRShortDynamicLinkPathLengthShort;
[linkBuilder shortenWithCompletion:^(NSURL * _Nullable shortURL,
                                     NSArray<NSString *> * _Nullable warnings,
                                     NSError * _Nullable error) {
  if (error || shortURL == nil) { return; }
  NSLog(@"The short URL is: %@", shortURL);
}];
      

Dynamic Links बनाने के लिए, Dynamic Link Builder API का इस्तेमाल किया जा सकता है. इसके लिए, किसी भी ऐसे पैरामीटर का इस्तेमाल किया जा सकता है जो इस एपीआई के साथ काम करता हो. ज़्यादा जानकारी के लिए, एपीआई रेफ़रंस देखें.

यहां दिए गए उदाहरण में, कई सामान्य पैरामीटर सेट करके Dynamic Link बनाया गया है:

Swift

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
guard let link = URL(string: "https://www.example.com/my-page") else { return }
let dynamicLinksDomainURIPrefix = "https://example.com/link"
let linkBuilder = DynamicLinkComponents(link: link, domainURIPRefix: dynamicLinksDomainURIPrefix)

linkBuilder.iOSParameters = DynamicLinkIOSParameters(bundleID: "com.example.ios")
linkBuilder.iOSParameters.appStoreID = "123456789"
linkBuilder.iOSParameters.minimumAppVersion = "1.2.3"

linkBuilder.androidParameters = DynamicLinkAndroidParameters(packageName: "com.example.android")
linkBuilder.androidParameters.minimumVersion = 123

linkBuilder.analyticsParameters = DynamicLinkGoogleAnalyticsParameters(source: "orkut",
                                                                       medium: "social",
                                                                       campaign: "example-promo")

linkBuilder.iTunesConnectParameters = DynamicLinkItunesConnectAnalyticsParameters()
linkBuilder.iTunesConnectParameters.providerToken = "123456"
linkBuilder.iTunesConnectParameters.campaignToken = "example-promo"

linkBuilder.socialMetaTagParameters = DynamicLinkSocialMetaTagParameters()
linkBuilder.socialMetaTagParameters.title = "Example of a Dynamic Link"
linkBuilder.socialMetaTagParameters.descriptionText = "This link works whether the app is installed or not!"
linkBuilder.socialMetaTagParameters.imageURL = "https://www.example.com/my-image.jpg"

guard let longDynamicLink = linkBuilder.url else { return }
print("The long URL is: \(longDynamicLink)")

Objective-C

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
NSURL *link = [[NSURL alloc] initWithString:@"https://www.example.com/my-page"];
NSString *dynamicLinksDomainURIPrefix = @"https://example.com/link";
FIRDynamicLinkComponents *linkBuilder = [[FIRDynamicLinkComponents alloc]
                                         initWithLink:link
                                         domainURIPrefix:dynamicLinksDomainURIPrefix];

linkBuilder.iOSParameters = [[FIRDynamicLinkIOSParameters alloc]
                             initWithBundleID:@"com.example.ios"];
linkBuilder.iOSParameters.appStoreID = @"123456789";
linkBuilder.iOSParameters.minimumAppVersion = @"1.2.3";

linkBuilder.androidParameters = [[FIRDynamicLinkAndroidParameters alloc]
                                 initWithPackageName:@"com.example.android"];
linkBuilder.androidParameters.minimumVersion = 123;

linkBuilder.analyticsParameters = [[FIRDynamicLinkGoogleAnalyticsParameters alloc]
                                   initWithSource:@"orkut"
                                           medium:@"social"
                                         campaign:@"example-promo"];

linkBuilder.iTunesConnectParameters = [[FIRDynamicLinkItunesConnectAnalyticsParameters alloc] init];
linkBuilder.iTunesConnectParameters.providerToken = @"123456";
linkBuilder.iTunesConnectParameters.campaignToken = @"example-promo";

linkBuilder.socialMetaTagParameters = [[FIRDynamicLinkSocialMetaTagParameters alloc] init];
linkBuilder.socialMetaTagParameters.title = @"Example of a Dynamic Link";
linkBuilder.socialMetaTagParameters.descriptionText = @"This link works whether the app is installed or not!";
linkBuilder.socialMetaTagParameters.imageURL = @"https://www.example.com/my-image.jpg";

NSLog(@"The long URL is: %@", linkBuilder.url);

इन ऑब्जेक्ट और प्रॉपर्टी की मदद से, Dynamic Link पैरामीटर सेट किए जा सकते हैं:

DynamicLinkComponents
लिंक

वह लिंक जिसे आपका ऐप्लिकेशन खोलेगा. ऐसा यूआरएल तय करें जिसे आपका ऐप्लिकेशन हैंडल कर सके. आम तौर पर, यह ऐप्लिकेशन का कॉन्टेंट या पेलोड होता है. इससे ऐप्लिकेशन से जुड़ा लॉजिक शुरू होता है. जैसे, उपयोगकर्ता को कूपन देना या वेलकम स्क्रीन दिखाना. यह लिंक, सही फ़ॉर्मैट वाला यूआरएल होना चाहिए. साथ ही, इसे सही तरीके से यूआरएल-कोड में बदला गया हो. इसमें एचटीटीपी या एचटीटीपीएस में से किसी एक का इस्तेमाल किया गया हो. साथ ही, यह कोई दूसरा डाइनैमिक लिंक नहीं होना चाहिए.

domainURIPrefix आपका Dynamic Link यूआरएल प्रीफ़िक्स, जिसे Firebase कंसोल में देखा जा सकता है. Dynamic Link डोमेन के उदाहरण यहां दिए गए हैं:
https://example.com/link
https://example.page.link
DynamicLinkAndroidParameters
fallbackURL ऐप्लिकेशन इंस्टॉल न होने पर, खोलने के लिए लिंक. इस विकल्प का इस्तेमाल तब करें, जब ऐप्लिकेशन इंस्टॉल न हो और आपको Play Store से ऐप्लिकेशन इंस्टॉल करने के अलावा कोई और कार्रवाई करनी हो. जैसे, कॉन्टेंट का मोबाइल वेब वर्शन खोलना या अपने ऐप्लिकेशन का प्रमोशनल पेज दिखाना.
minimumVersion आपके ऐप्लिकेशन के उस सबसे पुराने वर्शन का versionCode जो लिंक खोल सकता है. अगर इंस्टॉल किया गया ऐप्लिकेशन पुराना वर्शन है, तो उपयोगकर्ता को ऐप्लिकेशन अपग्रेड करने के लिए Play Store पर ले जाया जाता है.
DynamicLinkIOSParameters
appStoreID आपके ऐप्लिकेशन का App Store आईडी. इसका इस्तेमाल, ऐप्लिकेशन इंस्टॉल न होने पर लोगों को App Store पर भेजने के लिए किया जाता है
fallbackURL ऐप्लिकेशन इंस्टॉल न होने पर, खोलने के लिए लिंक. इस विकल्प का इस्तेमाल तब करें, जब ऐप्लिकेशन इंस्टॉल न हो और आपको App Store से ऐप्लिकेशन इंस्टॉल करने के बजाय कोई दूसरा काम करना हो. जैसे, कॉन्टेंट का मोबाइल वेब वर्शन खोलना या अपने ऐप्लिकेशन के लिए प्रमोशनल पेज दिखाना.
customScheme आपके ऐप्लिकेशन की कस्टम यूआरएल स्कीम. अगर इसे आपके ऐप्लिकेशन के बंडल आईडी के अलावा किसी और चीज़ के लिए तय किया गया है, तो
iPadFallbackURL अगर ऐप्लिकेशन इंस्टॉल नहीं है, तो iPad पर खोलने के लिए लिंक. इस विकल्प का इस्तेमाल तब करें, जब ऐप्लिकेशन इंस्टॉल न हो और आपको App Store से ऐप्लिकेशन इंस्टॉल करने के बजाय कोई और कार्रवाई करनी हो. जैसे, कॉन्टेंट का वेब वर्शन खोलना या अपने ऐप्लिकेशन का प्रमोशनल पेज दिखाना.
iPadBundleID iPad पर लिंक खोलने के लिए, iOS ऐप्लिकेशन का बंडल आईडी. ऐप्लिकेशन को Firebase कंसोल के होम पेज से अपने प्रोजेक्ट से कनेक्ट किया जाना चाहिए.
minimumAppVersion आपके ऐप्लिकेशन के उस सबसे पुराने वर्शन का वर्शन नंबर जो लिंक खोल सकता है. जब आपका ऐप्लिकेशन खोला जाता है, तब यह फ़्लैग उसे पास किया जाता है. आपके ऐप्लिकेशन को यह तय करना होता है कि इस फ़्लैग का क्या करना है.
DynamicLinkNavigationInfoParameters
forcedRedirectEnabled अगर इसे '1' पर सेट किया जाता है, तो Dynamic Link खोलने पर ऐप्लिकेशन की झलक दिखाने वाले पेज को स्किप कर दिया जाता है. इसके बजाय, उपयोगकर्ता को ऐप्लिकेशन या स्टोर पर रीडायरेक्ट कर दिया जाता है. ऐप्लिकेशन की झलक दिखाने वाला पेज (डिफ़ॉल्ट रूप से चालू होता है) उपयोगकर्ताओं को सबसे सही डेस्टिनेशन पर ज़्यादा भरोसेमंद तरीके से भेज सकता है. ऐसा तब होता है, जब वे ऐप्लिकेशन में Dynamic Links खोलते हैं. हालांकि, अगर आपको Dynamic Links को सिर्फ़ उन ऐप्लिकेशन में खोलना है जो इस पेज के बिना भी Dynamic Links को भरोसेमंद तरीके से खोल सकते हैं, तो इस पैरामीटर का इस्तेमाल करके इसे बंद किया जा सकता है.Dynamic Link इस पैरामीटर का असर, iOS पर सिर्फ़ Dynamic Link के व्यवहार पर पड़ेगा.
DynamicLinkSocialMetaTagParameters
शीर्षक सोशल पोस्ट में Dynamic Link को शेयर करते समय इस्तेमाल किया जाने वाला टाइटल.
descriptionText सोशल मीडिया पोस्ट में Dynamic Link शेयर करते समय इस्तेमाल की जाने वाली जानकारी.
imageURL इस लिंक से जुड़ी इमेज का यूआरएल. इमेज का साइज़ कम से कम 300x200 पिक्सल और 300 केबी से कम होना चाहिए.
DynamicLinkGoogleAnalyticsParameters
source
medium
campaign
term
content
Google Play के आंकड़ों से जुड़े पैरामीटर. ये पैरामीटर (utm_source, utm_medium, utm_campaign, utm_term, utm_content) Play Store को भी पास किए जाते हैं. साथ ही, इन्हें लिंक के पेलोड में भी जोड़ा जाता है.
DynamicLinkItunesConnectAnalyticsParameters
providerToken
affiliateToken
campaignToken
iTunes Connect के आंकड़ों के पैरामीटर. ये पैरामीटर (pt, at, ct) App Store को पास किए जाते हैं.

अगर आपको छोटे सफ़िक्स वाला लिंक जनरेट करना है, तो लंबे Dynamic Link को shortenURL(url:options:) के साथ-साथ DynamicLinkComponentsOptions ऑब्जेक्ट को पास करें. इससे लंबा Dynamic Link छोटा हो जाएगा:

Swift

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
DynamicLinkComponents.shortenURL(url: longLinkUrl, options: nil) { url, warnings, error in
  guard let url = url, error != nil else { return }
  print("The short URL is: \(url)")
}

Objective-C

ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
[FIRDynamicLinkComponents shortenURL:longLinkUrl
                             options:nil
                          completion:^(NSURL * _Nullable shortURL,
                                       NSArray<NSString *> * _Nullable warnings,
                                       NSError * _Nullable error) {
  if (error || shortURL == nil) { return; }
  NSLog(@"The short URL is: %@", shortURL);
}];

डिफ़ॉल्ट रूप से, Dynamic Links आपके ऐप्लिकेशन के बंडल आइडेंटिफ़ायर का इस्तेमाल, यूआरएल स्कीम के तौर पर करता है. इसकी ज़रूरत आपके ऐप्लिकेशन को खोलने के लिए होती है. हमारा सुझाव है कि आप इस डिफ़ॉल्ट वैल्यू का इस्तेमाल करें, ताकि इसे लागू करना आसान हो.

हालांकि, जो डेवलपर पहले से ही अन्य कामों के लिए कस्टम यूआरएल स्कीम का इस्तेमाल कर रहे हैं वे Dynamic Links के लिए भी इसी कस्टम यूआरएल स्कीम का इस्तेमाल कर सकते हैं. अगर आपको यह समस्या आ रही है, तो इन चरणों का पालन करके, अपने Firebase Dynamic Links के लिए कोई दूसरी यूआरएल स्कीम तय की जा सकती है:

  1. ऐप्लिकेशन सेट अप करते समय, पक्का करें कि आपने अपने ऐप्लिकेशन के लिए डिफ़ॉल्ट यूआरएल स्कीम तय की हो. ऐसा FirebaseApp के शेयर किए गए इंस्टेंस को कॉन्फ़िगर करने से पहले करें:

    Swift

    ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
    func application(_ application: UIApplication,
                     didFinishLaunchingWithOptions launchOptions: [UIApplication
                       .LaunchOptionsKey: Any]?) -> Bool {
      // Set deepLinkURLScheme to the custom URL scheme you defined in your
      // Xcode project.
      FirebaseOptions.defaultOptions()?.deepLinkURLScheme = customURLScheme
      FirebaseApp.configure()
    
      return true
    }

    Objective-C

    ध्यान दें: यह Firebase प्रॉडक्ट, macOS, Mac Catalyst, tvOS या watchOS टारगेट पर उपलब्ध नहीं है.
    - (BOOL)application:(UIApplication *)application
        didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
      // Set deepLinkURLScheme to the custom URL scheme you defined in your
      // Xcode project.
      [FIROptions defaultOptions].deepLinkURLScheme = CUSTOM_URL_SCHEME;
      [FIRApp configure];
    
      return YES;
    }
  2. जब भी कोई Dynamic Link बनाया जाता है, तब आपको कस्टम यूआरएल स्कीम के बारे में बताना होगा. यह स्कीम, आपका ऐप्लिकेशन इस्तेमाल करता है. इसके लिए, Firebase कंसोल का इस्तेमाल करें. इसके अलावा, Builder API में customScheme सेट करें, अपने यूआरएल में ius पैरामीटर डालें या REST API को iosCustomScheme पैरामीटर भेजें

अगले चरण

Dynamic Links बनाने के बाद, आपको अपने ऐप्लिकेशन को Dynamic Links पाने के लिए सेट अप करना होगा. साथ ही, यह भी सेट अप करना होगा कि जब कोई व्यक्ति Dynamic Links खोले, तो उसे ऐप्लिकेशन के सही सेक्शन पर भेजा जा सके.

अपने ऐप्लिकेशन में Dynamic Links पाने के लिए, iOS, Android, C++, और Unity के लिए दस्तावेज़ देखें.