আপনি Firebase Dynamic Links Builder API ব্যবহার করে ছোট বা দীর্ঘ ডাইনামিক লিঙ্ক তৈরি করতে পারেন। এই API-টি একটি দীর্ঘ ডাইনামিক লিঙ্ক অথবা ডাইনামিক লিঙ্কের প্যারামিটার সম্বলিত একটি অবজেক্ট গ্রহণ করে এবং নিম্নলিখিত উদাহরণগুলির মতো URL রিটার্ন করে:
https://example.com/link/WXYZ
https://example.page.link/WXYZ
Firebase এবং Dynamic Links SDK সেট আপ করুন
আপনার অ্যান্ড্রয়েড অ্যাপে ডাইনামিক লিঙ্ক তৈরি করার আগে, আপনাকে অবশ্যই ফায়ারবেস এসডিকে (Firebase SDK) অন্তর্ভুক্ত করতে হবে। যদি আপনার অ্যাপটি ডাইনামিক লিঙ্ক গ্রহণ করার জন্য সেট আপ করা থাকে, তাহলে আপনি ইতিমধ্যেই এই ধাপগুলো সম্পন্ন করেছেন এবং এই অংশটি এড়িয়ে যেতে পারেন।
যদি আগে থেকে না করে থাকেন, তাহলে Flutter-এর জন্য Firebase SDK-গুলো ইনস্টল ও চালু করুন ।
আপনার ফ্লাটার প্রজেক্টের রুট ডিরেক্টরি থেকে ডাইনামিক লিঙ্কস প্লাগইনটি ইনস্টল করতে নিম্নলিখিত কমান্ডটি চালান:
flutter pub add firebase_dynamic_linksআপনি যদি একটি অ্যান্ড্রয়েড অ্যাপ তৈরি করেন, তাহলে Firebase কনসোলের প্রজেক্ট সেটিংস পৃষ্ঠাটি খুলুন এবং নিশ্চিত করুন যে আপনি আপনার SHA-1 সাইনিং কী নির্দিষ্ট করেছেন। আপনি যদি অ্যাপ লিঙ্ক ব্যবহার করেন, তাহলে আপনার SHA-256 কী-ও নির্দিষ্ট করুন।
Firebase কনসোলে, Dynamic Links সেকশনটি খুলুন।
আপনি যদি আপনার ডাইনামিক লিঙ্কের জন্য আগে থেকে কোনো ডোমেইন সেট আপ না করে থাকেন, তাহলে 'Get Started' বোতামে ক্লিক করুন এবং নির্দেশাবলী অনুসরণ করুন।
আপনার যদি আগে থেকেই একটি ডাইনামিক লিঙ্কস ডোমেইন থাকে, তবে তা মনে রাখবেন। প্রোগ্রাম্যাটিকভাবে ডাইনামিক লিঙ্ক তৈরি করার সময় আপনাকে একটি ডাইনামিক লিঙ্কস ডোমেইন প্রদান করতে হবে।

সুপারিশকৃত : "More" (⋮) মেনু থেকে, আপনার ডিপ লিঙ্ক এবং ফলব্যাক লিঙ্কে অনুমোদিত URL প্যাটার্নগুলো নির্দিষ্ট করে দিন। এর মাধ্যমে, আপনি অননুমোদিত পক্ষগুলোকে এমন ডাইনামিক লিঙ্ক তৈরি করা থেকে বিরত রাখতে পারবেন, যা আপনার ডোমেইন থেকে আপনার নিয়ন্ত্রণাধীন নয় এমন সাইটে রিডাইরেক্ট করে।
প্যারামিটার থেকে একটি ডাইনামিক লিঙ্ক তৈরি করুন
একটি ডাইনামিক লিঙ্ক তৈরি করতে, একটি নতুন DynamicLinkParameters অবজেক্ট তৈরি করুন এবং সেটি buildLink() বা buildShortLink() ফাংশনে পাস করুন।
নিম্নলিখিত সংক্ষিপ্ত উদাহরণটি https://www.example.com/ এর জন্য একটি দীর্ঘ ডাইনামিক লিঙ্ক তৈরি করে, যা অ্যান্ড্রয়েডে 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);
একটি সংক্ষিপ্ত ডাইনামিক লিঙ্ক তৈরি করতে, buildShortLink() ফাংশনে ` DynamicLinkParameters অবজেক্টটি পাস করুন। সংক্ষিপ্ত লিঙ্কটি তৈরি করার জন্য একটি নেটওয়ার্ক কলের প্রয়োজন হয়। উদাহরণস্বরূপ:
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);
ডিফল্টরূপে, সংক্ষিপ্ত ডাইনামিক লিঙ্কগুলো এমন সাফিক্স সহ তৈরি হয় যা মাত্র কয়েকটি অক্ষরের হয়। যদিও এটি লিঙ্কগুলোকে আরও সংক্ষিপ্ত করে, তবে এর ফলে কেউ একটি বৈধ সংক্ষিপ্ত লিঙ্ক অনুমান করে ফেলার সম্ভাবনাও তৈরি হয়। প্রায়শই, কেউ এমনটা করলেও কোনো ক্ষতি হয় না, কারণ লিঙ্কটি সর্বজনীন তথ্যের দিকে নিয়ে যায়।
তবে, যদি আপনার শর্ট লিঙ্কগুলি ব্যবহারকারী-নির্দিষ্ট তথ্যে নিয়ে যায়, তাহলে আপনার ১৭-অক্ষরের সাফিক্স সহ দীর্ঘ লিঙ্ক তৈরি করা উচিত, যাতে কারও পক্ষে একটি বৈধ ডাইনামিক লিঙ্ক অনুমান করা প্রায় অসম্ভব হয়ে পড়ে। এটি করার জন্য, 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);
আপনি নিম্নলিখিত পদ্ধতিগুলির মাধ্যমে ডাইনামিক লিঙ্ক প্যারামিটার সেট করতে পারেন:
| ডাইনামিকলিঙ্ক প্যারামিটার | |
|---|---|
| সেটলিঙ্ক | যে লিঙ্কটি আপনার অ্যাপ খুলবে। এমন একটি URL নির্দিষ্ট করুন যা আপনার অ্যাপ পরিচালনা করতে পারে, সাধারণত এটি অ্যাপের কন্টেন্ট বা পেলোড, যা অ্যাপ-নির্দিষ্ট লজিক শুরু করে (যেমন ব্যবহারকারীকে একটি কুপন দেওয়া বা একটি স্বাগত স্ক্রিন দেখানো)। এই লিঙ্কটি অবশ্যই একটি সুবিন্যস্ত URL হতে হবে, সঠিকভাবে URL-এনকোড করা থাকতে হবে, HTTP বা HTTPS ব্যবহার করতে হবে এবং এটি অন্য কোনো ডাইনামিক লিঙ্ক হতে পারবে না। |
| setDomainUriPrefix | আপনার ডাইনামিক লিঙ্ক ইউআরএল প্রিফিক্স, যা আপনি ফায়ারবেস কনসোলে খুঁজে পাবেন। একটি ডাইনামিক লিঙ্ক ডোমেইন দেখতে নিম্নলিখিত উদাহরণগুলির মতো হয়: https://example.com/link https://example.page.link |
| অ্যান্ড্রয়েড প্যারামিটার | |
|---|---|
| সেটফলব্যাকইউআরএল | অ্যাপটি ইনস্টল করা না থাকলে খোলার জন্য লিঙ্ক। অ্যাপটি ইনস্টল করা না থাকলে প্লে স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করতে এটি নির্দিষ্ট করুন, যেমন—কন্টেন্টের মোবাইল ওয়েব সংস্করণ খোলা, অথবা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করা। |
| ন্যূনতম সংস্করণ সেট করুন | আপনার অ্যাপের সর্বনিম্ন সংস্করণের ভার্সনকোড, যা লিঙ্কটি খুলতে পারে। যদি ইনস্টল করা অ্যাপটি পুরোনো সংস্করণ হয়, তবে ব্যবহারকারীকে অ্যাপটি আপগ্রেড করার জন্য প্লে স্টোরে নিয়ে যাওয়া হয়। |
| IosParameters | |
|---|---|
| অ্যাপস্টোর আইডি সেট করুন | আপনার অ্যাপের অ্যাপ স্টোর আইডি, যা অ্যাপটি ইনস্টল করা না থাকলে ব্যবহারকারীদের অ্যাপ স্টোরে পাঠাতে ব্যবহৃত হয়। |
| সেটফলব্যাকইউআরএল | অ্যাপটি ইনস্টল করা না থাকলে খোলার জন্য লিঙ্ক। অ্যাপটি ইনস্টল করা না থাকলে, অ্যাপ স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করতে এটি নির্দিষ্ট করুন; যেমন—কন্টেন্টের মোবাইল ওয়েব সংস্করণ খোলা, অথবা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করা। |
| কাস্টম স্কিম সেট করুন | আপনার অ্যাপের কাস্টম ইউআরএল স্কিম, যদি তা আপনার অ্যাপের বান্ডেল আইডি ছাড়া অন্য কিছু হিসেবে সংজ্ঞায়িত করা হয়ে থাকে। |
| আইপ্যাড ফলব্যাক ইউআরএল সেট করুন | অ্যাপটি ইনস্টল করা না থাকলে আইপ্যাডে খোলার জন্য লিঙ্ক। অ্যাপটি ইনস্টল করা না থাকলে, অ্যাপ স্টোর থেকে আপনার অ্যাপটি ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন; যেমন—কন্টেন্টের ওয়েব সংস্করণ খোলা, অথবা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করা। |
| সেটআইপ্যাডবান্ডেলআইডি | আইপ্যাডে লিঙ্কটি খোলার জন্য ব্যবহৃত আইওএস অ্যাপটির বান্ডেল আইডি। অ্যাপটিকে অবশ্যই ফায়ারবেস কনসোলের ওভারভিউ পৃষ্ঠা থেকে আপনার প্রোজেক্টের সাথে সংযুক্ত থাকতে হবে। |
| ন্যূনতম সংস্করণ সেট করুন | আপনার অ্যাপের সর্বনিম্ন সংস্করণের নম্বর, যা লিঙ্কটি খুলতে পারে। লিঙ্কটি খোলার সময় এই ফ্ল্যাগটি আপনার অ্যাপে পাঠানো হয় এবং এটি নিয়ে কী করতে হবে, সেই সিদ্ধান্ত আপনার অ্যাপকেই নিতে হয়। |
| নেভিগেশন তথ্য প্যারামিটার | |
|---|---|
| setForcedRedirectEnabled | '১'-এ সেট করা হলে, ডাইনামিক লিঙ্ক খোলার সময় অ্যাপ প্রিভিউ পেজটি এড়িয়ে যাওয়া হবে এবং এর পরিবর্তে অ্যাপ বা স্টোরে রিডাইরেক্ট করা হবে। অ্যাপ প্রিভিউ পেজটি (যা ডিফল্টরূপে সক্রিয় থাকে) অ্যাপে ডাইনামিক লিঙ্ক খোলার সময় ব্যবহারকারীদের সবচেয়ে উপযুক্ত গন্তব্যে আরও নির্ভরযোগ্যভাবে পাঠাতে পারে; তবে, যদি আপনি চান যে একটি ডাইনামিক লিঙ্ক শুধুমাত্র সেইসব অ্যাপেই খোলা হোক যেগুলো এই পেজটি ছাড়াই নির্ভরযোগ্যভাবে ডাইনামিক লিঙ্ক খুলতে পারে, তাহলে আপনি এই প্যারামিটারটি ব্যবহার করে এটিকে নিষ্ক্রিয় করতে পারেন। এই প্যারামিটারটি শুধুমাত্র iOS-এ ডাইনামিক লিঙ্কের আচরণকে প্রভাবিত করবে। |
| সোশ্যালমেটাট্যাগপ্যারামিটার | |
|---|---|
| শিরোনাম সেট করুন | সোশ্যাল পোস্টে ডাইনামিক লিঙ্ক শেয়ার করার সময় যে শিরোনামটি ব্যবহার করা হবে। |
| সেট বিবরণ | সোশ্যাল পোস্টে ডাইনামিক লিঙ্ক শেয়ার করার সময় যে বিবরণটি ব্যবহার করা হবে। |
| setImageUrl | এই লিঙ্কের সাথে সম্পর্কিত একটি ছবির ইউআরএল। ছবিটির আকার কমপক্ষে ৩০০x২০০ পিক্সেল এবং সাইজ ৩০০ কেবি-র কম হতে হবে। |
| গুগল অ্যানালিটিক্স প্যারামিটার | |
|---|---|
| সেটসোর্স সেটমিডিয়াম সেটক্যাম্পেইন সেটটার্ম setContent | গুগল প্লে অ্যানালিটিক্স প্যারামিটার। এই প্যারামিটারগুলো (`utm_source`, `utm_medium`, `utm_campaign`, `utm_term`, `utm_content`) প্লে স্টোরে পাঠানোর পাশাপাশি লিঙ্ক পেলোডের সাথেও যুক্ত করা হয়। |
| আইটিউনস কানেক্ট অ্যানালিটিক্স প্যারামিটার | |
|---|---|
| সেটপ্রোভাইডারটোকেন সেটঅ্যাফিলিয়েটটোকেন ক্যাম্পেইন টোকেন সেট করুন | আইটিউনস কানেক্ট অ্যানালিটিক্স প্যারামিটার। এই প্যারামিটারগুলো (`pt`, `at`, `ct`) অ্যাপ স্টোরে পাঠানো হয়। |