iOS-এ Dynamic Links তৈরি করা

আপনি Firebase Dynamic Links Builder API-এর মাধ্যমে ছোট বা বড় Dynamic Links তৈরি করতে পারবেন। এই API হয় একটি দীর্ঘ Dynamic Link বা Dynamic Link প্যারামিটার সহ একটি অবজেক্ট গ্রহণ করে এবং নিম্নলিখিত উদাহরণের মতো URL রিটার্ন করে:

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

পূর্বশর্ত

শুরু করার আগে, আপনার iOS প্রোজেক্টে Firebase যোগ করতে ভুলবেন না।

Firebase ডিপেন্ডেন্সি ইনস্টল ও ম্যানেজ করতে Swift প্যাকেজ ম্যানেজার ব্যবহার করুন।

  1. Xcode-এ, আপনার অ্যাপ প্রোজেক্ট খোলা রেখে, ফাইল > প্যাকেজ যোগ করুন বিকল্পে নেভিগেট করুন।
  2. প্রম্পট করা হলে, Firebase Apple প্ল্যাটফর্ম SDK রিপোজিটরি যোগ করুন:
  3.   https://github.com/firebase/firebase-ios-sdk.git
  4. Dynamic Links লাইব্রেরি বেছে নিন।
  5. আপনার টার্গেটের বিল্ড সেটিংসের অন্যান্য লিঙ্কার ফ্ল্যাগ বিভাগে -ObjC ফ্ল্যাগ যোগ করুন।
  6. Dynamic Links-এর সাথে সেরা অভিজ্ঞতা পেতে, আমরা সাজেস্ট করি যে আপনি আপনার Firebase প্রোজেক্টে Google Analytics চালু করুন এবং আপনার অ্যাপে Google Analytics-এর জন্য Firebase SDK যোগ করুন। আপনি IDFA সংগ্রহ ছাড়া বা IDFA সংগ্রহ সহ লাইব্রেরি বেছে নিতে পারেন। Google Analytics for Firebase SDK-তে মডিউলের লেটেস্ট অর্গানাইজেশন সম্পর্কে আমাদের প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন।
  7. হয়ে গেলে, Xcode অটোমেটিক ব্যাকগ্রাউন্ডে আপনার ডিপেন্ডেন্সি সমাধান ও ডাউনলোড করা শুরু করবে।

এখন, কনফিগারেশনের কিছু ধাপ সম্পূর্ণ করুন:

  1. Firebase কনসোলে, Dynamic Links বিভাগ খুলুন।
  2. আপনি যদি এখনও পরিষেবার শর্তাবলীতে সম্মতি না দিয়ে থাকেন এবং আপনার Dynamic Links-এর জন্য URI প্রিফিক্স সেট না করে থাকেন, তাহলে প্রম্পট করা হলে তা করুন।

    আপনার আগে থেকেই Dynamic Links URI প্রিফিক্স থাকলে, সেটি নোট করে নিন। আপনি প্রোগ্রাম্যাটিক্যালি Dynamic Links তৈরি করার সময় আপনাকে এটি দিতে হবে।

  3. সাজেস্ট করা: আপনার ডিপ লিঙ্ক ও ফলব্যাক লিঙ্কে অনুমোদিত URL প্যাটার্ন নির্দিষ্ট করুন। এটি করার মাধ্যমে, আপনি অননুমোদিত পার্টিকে Dynamic Links তৈরি করা থেকে বিরত রাখেন যা আপনার ডোমেন থেকে আপনার নিয়ন্ত্রণ না করা সাইটে রিডাইরেক্ট করে। নির্দিষ্ট URL প্যাটার্নকে অনুমতি দিন দেখুন।
  4. আপনার অ্যাপের App Store আইডি এবং অ্যাপ আইডির প্রিফিক্স আপনার অ্যাপের সেটিংসে উল্লেখ করা আছে কিনা তা নিশ্চিত করুন। আপনার অ্যাপের সেটিংস দেখতে ও এডিট করতে, আপনার Firebase প্রোজেক্টের সেটিংস পৃষ্ঠায় যান এবং আপনার iOS অ্যাপ বেছে নিন।

    আপনার iOS অ্যাপে Dynamic Links ব্যবহার করার জন্য আপনার Firebase প্রোজেক্ট সঠিকভাবে কনফিগার করা হয়েছে কিনা তা কনফার্ম করুন। এর জন্য আপনার Dynamic Links ডোমেনে হোস্ট করা apple-app-site-association ফাইলটি খুলুন। Firebase, ডোমেনের রুট এবং .well-known সাবডিরেক্টরি থেকে apple-app-site-association ফাইল পরিবেশন করবে। যেমন:

        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 ব্যবহার করলে, আপনাকে অবশ্যই একটি অ্যাপ্লিকেশন ডেলিগেট তৈরি করতে হবে এবং এটি আপনার App স্ট্রাকচারে UIApplicationDelegateAdaptor বা NSApplicationDelegateAdaptor-এর মাধ্যমে অ্যাটাচ করতে হবে। এছাড়াও, আপনাকে অ্যাপ ডেলিগেট সুইজলিং বন্ধ করতে হবে। আরও তথ্যের জন্য, 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 তৈরি করা হয়, যার ফলে কোনও ব্যক্তির পক্ষে সঠিক 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 Link Builder API ব্যবহার করে কাজ করে এমন যেকোনও প্যারামিটার দিয়ে Dynamic Links তৈরি করতে পারবেন। আরও বিবরণের জন্য 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
লিঙ্ক

আপনার অ্যাপ যে লিঙ্ক খুলবে। আপনার অ্যাপ হ্যান্ডেল করতে পারে এমন একটি URL উল্লেখ করুন, সাধারণত অ্যাপের কন্টেন্ট বা পেলোড, যা অ্যাপ-নির্দিষ্ট লজিক শুরু করে (যেমন ব্যবহারকারীকে কুপন দিয়ে ক্রেডিট করা বা একটি স্বাগত স্ক্রিন দেখানো)। এই লিঙ্কটি অবশ্যই একটি ভাল-ফরম্যাট করা URL হতে হবে, সঠিকভাবে URL-এনকোড করা হতে হবে, HTTP বা HTTPS ব্যবহার করতে হবে এবং অন্য কোনও ডাইনামিক লিঙ্ক হতে পারবে না।

domainURIPrefix আপনার Dynamic Link URL প্রিফিক্স, যা আপনি 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 আপনার অ্যাপের কাস্টম URL স্কিম, যদি আপনার অ্যাপের বান্ডেল আইডি ছাড়া অন্য কিছু হিসেবে সংজ্ঞায়িত করা হয়
iPadFallbackURL অ্যাপ ইনস্টল করা না থাকলে iPad-এ খোলার জন্য লিঙ্ক। অ্যাপ ইনস্টল করা না থাকলে, অ্যাপ স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করতে এটি উল্লেখ করুন, যেমন কন্টেন্টের ওয়েব ভার্সন খোলা বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা দেখানো।
iPadBundleID লিঙ্ক খোলার জন্য iPad-এ ব্যবহার করার জন্য iOS অ্যাপের বান্ডিল আইডি। Firebase কনসোলের ওভারভিউ পৃষ্ঠা থেকে অ্যাপটি আপনার প্রোজেক্টের সাথে কানেক্ট করতে হবে।
minimumAppVersion আপনার অ্যাপের ন্যূনতম ভার্সনের ভার্সন নম্বর যা লিঙ্কটি খুলতে পারে। অ্যাপ খোলা হলে এই ফ্ল্যাগ আপনার অ্যাপে পাস করা হয় এবং আপনার অ্যাপকে সিদ্ধান্ত নিতে হবে যে এটি নিয়ে কী করা হবে।
DynamicLinkNavigationInfoParameters
forcedRedirectEnabled '১' হিসেবে সেট করা থাকলে, Dynamic Link খোলার সময় অ্যাপ প্রিভিউ পৃষ্ঠা এড়িয়ে যান এবং তার পরিবর্তে অ্যাপ বা স্টোরে রিডাইরেক্ট করুন। অ্যাপ প্রিভিউ পৃষ্ঠা (ডিফল্ট হিসেবে চালু করা থাকে) ব্যবহারকারীদের আরও নির্ভরযোগ্যভাবে সবচেয়ে উপযুক্ত গন্তব্যে পাঠাতে পারে যখন তারা অ্যাপে Dynamic Links খোলে; তবে, আপনি যদি আশা করেন যে Dynamic Link শুধুমাত্র এমন অ্যাপে খোলা হবে যা এই পৃষ্ঠা ছাড়াই নির্ভরযোগ্যভাবে Dynamic Links খুলতে পারে, তাহলে আপনি এই প্যারামিটারের মাধ্যমে এটি বন্ধ করতে পারেন। এই প্যারামিটারটি শুধুমাত্র iOS-এ Dynamic Link-এর আচরণকে প্রভাবিত করবে।
DynamicLinkSocialMetaTagParameters
শিরোনাম Dynamic Link সোশ্যাল পোস্টে শেয়ার করা হলে যে শীর্ষক ব্যবহার করা হবে।
descriptionText সোশ্যাল পোস্টে Dynamic Link শেয়ার করার সময় যে বিবরণ ব্যবহার করা হবে।
imageURL এই লিঙ্কের সাথে সম্পর্কিত কোনও ছবির URL। ছবির সাইজ অন্তত ৩০০x২০০ পিক্সেল এবং ৩০০ কেবির কম হতে হবে।
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 ছোট করতে, দীর্ঘ Dynamic Linkটি shortenURL(url:options:)-এ পাস করুন, সাথে একটি DynamicLinkComponentsOptions অবজেক্ট, যদি আপনি একটি ছোট প্রত্যয় সহ একটি লিঙ্ক তৈরি করতে চান:

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 আপনার অ্যাপের বান্ডিল শনাক্তকারীকে URL স্কিম হিসেবে ব্যবহার করে যা আপনার অ্যাপ্লিকেশন খোলার জন্য প্রয়োজন। আপনার ইমপ্লিমেন্টেশন সহজ রাখতে আমরা এই ডিফল্ট ভ্যালু ব্যবহার করার সাজেশন দিই।

তবে, যেসব ডেভেলপার আগে থেকেই অন্য উদ্দেশ্যে কাস্টম URL স্কিম ব্যবহার করছেন, তারা হয়ত তাদের Dynamic Links-এর জন্যও একই কাস্টম URL স্কিম ব্যবহার করতে চাইবেন। আপনি এই পরিস্থিতিতে থাকলে, এইসব ধাপ অনুসরণ করে আপনার Firebase Dynamic Links-এর জন্য অন্য একটি URL স্কিম নির্দিষ্ট করতে পারবেন:

  1. আপনার অ্যাপ সেট-আপ করার সময়, আপনার FirebaseApp শেয়ার করা ইনস্ট্যান্স কনফিগার করার আগে, আপনার অ্যাপ্লিকেশনের মাধ্যমে ব্যবহার করার জন্য ডিফল্ট URL স্কিম নির্দিষ্ট করেছেন কিনা তা ভাল করে দেখে নিন:

    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 তৈরি করবেন, আপনাকে কাস্টম URL স্কিম নির্দিষ্ট করতে হবে যা আপনার অ্যাপ ব্যবহার করে। আপনি Firebase কনসোলের মাধ্যমে, Builder API-তে customScheme সেট করে, আপনার URL-এ ius প্যারামিটার নির্দিষ্ট করে অথবা REST API-তে iosCustomScheme প্যারামিটার পাঠিয়ে এটি করতে পারেন

পরবর্তী ধাপ

আপনি Dynamic Links তৈরি করেছেন, এখন আপনাকে Dynamic Links রিসিভ করার জন্য অ্যাপ সেট-আপ করতে হবে এবং ব্যবহারকারী সেটি খোলার পরে তাকে আপনার অ্যাপের সঠিক জায়গায় পাঠাতে হবে।

আপনার অ্যাপে Dynamic Links পেতে, iOS, Android, C++ এবং Unity-এর ডকুমেন্টেশন দেখুন।