আপনি Firebase Dynamic Links Builder API দিয়ে ছোট বা দীর্ঘ Dynamic Links তৈরি করতে পারেন। এই এপিআই হয় একটি দীর্ঘ Dynamic Link বা Dynamic Link প্যারামিটার সমন্বিত একটি বস্তু গ্রহণ করে এবং নিম্নলিখিত উদাহরণগুলির মতো URL প্রদান করে:
https://example.com/link/WXYZ https://example.page.link/WXYZ
Firebase এবং Dynamic Links SDK সেট আপ করুন
আপনার Android অ্যাপে Dynamic Links তৈরি করার আগে, আপনাকে অবশ্যই Firebase SDK অন্তর্ভুক্ত করতে হবে। যদি আপনার অ্যাপটি Dynamic Links পাওয়ার জন্য সেট আপ করা থাকে, আপনি ইতিমধ্যে এই পদক্ষেপগুলি সম্পূর্ণ করেছেন এবং আপনি এই বিভাগটি এড়িয়ে যেতে পারেন৷
যদি আপনি ইতিমধ্যেই না করে থাকেন তাহলে আপনার Android প্রকল্পে Firebase যোগ করুন ।
আপনি যখন আপনার অ্যাপটি নিবন্ধন করবেন, তখন আপনার SHA-1 সাইনিং কী নির্দিষ্ট করুন৷ আপনি যদি অ্যাপ লিঙ্কগুলি ব্যবহার করেন তবে আপনার SHA-256 কীও নির্দিষ্ট করুন৷
আপনার মডিউলে (অ্যাপ-লেভেল) গ্রেডল ফাইল (সাধারণত
<project>/<app-module>/build.gradle.kts
বা<project>/<app-module>/build.gradle
), Dynamic Links জন্য নির্ভরতা যোগ করুন অ্যান্ড্রয়েডের জন্য লাইব্রেরি। আমরা লাইব্রেরি সংস্করণ নিয়ন্ত্রণ করতে Firebase Android BoM ব্যবহার করার পরামর্শ দিই।Dynamic Links সাথে একটি সর্বোত্তম অভিজ্ঞতার জন্য, আমরা আপনার Firebase প্রকল্পে Google Analytics সক্ষম করার এবং আপনার অ্যাপে Google Analytics-এর জন্য Firebase SDK যোগ করার পরামর্শ দিই।
dependencies { // Import the BoM for the Firebase platform implementation(platform("com.google.firebase:firebase-bom:33.6.0")) // Add the dependencies for the Dynamic Links and Analytics libraries // When using the BoM, you don't specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-dynamic-links' implementation 'com.google.firebase:firebase-analytics' }
Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।
একটি কোটলিন-নির্দিষ্ট লাইব্রেরি মডিউল খুঁজছেন? অক্টোবর 2023 থেকে শুরু হচ্ছে ( Firebase BoM 32.5.0) , Kotlin এবং Java ডেভেলপাররা প্রধান লাইব্রেরি মডিউলের উপর নির্ভর করতে পারে (বিশদ বিবরণের জন্য, এই উদ্যোগ সম্পর্কে প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন)।(বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি নির্ভরতা যোগ করুন
আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি সংস্করণ তার নির্ভরতা লাইনে উল্লেখ করতে হবে।
মনে রাখবেন যে আপনি যদি আপনার অ্যাপে একাধিক ফায়ারবেস লাইব্রেরি ব্যবহার করেন, আমরা দৃঢ়ভাবে লাইব্রেরি সংস্করণগুলি পরিচালনা করতে BoM ব্যবহার করার পরামর্শ দিই, যা নিশ্চিত করে যে সমস্ত সংস্করণ সামঞ্জস্যপূর্ণ।
dependencies { // Add the dependencies for the Dynamic Links and Analytics libraries // When NOT using the BoM, you must specify versions in Firebase library dependencies implementation 'com.google.firebase:firebase-dynamic-links:22.1.0' implementation 'com.google.firebase:firebase-analytics:22.1.2' }
- Firebase কনসোলে, Dynamic Links বিভাগ খুলুন।
আপনি যদি ইতিমধ্যেই পরিষেবার শর্তাদি স্বীকার না করে থাকেন এবং আপনার Dynamic Links জন্য একটি ডোমেন সেট করে থাকেন, অনুরোধ করা হলে তা করুন৷
আপনার যদি ইতিমধ্যেই একটি Dynamic Links ডোমেন থাকে তবে এটি নোট করুন। আপনি যখন প্রোগ্রাম্যাটিকভাবে Dynamic Links তৈরি করেন তখন আপনাকে একটি Dynamic Links ডোমেন প্রদান করতে হবে।
- প্রস্তাবিত : আপনার গভীর লিঙ্ক এবং ফলব্যাক লিঙ্কগুলিতে অনুমোদিত URL প্যাটার্নগুলি নির্দিষ্ট করুন৷ এটি করার মাধ্যমে, আপনি অননুমোদিত পক্ষগুলিকে Dynamic Links তৈরি করতে বাধা দেন যা আপনার ডোমেন থেকে আপনার নিয়ন্ত্রণ নয় এমন সাইটগুলিতে পুনঃনির্দেশ করে৷ নির্দিষ্ট URL প্যাটার্নের অনুমতি দিন দেখুন।
Firebase কনসোল ব্যবহার করুন
আপনি যদি একটি একক Dynamic Link তৈরি করতে চান, হয় পরীক্ষার উদ্দেশ্যে বা আপনার মার্কেটিং টিমের জন্য সহজে একটি লিঙ্ক তৈরি করতে যা একটি সোশ্যাল মিডিয়া পোস্টের মতো কিছুতে ব্যবহার করা যেতে পারে, তাহলে সবচেয়ে সহজ উপায় হল Firebase কনসোলে গিয়ে একটি তৈরি করা। ম্যানুয়ালি ধাপে ধাপে ফর্ম অনুসরণ করুন।
প্যারামিটার থেকে একটি Dynamic Link তৈরি করুন
একটি Dynamic Link তৈরি করতে, বিল্ডার পদ্ধতির সাথে Dynamic Link প্যারামিটারগুলি নির্দিষ্ট করে তার নির্মাতার সাথে একটি নতুন DynamicLink
অবজেক্ট তৈরি করুন। তারপর, buildDynamicLink
বা buildShortDynamicLink
কল করুন।
নিম্নলিখিত ন্যূনতম উদাহরণটি https://www.example.com/
এর একটি দীর্ঘ Dynamic Link তৈরি করে যা Android-এ আপনার Android অ্যাপ এবং iOS-এ com.example.ios
অ্যাপের সাথে খোলে:
Kotlin+KTX
val dynamicLink = Firebase.dynamicLinks.dynamicLink { link = Uri.parse("https://www.example.com/") domainUriPrefix = "https://example.page.link" // Open links with this app on Android androidParameters { } // Open links with com.example.ios on iOS iosParameters("com.example.ios") { } } val dynamicLinkUri = dynamicLink.uri
Java
DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.parse("https://www.example.com/")) .setDomainUriPrefix("https://example.page.link") // Open links with this app on Android .setAndroidParameters(new DynamicLink.AndroidParameters.Builder().build()) // Open links with com.example.ios on iOS .setIosParameters(new DynamicLink.IosParameters.Builder("com.example.ios").build()) .buildDynamicLink(); Uri dynamicLinkUri = dynamicLink.getUri();
একটি সংক্ষিপ্ত Dynamic Link তৈরি করতে, একইভাবে একটি DynamicLink
তৈরি করুন এবং তারপর buildShortDynamicLink
কল করুন। একটি সংক্ষিপ্ত লিঙ্ক তৈরি করার জন্য একটি নেটওয়ার্ক কলের প্রয়োজন, তাই সরাসরি লিঙ্ক ফেরত দেওয়ার পরিবর্তে, buildShortDynamicLink
একটি Task
ফেরত দেয়, যা অনুরোধটি সম্পূর্ণ হলে সংক্ষিপ্ত লিঙ্কটি উপলব্ধ করে। যেমন:
Kotlin+KTX
val shortLinkTask = Firebase.dynamicLinks.shortLinkAsync { link = Uri.parse("https://www.example.com/") domainUriPrefix = "https://example.page.link" // Set parameters // ... }.addOnSuccessListener { (shortLink, flowchartLink) -> // You'll need to import com.google.firebase.dynamiclinks.component1 and // com.google.firebase.dynamiclinks.component2 // Short link created processShortLink(shortLink, flowchartLink) }.addOnFailureListener { // Error // ... }
Java
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.parse("https://www.example.com/")) .setDomainUriPrefix("https://example.page.link") // Set parameters // ... .buildShortDynamicLink() .addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() { @Override public void onComplete(@NonNull Task<ShortDynamicLink> task) { if (task.isSuccessful()) { // Short link created Uri shortLink = task.getResult().getShortLink(); Uri flowchartLink = task.getResult().getPreviewLink(); } else { // Error // ... } } });
ডিফল্টরূপে, সংক্ষিপ্ত Dynamic Links 17-অক্ষরের লিঙ্ক প্রত্যয়গুলির সাথে তৈরি করা হয় যা এটিকে অত্যন্ত অসম্ভাব্য করে তোলে যে কেউ একটি বৈধ Dynamic Link অনুমান করতে পারে। যদি, আপনার ব্যবহারের ক্ষেত্রে, কেউ সফলভাবে একটি সংক্ষিপ্ত লিঙ্ক অনুমান করতে কোন ক্ষতি না হয়, তাহলে আপনি এমন প্রত্যয় তৈরি করতে পছন্দ করতে পারেন যেগুলি শুধুমাত্র অনন্য হওয়ার জন্য যতটা প্রয়োজন, যা আপনি ShortDynamicLink.Suffix.SHORT
কে buildShortDynamicLink
পদ্ধতিতে পাস করে করতে পারেন। :
Kotlin+KTX
val shortLinkTask = Firebase.dynamicLinks.shortLinkAsync(ShortDynamicLink.Suffix.SHORT) { // Set parameters // ... }
Java
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() // ... .buildShortDynamicLink(ShortDynamicLink.Suffix.SHORT); // ...
Dynamic Link প্যারামিটার
আপনি সমর্থিত প্যারামিটারগুলির সাথে Dynamic Links তৈরি করতে Dynamic Link বিল্ডার API ব্যবহার করতে পারেন। বিস্তারিত জানার জন্য API রেফারেন্স দেখুন।
নিম্নলিখিত উদাহরণটি বেশ কয়েকটি সাধারণ প্যারামিটার সেট সহ একটি Dynamic Link তৈরি করে:
Kotlin+KTX
val dynamicLink = Firebase.dynamicLinks.dynamicLink { // or Firebase.dynamicLinks.shortLinkAsync link = Uri.parse("https://www.example.com/") domainUriPrefix = "https://example.page.link" androidParameters("com.example.android") { minimumVersion = 125 } iosParameters("com.example.ios") { appStoreId = "123456789" minimumVersion = "1.0.1" } googleAnalyticsParameters { source = "orkut" medium = "social" campaign = "example-promo" } itunesConnectAnalyticsParameters { providerToken = "123456" campaignToken = "example-promo" } socialMetaTagParameters { title = "Example of a Dynamic Link" description = "This link works whether the app is installed or not!" } }
Java
DynamicLink dynamicLink = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLink(Uri.parse("https://www.example.com/")) .setDomainUriPrefix("https://example.page.link") .setAndroidParameters( new DynamicLink.AndroidParameters.Builder("com.example.android") .setMinimumVersion(125) .build()) .setIosParameters( new DynamicLink.IosParameters.Builder("com.example.ios") .setAppStoreId("123456789") .setMinimumVersion("1.0.1") .build()) .setGoogleAnalyticsParameters( new DynamicLink.GoogleAnalyticsParameters.Builder() .setSource("orkut") .setMedium("social") .setCampaign("example-promo") .build()) .setItunesConnectAnalyticsParameters( new DynamicLink.ItunesConnectAnalyticsParameters.Builder() .setProviderToken("123456") .setCampaignToken("example-promo") .build()) .setSocialMetaTagParameters( new DynamicLink.SocialMetaTagParameters.Builder() .setTitle("Example of a Dynamic Link") .setDescription("This link works whether the app is installed or not!") .build()) .buildDynamicLink(); // Or buildShortDynamicLink()
আপনি নিম্নলিখিত পদ্ধতিগুলির সাথে Dynamic Link প্যারামিটার সেট করতে পারেন:
DynamicLink পরামিতি | |
---|---|
সেট লিঙ্ক | আপনার অ্যাপের লিঙ্কটি খুলবে। একটি URL নির্দিষ্ট করুন যা আপনার অ্যাপ পরিচালনা করতে পারে, সাধারণত অ্যাপের সামগ্রী বা পেলোড, যা অ্যাপ-নির্দিষ্ট যুক্তি শুরু করে (যেমন একটি কুপন দিয়ে ব্যবহারকারীকে ক্রেডিট করা বা একটি স্বাগত স্ক্রিন প্রদর্শন করা)। এই লিঙ্কটি অবশ্যই একটি ভাল-ফরম্যাট করা URL হতে হবে, সঠিকভাবে URL-এনকোডেড হতে হবে, HTTP বা HTTPS ব্যবহার করতে হবে এবং অন্য একটি ডায়নামিক লিঙ্ক হতে পারে না৷ |
setDomainUriPrefix | আপনার Dynamic Link URL প্রিফিক্স, যা আপনি Firebase কনসোলে খুঁজে পেতে পারেন। একটি Dynamic Link ডোমেন নিম্নলিখিত উদাহরণগুলির মত দেখায়: https://example.com/link https://example.page.link |
অ্যান্ড্রয়েড প্যারামিটার | |
---|---|
setFallbackUrl | অ্যাপটি ইনস্টল না থাকলে খোলার লিঙ্ক। অ্যাপটি ইনস্টল না থাকলে প্লে স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন, যেমন বিষয়বস্তুর মোবাইল ওয়েব সংস্করণ খুলুন বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করুন। |
মিনিমাম সংস্করণ সেট করুন | আপনার অ্যাপের সর্বনিম্ন সংস্করণের versionCode যা লিঙ্কটি খুলতে পারে। ইনস্টল করা অ্যাপটি পুরনো সংস্করণ হলে, অ্যাপটি আপগ্রেড করতে ব্যবহারকারীকে প্লে স্টোরে নিয়ে যাওয়া হয়। |
আইওএস প্যারামিটার | |
---|---|
setAppStoreId | আপনার অ্যাপের অ্যাপ স্টোর আইডি, অ্যাপটি ইনস্টল না থাকলে ব্যবহারকারীদের অ্যাপ স্টোরে পাঠাতে ব্যবহৃত হয় |
setFallbackUrl | অ্যাপটি ইনস্টল না থাকলে খোলার লিঙ্ক। অ্যাপটি ইনস্টল না থাকলে অ্যাপ স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন, যেমন বিষয়বস্তুর মোবাইল ওয়েব সংস্করণ খুলুন বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করুন। |
সেট কাস্টম স্কিম | আপনার অ্যাপের কাস্টম URL স্কিম, যদি আপনার অ্যাপের বান্ডেল আইডি ছাড়া অন্য কিছু বলে সংজ্ঞায়িত করা হয় |
setIpadFallbackUrl | অ্যাপ ইনস্টল না থাকলে iPads-এ খোলার লিঙ্ক। অ্যাপটি ইনস্টল না থাকলে অ্যাপ স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন, যেমন বিষয়বস্তুর ওয়েব সংস্করণ খুলুন বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করুন। |
setIpadBundleId | লিঙ্কটি খুলতে iPads-এ ব্যবহার করার জন্য iOS অ্যাপের বান্ডেল আইডি। অ্যাপটিকে অবশ্যই Firebase কনসোলের ওভারভিউ পৃষ্ঠা থেকে আপনার প্রকল্পের সাথে সংযুক্ত থাকতে হবে। |
মিনিমাম সংস্করণ সেট করুন | আপনার অ্যাপের ন্যূনতম সংস্করণের সংস্করণ নম্বর যা লিঙ্কটি খুলতে পারে। এই ফ্ল্যাগটি আপনার অ্যাপে পাস করা হয় যখন এটি খোলা হয়, এবং আপনার অ্যাপটিকে এটির সাথে কী করতে হবে তা নির্ধারণ করতে হবে। |
নেভিগেশন ইনফো প্যারামিটার | |
---|---|
setForcedRedirectEnabled | '1' তে সেট করা থাকলে, Dynamic Link খোলার সময় অ্যাপের পূর্বরূপ পৃষ্ঠাটি এড়িয়ে যান এবং পরিবর্তে অ্যাপ বা স্টোরে পুনঃনির্দেশ করুন। অ্যাপ প্রিভিউ পৃষ্ঠা (ডিফল্টরূপে সক্রিয়) ব্যবহারকারীরা যখন অ্যাপে Dynamic Links খোলে তখন তাদের সবচেয়ে উপযুক্ত গন্তব্যে আরও নির্ভরযোগ্যভাবে পাঠাতে পারে; যাইহোক, আপনি যদি এই পৃষ্ঠা ছাড়া Dynamic Links নির্ভরযোগ্যভাবে খুলতে পারে এমন অ্যাপগুলিতে একটি Dynamic Link খোলার আশা করেন তবে আপনি এই প্যারামিটার দিয়ে এটি অক্ষম করতে পারেন। এই প্যারামিটারটি শুধুমাত্র iOS-এ Dynamic Link আচরণকে প্রভাবিত করবে। |
SocialMetaTag প্যারামিটার | |
---|---|
সেটটাইটেল | একটি সামাজিক পোস্টে Dynamic Link শেয়ার করা হলে ব্যবহার করার জন্য শিরোনাম। |
সেট বর্ণনা | Dynamic Link একটি সামাজিক পোস্টে শেয়ার করা হলে ব্যবহার করার বিবরণ। |
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 ) অ্যাপ স্টোরে পাঠানো হয়৷ |
একটি দীর্ঘ Dynamic Link ছোট করুন
একটি দীর্ঘ Dynamic Link সংক্ষিপ্ত করতে, অন্যান্য নির্মাতা পদ্ধতির সাথে প্যারামিটার সেট করার পরিবর্তে setLongLink
ব্যবহার করে Dynamic Link URL উল্লেখ করুন:
Kotlin+KTX
val shortLinkTask = Firebase.dynamicLinks.shortLinkAsync { longLink = Uri.parse( "https://example.page.link/?link=" + "https://www.example.com/&apn=com.example.android&ibn=com.example.ios", ) }.addOnSuccessListener { (shortLink, flowChartLink) -> // You'll need to import com.google.firebase.dynamiclinks.component1 and // com.google.firebase.dynamiclinks.component2 // Short link created processShortLink(shortLink, flowChartLink) }.addOnFailureListener { // Error // ... }
Java
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() .setLongLink(Uri.parse("https://example.page.link/?link=https://www.example.com/&apn=com.example.android&ibn=com.example.ios")) .buildShortDynamicLink() .addOnCompleteListener(this, new OnCompleteListener<ShortDynamicLink>() { @Override public void onComplete(@NonNull Task<ShortDynamicLink> task) { if (task.isSuccessful()) { // Short link created Uri shortLink = task.getResult().getShortLink(); Uri flowchartLink = task.getResult().getPreviewLink(); } else { // Error // ... } } });