একটি ফ্লটার অ্যাপে ডায়নামিক লিঙ্ক তৈরি করুন

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

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

আপনার Android অ্যাপে ডায়নামিক লিঙ্ক তৈরি করার আগে, আপনাকে অবশ্যই Firebase SDK অন্তর্ভুক্ত করতে হবে। যদি আপনার অ্যাপটি ডায়নামিক লিঙ্কগুলি পাওয়ার জন্য সেট আপ করা থাকে তবে আপনি ইতিমধ্যে এই পদক্ষেপগুলি সম্পূর্ণ করেছেন এবং আপনি এই বিভাগটি এড়িয়ে যেতে পারেন৷

  1. আপনি যদি ইতিমধ্যে এটি না করে থাকেন তবে ফ্লটারের জন্য Firebase SDK ইনস্টল করুন এবং শুরু করুন

  2. আপনার ফ্লাটার প্রকল্পের মূল নির্দেশিকা থেকে, ডায়নামিক লিঙ্ক প্লাগইন ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:

    flutter pub add firebase_dynamic_links
    
  3. আপনি যদি একটি Android অ্যাপ তৈরি করেন, তাহলে Firebase কনসোলের প্রকল্প সেটিংস পৃষ্ঠাটি খুলুন এবং নিশ্চিত করুন যে আপনি আপনার SHA-1 সাইনিং কী নির্দিষ্ট করেছেন৷ আপনি যদি অ্যাপ লিঙ্কগুলি ব্যবহার করেন তবে আপনার SHA-256 কীও নির্দিষ্ট করুন৷

  4. Firebase কনসোলে, ডায়নামিক লিঙ্ক বিভাগ খুলুন।

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

আপনি সমর্থিত প্যারামিটারগুলির সাথে ডায়নামিক লিঙ্ক তৈরি করতে ডায়নামিক লিঙ্ক বিল্ডার API ব্যবহার করতে পারেন। API রেফারেন্স দেখুন।

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

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

আপনি নিম্নলিখিত পদ্ধতিগুলির সাথে ডায়নামিক লিঙ্ক প্যারামিটার সেট করতে পারেন:

DynamicLink পরামিতি
সেট লিঙ্ক আপনার অ্যাপের লিঙ্কটি খুলবে। একটি URL নির্দিষ্ট করুন যা আপনার অ্যাপ পরিচালনা করতে পারে, সাধারণত অ্যাপের সামগ্রী বা পেলোড, যা অ্যাপ-নির্দিষ্ট যুক্তি শুরু করে (যেমন একটি কুপন দিয়ে ব্যবহারকারীকে ক্রেডিট করা বা একটি স্বাগত স্ক্রিন প্রদর্শন করা)। এই লিঙ্কটি অবশ্যই একটি ভাল-ফরম্যাট করা URL হতে হবে, সঠিকভাবে URL-এনকোডেড হতে হবে, HTTP বা HTTPS ব্যবহার করতে হবে এবং অন্য একটি ডায়নামিক লিঙ্ক হতে পারে না৷
setDomainUriPrefix আপনার ডায়নামিক লিঙ্ক URL প্রিফিক্স, যা আপনি Firebase কনসোলে খুঁজে পেতে পারেন। একটি ডায়নামিক লিঙ্ক ডোমেন নিম্নলিখিত উদাহরণগুলির মত দেখায়:
https://example.com/link
https://example.page.link
অ্যান্ড্রয়েড প্যারামিটার
setFallbackUrl অ্যাপটি ইনস্টল না থাকলে খোলার লিঙ্ক। অ্যাপটি ইনস্টল না থাকলে প্লে স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন, যেমন বিষয়বস্তুর মোবাইল ওয়েব সংস্করণ খুলুন বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করুন।
মিনিমাম সংস্করণ সেট করুন আপনার অ্যাপের সর্বনিম্ন সংস্করণের সংস্করণ কোড যা লিঙ্কটি খুলতে পারে। ইনস্টল করা অ্যাপটি পুরনো সংস্করণ হলে, অ্যাপটি আপগ্রেড করতে ব্যবহারকারীকে প্লে স্টোরে নিয়ে যাওয়া হয়।
আইওএস প্যারামিটার
setAppStoreId আপনার অ্যাপের অ্যাপ স্টোর আইডি, অ্যাপটি ইনস্টল না থাকলে ব্যবহারকারীদের অ্যাপ স্টোরে পাঠাতে ব্যবহৃত হয়
setFallbackUrl অ্যাপটি ইনস্টল না থাকলে খোলার লিঙ্ক। অ্যাপটি ইনস্টল না থাকলে অ্যাপ স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন, যেমন বিষয়বস্তুর মোবাইল ওয়েব সংস্করণ খুলুন বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করুন।
সেট কাস্টম স্কিম আপনার অ্যাপের কাস্টম URL স্কিম, যদি আপনার অ্যাপের বান্ডেল আইডি ছাড়া অন্য কিছু বলে সংজ্ঞায়িত করা হয়
setIpadFallbackUrl অ্যাপ ইনস্টল না থাকলে iPads-এ খোলার লিঙ্ক। অ্যাপটি ইনস্টল না থাকলে অ্যাপ স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন, যেমন বিষয়বস্তুর ওয়েব সংস্করণ খুলুন বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করুন।
setIpadBundleId লিঙ্কটি খুলতে iPads-এ ব্যবহার করার জন্য iOS অ্যাপের বান্ডেল আইডি। অ্যাপটিকে অবশ্যই Firebase কনসোলের ওভারভিউ পৃষ্ঠা থেকে আপনার প্রকল্পের সাথে সংযুক্ত থাকতে হবে।
মিনিমাম সংস্করণ সেট করুন আপনার অ্যাপের ন্যূনতম সংস্করণের সংস্করণ নম্বর যা লিঙ্কটি খুলতে পারে। এই ফ্ল্যাগটি আপনার অ্যাপে পাস করা হয় যখন এটি খোলা হয়, এবং আপনার অ্যাপটিকে এটির সাথে কী করতে হবে তা নির্ধারণ করতে হবে।
নেভিগেশন ইনফো প্যারামিটার
setForcedRedirectEnabled '1' তে সেট করা থাকলে, ডায়নামিক লিঙ্ক খোলার সময় অ্যাপের পূর্বরূপ পৃষ্ঠাটি এড়িয়ে যান এবং পরিবর্তে অ্যাপ বা স্টোরে পুনঃনির্দেশ করুন। অ্যাপের পূর্বরূপ পৃষ্ঠা (ডিফল্টরূপে সক্রিয়) ব্যবহারকারীরা যখন অ্যাপে ডায়নামিক লিংক খোলে তখন তাদের সবচেয়ে উপযুক্ত গন্তব্যে আরও নির্ভরযোগ্যভাবে পাঠাতে পারে; যাইহোক, আপনি যদি এই পৃষ্ঠা ছাড়া ডায়নামিক লিঙ্কগুলিকে নির্ভরযোগ্যভাবে খুলতে পারে এমন অ্যাপগুলিতে একটি ডায়নামিক লিঙ্ক খোলার আশা করেন তবে আপনি এই প্যারামিটার দিয়ে এটি অক্ষম করতে পারেন। এই প্যারামিটারটি শুধুমাত্র iOS-এ ডায়নামিক লিঙ্কের আচরণকে প্রভাবিত করবে।
SocialMetaTag প্যারামিটার
সেটটাইটেল একটি সামাজিক পোস্টে ডায়নামিক লিঙ্ক শেয়ার করা হলে ব্যবহার করার জন্য শিরোনাম।
সেট বর্ণনা ডায়নামিক লিঙ্ক একটি সামাজিক পোস্টে শেয়ার করা হলে ব্যবহার করার বিবরণ।
setImageUrl এই লিঙ্কের সাথে সম্পর্কিত একটি ছবির URL। ছবিটি কমপক্ষে 300x200 px এবং 300 KB এর কম হওয়া উচিত।
GoogleAnalytics পরামিতি
সেট সোর্স
সেট মাঝারি
সেট ক্যাম্পেইন
সেট টার্ম
সেট সামগ্রী
Google Play বিশ্লেষণ পরামিতি। এই প্যারামিটারগুলি (`utm_source`, `utm_medium`, `utm_campaign`, `utm_term`, `utm_content`) প্লে স্টোরে পাঠানো হয় এবং সেই সাথে লিঙ্ক পেলোডের সাথে সংযুক্ত করা হয়।
আইটিউনস কানেক্ট অ্যানালিটিক্স প্যারামিটার
সেটপ্রোভাইডার টোকেন
setAffiliateToken
setCampaignToken
iTunes সংযোগ বিশ্লেষণ পরামিতি। এই প্যারামিটারগুলি (`pt`, `at`, `ct`) অ্যাপ স্টোরে পাঠানো হয়।