আইওএস-এ ডায়নামিক লিঙ্ক তৈরি করুন

আপনি 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 যোগ করে নিতে ভুলবেন না।

ফায়ারবেস ডিপেন্ডেন্সিগুলো ইনস্টল ও পরিচালনা করতে সুইফট প্যাকেজ ম্যানেজার ব্যবহার করুন।

  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 এর সর্বোত্তম অভিজ্ঞতার জন্য, আমরা আপনার ফায়ারবেস প্রজেক্টে Google Analytics সক্রিয় করার এবং আপনার অ্যাপে গুগল অ্যানালিটিক্স-এর জন্য ফায়ারবেস এসডিকে যোগ করার পরামর্শ দিই। আপনি আইডিএফএ কালেকশন ছাড়া অথবা আইডিএফএ কালেকশন সহ লাইব্রেরিটি বেছে নিতে পারেন। Google Analytics ফর ফায়ারবেস এসডিকে-তে মডিউলগুলির সর্বশেষ বিন্যাস সম্পর্কে জানতে আমাদের প্রায়শই জিজ্ঞাসিত প্রশ্নাবলী (FAQ) দেখুন।
  7. কাজ শেষ হলে, Xcode স্বয়ংক্রিয়ভাবে ব্যাকগ্রাউন্ডে আপনার ডিপেন্ডেন্সিগুলো রিজলভ ও ডাউনলোড করা শুরু করবে।

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

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

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

  3. সুপারিশকৃত : আপনার ডিপ লিঙ্ক এবং ফলব্যাক লিঙ্কে অনুমোদিত ইউআরএল প্যাটার্নগুলো নির্দিষ্ট করে দিন। এর মাধ্যমে, আপনি অননুমোদিত পক্ষগুলোকে Dynamic Links তৈরি করা থেকে বিরত রাখতে পারবেন, যা আপনার ডোমেইন থেকে আপনার নিয়ন্ত্রণাধীন নয় এমন সাইটে রিডাইরেক্ট করে। নির্দিষ্ট ইউআরএল প্যাটার্নের অনুমতি দেখুন।
  4. আপনার অ্যাপের সেটিংসে আপনার অ্যাপের অ্যাপ স্টোর আইডি এবং অ্যাপ আইডি প্রিফিক্স উল্লেখ করা আছে কিনা তা নিশ্চিত করুন। আপনার অ্যাপের সেটিংস দেখতে ও সম্পাদনা করতে, আপনার 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 প্রপার্টিটি খালি থাকে, তাহলে আপনি আপনার অ্যাপ আইডি প্রিফিক্স উল্লেখ করেছেন কিনা তা পুনরায় যাচাই করুন। মনে রাখবেন, আপনার অ্যাপ আইডি প্রিফিক্স আপনার টিম আইডির মতো নাও হতে পারে।

আপনার অ্যাপে ফায়ারবেস যোগ করুন

  1. আপনার UIApplicationDelegateFirebaseCore মডিউলটি ইম্পোর্ট করুন, সেইসাথে আপনার অ্যাপ ডেলিগেট দ্বারা ব্যবহৃত অন্য যেকোনো Firebase মডিউলও ইম্পোর্ট করুন। উদাহরণস্বরূপ, Cloud Firestore এবং Authentication ব্যবহার করতে:

    SwiftUI

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

    সুইফট

    import FirebaseCore
    import FirebaseFirestore
    import FirebaseAuth
    // ...
          

    উদ্দেশ্য-সি

    @import FirebaseCore;
    @import FirebaseFirestore;
    @import FirebaseAuth;
    // ...
          
  2. আপনার অ্যাপ ডেলিগেটের application(_:didFinishLaunchingWithOptions:) মেথডে একটি FirebaseApp শেয়ার্ড ইনস্ট্যান্স কনফিগার করুন:

    SwiftUI

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

    সুইফট

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

    উদ্দেশ্য-সি

    // Use Firebase library to configure APIs
    [FIRApp configure];
  3. আপনি যদি SwiftUI ব্যবহার করেন, তাহলে আপনাকে অবশ্যই একটি অ্যাপ্লিকেশন ডেলিগেট তৈরি করতে হবে এবং UIApplicationDelegateAdaptor বা NSApplicationDelegateAdaptor মাধ্যমে সেটিকে আপনার App struct-এর সাথে সংযুক্ত করতে হবে। আপনাকে অবশ্যই অ্যাপ ডেলিগেট সুইজলিং নিষ্ক্রিয় করতে হবে। আরও তথ্যের জন্য, 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 বিল্ডার API ব্যবহার করুন

আপনি প্যারামিটার থেকে Dynamic Links তৈরি করতে, অথবা একটি দীর্ঘ Dynamic Link ছোট করতে iOS বিল্ডার API ব্যবহার করতে পারেন।

একটি Dynamic Link তৈরি করতে, একটি নতুন DynamicLinkComponents অবজেক্ট তৈরি করুন এবং অবজেক্টটির সংশ্লিষ্ট প্রোপার্টিগুলো সেট করে Dynamic Link প্যারামিটারগুলো নির্দিষ্ট করুন। তারপর, অবজেক্টটির url প্রোপার্টি থেকে দীর্ঘ লিঙ্কটি নিন অথবা shorten() কল করে সংক্ষিপ্ত লিঙ্কটি নিন।

নিম্নলিখিত সংক্ষিপ্ত উদাহরণটি https://www.example.com/my-page এ একটি দীর্ঘ Dynamic Link তৈরি করে, যা iOS-এ আপনার iOS অ্যাপ এবং Android-এ com.example.android অ্যাপে খোলে:

সুইফট

দ্রষ্টব্য: এই 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)")

উদ্দেশ্য-সি

দ্রষ্টব্য: এই 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() একটি কমপ্লিশন হ্যান্ডলার গ্রহণ করে, যা অনুরোধটি সম্পূর্ণ হলে কল করা হয়। উদাহরণস্বরূপ:

সুইফট

দ্রষ্টব্য: এই 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)")
}

উদ্দেশ্য-সি

দ্রষ্টব্য: এই 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 প্রপার্টি সেট করার মাধ্যমে করতে পারেন।

সুইফট

দ্রষ্টব্য: এই 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)")
}

উদ্দেশ্য-সি

দ্রষ্টব্য: এই 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 বিল্ডার এপিআই ব্যবহার করে যেকোনো সমর্থিত প্যারামিটার দিয়ে Dynamic Links তৈরি করতে পারেন। বিস্তারিত জানতে এপিআই রেফারেন্স দেখুন।

নিম্নলিখিত উদাহরণটি কয়েকটি সাধারণ প্যারামিটার সেট করে একটি Dynamic Link তৈরি করে:

সুইফট

দ্রষ্টব্য: এই 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)")

উদ্দেশ্য-সি

দ্রষ্টব্য: এই 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 প্যারামিটার সেট করতে পারেন:

ডাইনামিকলিঙ্ককম্পোনেন্টস
লিঙ্ক

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

ডোমেইনইউআরআইপ্রিফিক্স আপনার Dynamic Link ইউআরএল প্রিফিক্স, যা আপনি Firebase কনসোলে খুঁজে পাবেন। একটি Dynamic Link ডোমেইন দেখতে নিম্নলিখিত উদাহরণগুলির মতো হয়:
https://example.com/link
https://example.page.link
ডাইনামিকলিঙ্কঅ্যান্ড্রয়েডপ্যারামিটার
ফলব্যাকইউআরএল অ্যাপটি ইনস্টল করা না থাকলে খোলার জন্য লিঙ্ক। অ্যাপটি ইনস্টল করা না থাকলে প্লে স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করতে এটি নির্দিষ্ট করুন, যেমন—কন্টেন্টের মোবাইল ওয়েব সংস্করণ খোলা, অথবা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করা।
সর্বনিম্ন সংস্করণ আপনার অ্যাপের সর্বনিম্ন সংস্করণের versionCode , যা লিঙ্কটি খুলতে পারে। যদি ইনস্টল করা অ্যাপটি পুরোনো সংস্করণ হয়, তবে ব্যবহারকারীকে অ্যাপটি আপগ্রেড করার জন্য প্লে স্টোরে নিয়ে যাওয়া হয়।
DynamicLinkIOSParameters
অ্যাপস্টোরআইডি আপনার অ্যাপের অ্যাপ স্টোর আইডি, যা অ্যাপটি ইনস্টল করা না থাকলে ব্যবহারকারীদের অ্যাপ স্টোরে পাঠাতে ব্যবহৃত হয়।
ফলব্যাকইউআরএল অ্যাপটি ইনস্টল করা না থাকলে খোলার জন্য লিঙ্ক। অ্যাপটি ইনস্টল করা না থাকলে, অ্যাপ স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করতে এটি নির্দিষ্ট করুন; যেমন—কন্টেন্টের মোবাইল ওয়েব সংস্করণ খোলা, অথবা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করা।
কাস্টম স্কিম আপনার অ্যাপের কাস্টম ইউআরএল স্কিম, যদি তা আপনার অ্যাপের বান্ডেল আইডি ছাড়া অন্য কিছু হিসেবে সংজ্ঞায়িত করা হয়ে থাকে।
iPadFallbackURL অ্যাপটি ইনস্টল করা না থাকলে আইপ্যাডে খোলার জন্য লিঙ্ক। অ্যাপটি ইনস্টল করা না থাকলে, অ্যাপ স্টোর থেকে আপনার অ্যাপটি ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন; যেমন—কন্টেন্টের ওয়েব সংস্করণ খোলা, অথবা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করা।
আইপ্যাড বান্ডেল আইডি আইপ্যাডে লিঙ্কটি খোলার জন্য ব্যবহৃত আইওএস অ্যাপটির বান্ডেল আইডি। অ্যাপটিকে অবশ্যই Firebase কনসোলের ওভারভিউ পৃষ্ঠা থেকে আপনার প্রোজেক্টের সাথে সংযুক্ত থাকতে হবে।
ন্যূনতম অ্যাপ সংস্করণ আপনার অ্যাপের সর্বনিম্ন সংস্করণের নম্বর , যা লিঙ্কটি খুলতে পারে। লিঙ্কটি খোলার সময় এই ফ্ল্যাগটি আপনার অ্যাপে পাঠানো হয় এবং এটি নিয়ে কী করতে হবে, সেই সিদ্ধান্ত আপনার অ্যাপকেই নিতে হয়।
ডাইনামিকলিঙ্কনেভিগেশনইনফোপ্যারামিটার
জোরপূর্বক পুনঃনির্দেশ সক্ষম করা হয়েছে '১'-এ সেট করা হলে, Dynamic Link খোলার সময় অ্যাপ প্রিভিউ পেজটি এড়িয়ে যাওয়া হবে এবং এর পরিবর্তে অ্যাপ বা স্টোরে রিডাইরেক্ট করা হবে। অ্যাপ প্রিভিউ পেজটি (যা ডিফল্টরূপে সক্রিয় থাকে) অ্যাপে Dynamic Links খোলার সময় ব্যবহারকারীদের সবচেয়ে উপযুক্ত গন্তব্যে আরও নির্ভরযোগ্যভাবে পাঠাতে পারে; তবে, যদি আপনি চান যে একটি Dynamic Link শুধুমাত্র সেইসব অ্যাপেই খোলা হোক যেগুলো এই পেজটি ছাড়াই নির্ভরযোগ্যভাবে Dynamic Links খুলতে পারে, তাহলে আপনি এই প্যারামিটারটি ব্যবহার করে এটিকে নিষ্ক্রিয় করতে পারেন। এই প্যারামিটারটি শুধুমাত্র iOS-এ Dynamic Link আচরণকে প্রভাবিত করবে।
ডাইনামিকলিঙ্কসোশ্যালমেটাট্যাগপ্যারামিটার
শিরোনাম সোশ্যাল পোস্টে Dynamic Link শেয়ার করার সময় যে শিরোনামটি ব্যবহার করা হবে।
বর্ণনা পাঠ্য সোশ্যাল পোস্টে Dynamic Link শেয়ার করার সময় যে বিবরণটি ব্যবহার করা হবে।
ছবির ইউআরএল এই লিঙ্কের সাথে সম্পর্কিত একটি ছবির ইউআরএল। ছবিটির আকার কমপক্ষে ৩০০x২০০ পিক্সেল এবং সাইজ ৩০০ কেবি-র কম হতে হবে।
ডাইনামিকলিঙ্ক গুগল অ্যানালিটিক্স প্যারামিটার
উৎস
মাঝারি
প্রচারণা
শব্দ
বিষয়বস্তু
গুগল প্লে অ্যানালিটিক্স প্যারামিটার। এই প্যারামিটারগুলো ( utm_source , utm_medium , utm_campaign , utm_term , utm_content ) প্লে স্টোরে পাঠানোর পাশাপাশি লিঙ্ক পেলোডের সাথেও যুক্ত করা হয়।
ডাইনামিকলিঙ্কআইটিউনসকানেক্টঅ্যানালিটিক্সপ্যারামিটার
প্রোভাইডারটোকেন
অ্যাফিলিয়েট টোকেন
প্রচারাভিযান টোকেন
আইটিউনস কানেক্ট অ্যানালিটিক্স প্যারামিটার। এই প্যারামিটারগুলো ( pt , at , ct ) অ্যাপ স্টোরে পাঠানো হয়।

একটি দীর্ঘ Dynamic Link ছোট করতে, shortenURL(url:options:) ফাংশনে দীর্ঘ Dynamic Link পাস করুন এবং যদি আপনি একটি সংক্ষিপ্ত সাফিক্স সহ লিঙ্ক তৈরি করতে চান তবে একটি DynamicLinkComponentsOptions অবজেক্টও পাস করুন:

সুইফট

দ্রষ্টব্য: এই 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)")
}

উদ্দেশ্য-সি

দ্রষ্টব্য: এই 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 শেয়ার্ড ইনস্ট্যান্স কনফিগার করার আগে, আপনার অ্যাপ্লিকেশনের জন্য ব্যবহৃত ডিফল্ট URL স্কিমটি নির্দিষ্ট করে দিন:

    সুইফট

    দ্রষ্টব্য: এই 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
    }

    উদ্দেশ্য-সি

    দ্রষ্টব্য: এই 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 কনসোলের মাধ্যমে, বিল্ডার এপিআই-তে customScheme সেট করে, আপনার ইউআরএল-এ ius প্যারামিটার নির্দিষ্ট করে, অথবা REST এপিআই-তে iosCustomScheme প্যারামিটার পাঠিয়ে করতে পারেন।

পরবর্তী পদক্ষেপ

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

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