আপনি Firebase Dynamic Links Builder API দিয়ে ছোট বা দীর্ঘ ডায়নামিক লিঙ্ক তৈরি করতে পারেন। এই এপিআই হয় একটি দীর্ঘ ডায়নামিক লিঙ্ক বা ডায়নামিক লিঙ্ক প্যারামিটার সমন্বিত একটি বস্তু গ্রহণ করে এবং নিম্নলিখিত উদাহরণগুলির মতো URL প্রদান করে:
https://example.com/link/WXYZ https://example.page.link/WXYZ
Firebase এবং Dynamic Links SDK সেট আপ করুন
আপনার Android অ্যাপে ডায়নামিক লিঙ্ক তৈরি করার আগে, আপনাকে অবশ্যই Firebase SDK অন্তর্ভুক্ত করতে হবে। যদি আপনার অ্যাপটি ডায়নামিক লিঙ্কগুলি পাওয়ার জন্য সেট আপ করা থাকে তবে আপনি ইতিমধ্যে এই পদক্ষেপগুলি সম্পূর্ণ করেছেন এবং আপনি এই বিভাগটি এড়িয়ে যেতে পারেন৷
যদি আপনি ইতিমধ্যেই না করে থাকেন, তাহলে আপনার Android প্রকল্পে Firebase যোগ করুন ।
আপনি যখন আপনার অ্যাপ নিবন্ধন করবেন, আপনার SHA-1 সাইনিং কী নির্দিষ্ট করুন৷ আপনি যদি অ্যাপ লিঙ্কগুলি ব্যবহার করেন তবে আপনার SHA-256 কীও নির্দিষ্ট করুন৷
Firebase Android BoM ব্যবহার করে, আপনার মডিউল (অ্যাপ-লেভেল) গ্রেডল ফাইলে (সাধারণত
app/build.gradle
) ডায়নামিক লিঙ্কস অ্যান্ড্রয়েড লাইব্রেরির নির্ভরতা ঘোষণা করুন।ডায়নামিক লিঙ্কগুলির সাথে একটি সর্বোত্তম অভিজ্ঞতার জন্য, আমরা আপনার Firebase প্রকল্পে Google Analytics সক্ষম করার এবং আপনার অ্যাপে Google Analytics-এর জন্য Firebase SDK যোগ করার পরামর্শ দিই।
Java
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:30.1.0') // Declare 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 লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।
(বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি নির্ভরতা ঘোষণা করুন
আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি সংস্করণ তার নির্ভরতা লাইনে উল্লেখ করতে হবে।
মনে রাখবেন যে আপনি যদি আপনার অ্যাপে একাধিক ফায়ারবেস লাইব্রেরি ব্যবহার করেন, আমরা লাইব্রেরি সংস্করণগুলি পরিচালনা করার জন্য BoM ব্যবহার করার সুপারিশ করি, যা নিশ্চিত করে যে সমস্ত সংস্করণ সামঞ্জস্যপূর্ণ।
dependencies { // Declare 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:21.0.1' implementation 'com.google.firebase:firebase-analytics:21.0.0' }
Kotlin+KTX
dependencies { // Import the BoM for the Firebase platform implementation platform('com.google.firebase:firebase-bom:30.1.0') // Declare 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-ktx' implementation 'com.google.firebase:firebase-analytics-ktx' }
Firebase Android BoM ব্যবহার করে, আপনার অ্যাপ সবসময় Firebase Android লাইব্রেরির সামঞ্জস্যপূর্ণ সংস্করণ ব্যবহার করবে।
(বিকল্প) BoM ব্যবহার না করে Firebase লাইব্রেরি নির্ভরতা ঘোষণা করুন
আপনি যদি Firebase BoM ব্যবহার না করা বেছে নেন, তাহলে আপনাকে অবশ্যই প্রতিটি Firebase লাইব্রেরি সংস্করণ তার নির্ভরতা লাইনে উল্লেখ করতে হবে।
মনে রাখবেন যে আপনি যদি আপনার অ্যাপে একাধিক ফায়ারবেস লাইব্রেরি ব্যবহার করেন, আমরা লাইব্রেরি সংস্করণগুলি পরিচালনা করার জন্য BoM ব্যবহার করার সুপারিশ করি, যা নিশ্চিত করে যে সমস্ত সংস্করণ সামঞ্জস্যপূর্ণ।
dependencies { // Declare 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-ktx:21.0.1' implementation 'com.google.firebase:firebase-analytics-ktx:21.0.0' }
- ফায়ারবেস কনসোলে, ডায়নামিক লিঙ্ক বিভাগ খুলুন।
আপনি যদি ইতিমধ্যে পরিষেবার শর্তাদি গ্রহণ না করে থাকেন এবং আপনার ডায়নামিক লিঙ্কগুলির জন্য একটি ডোমেন সেট না করে থাকেন, অনুরোধ করা হলে তা করুন৷
আপনার যদি ইতিমধ্যেই একটি ডায়নামিক লিঙ্ক ডোমেন থাকে তবে এটি নোট করুন। আপনি প্রোগ্রাম্যাটিকভাবে ডায়নামিক লিঙ্ক তৈরি করার সময় আপনাকে একটি ডায়নামিক লিঙ্ক ডোমেন প্রদান করতে হবে।
- প্রস্তাবিত : আপনার গভীর লিঙ্ক এবং ফলব্যাক লিঙ্কগুলিতে অনুমোদিত URL প্যাটার্নগুলি নির্দিষ্ট করুন৷ এটি করার মাধ্যমে, আপনি অননুমোদিত পক্ষগুলিকে ডায়নামিক লিঙ্কগুলি তৈরি করতে বাধা দেন যা আপনার ডোমেন থেকে আপনার নিয়ন্ত্রণ নয় এমন সাইটগুলিতে পুনঃনির্দেশ করে৷ নির্দিষ্ট URL প্যাটার্নের অনুমতি দিন দেখুন।
ফায়ারবেস কনসোল ব্যবহার করুন
আপনি যদি একটি একক ডায়নামিক লিঙ্ক তৈরি করতে চান, হয় পরীক্ষার উদ্দেশ্যে বা আপনার মার্কেটিং টিমের জন্য সহজে একটি লিঙ্ক তৈরি করতে যা সোশ্যাল মিডিয়া পোস্টের মতো কিছুতে ব্যবহার করা যেতে পারে, তাহলে সবচেয়ে সহজ উপায় হল Firebase কনসোলে গিয়ে একটি তৈরি করা। ম্যানুয়ালি ধাপে ধাপে ফর্ম অনুসরণ করুন।
প্যারামিটার থেকে একটি ডায়নামিক লিঙ্ক তৈরি করুন
একটি ডায়নামিক লিঙ্ক তৈরি করতে, বিল্ডার পদ্ধতির সাথে ডায়নামিক লিঙ্কের পরামিতিগুলি নির্দিষ্ট করে তার নির্মাতার সাথে একটি নতুন
DynamicLink
লিঙ্ক অবজেক্ট তৈরি করুন। তারপর,buildDynamicLink
বাbuildShortDynamicLink
কল করুন।নিম্নলিখিত ন্যূনতম উদাহরণটি
https://www.example.com/
এর একটি দীর্ঘ ডায়নামিক লিঙ্ক তৈরি করে যা Android-এ আপনার Android অ্যাপ এবং iOS-এcom.example.ios
অ্যাপের সাথে খোলে: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();
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
একটি সংক্ষিপ্ত ডায়নামিক লিঙ্ক তৈরি করতে, একইভাবে একটি ডায়নামিকলিঙ্ক তৈরি করুন এবং তারপর
DynamicLink
কলbuildShortDynamicLink
। একটি সংক্ষিপ্ত লিঙ্ক তৈরি করার জন্য একটি নেটওয়ার্ক কলের প্রয়োজন, তাই সরাসরি লিঙ্ক ফেরত দেওয়ার পরিবর্তে,buildShortDynamicLink
একটিTask
ফেরত দেয়, যা অনুরোধটি সম্পূর্ণ হলে ছোট লিঙ্কটি উপলব্ধ করে। উদাহরণ স্বরূপ: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 // ... } } });
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.ktx.component1 and // com.google.firebase.dynamiclinks.ktx.component2 // Short link created processShortLink(shortLink, flowchartLink) }.addOnFailureListener { // Error // ... }
ডিফল্টরূপে, সংক্ষিপ্ত ডায়নামিক লিঙ্কগুলি 17-অক্ষরের লিঙ্ক প্রত্যয়গুলির সাথে তৈরি করা হয় যা এটিকে অত্যন্ত অসম্ভাব্য করে তোলে যে কেউ একটি বৈধ ডায়নামিক লিঙ্ক অনুমান করতে পারে। যদি, আপনার ব্যবহারের ক্ষেত্রে, কেউ সফলভাবে একটি সংক্ষিপ্ত লিঙ্ক অনুমান করতে কোন ক্ষতি না হয়, তাহলে আপনি এমন প্রত্যয় তৈরি করতে পছন্দ করতে পারেন যেগুলি শুধুমাত্র অনন্য হওয়ার জন্য প্রয়োজন, যা আপনি
ShortDynamicLink.Suffix.SHORT
কেbuildShortDynamicLink
পদ্ধতিতে পাস করে করতে পারেন। :Java
Task<ShortDynamicLink> shortLinkTask = FirebaseDynamicLinks.getInstance().createDynamicLink() // ... .buildShortDynamicLink(ShortDynamicLink.Suffix.SHORT); // ...
Kotlin+KTX
val shortLinkTask = Firebase.dynamicLinks.shortLinkAsync(ShortDynamicLink.Suffix.SHORT) { // Set parameters // ... }
ডায়নামিক লিঙ্ক প্যারামিটার
আপনি সমর্থিত প্যারামিটারগুলির সাথে ডায়নামিক লিঙ্ক তৈরি করতে ডায়নামিক লিঙ্ক বিল্ডার API ব্যবহার করতে পারেন। বিস্তারিত জানার জন্য API রেফারেন্স দেখুন।
নিম্নলিখিত উদাহরণটি বেশ কয়েকটি সাধারণ প্যারামিটার সেট সহ একটি ডায়নামিক লিঙ্ক তৈরি করে:
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()
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!" } }
আপনি নিম্নলিখিত পদ্ধতিগুলির সাথে ডায়নামিক লিঙ্ক প্যারামিটার সেট করতে পারেন:
DynamicLink পরামিতি সেট লিঙ্ক আপনার অ্যাপের লিঙ্কটি খুলবে। একটি URL নির্দিষ্ট করুন যা আপনার অ্যাপ পরিচালনা করতে পারে, সাধারণত অ্যাপের সামগ্রী বা পেলোড, যা অ্যাপ-নির্দিষ্ট যুক্তি শুরু করে (যেমন একটি কুপন দিয়ে ব্যবহারকারীকে ক্রেডিট করা বা একটি স্বাগত স্ক্রিন প্রদর্শন করা)। এই লিঙ্কটি অবশ্যই একটি ভাল-ফরম্যাট করা URL হতে হবে, সঠিকভাবে URL-এনকোডেড হতে হবে, HTTP বা HTTPS ব্যবহার করতে হবে এবং অন্য একটি ডায়নামিক লিঙ্ক হতে পারে না৷
setDomainUriPrefix আপনার ডায়নামিক লিঙ্ক URL প্রিফিক্স, যা আপনি Firebase কনসোলে খুঁজে পেতে পারেন। একটি ডায়নামিক লিঙ্ক ডোমেন নিম্নলিখিত উদাহরণগুলির মত দেখায়: https://example.com/link https://example.page.link
অ্যান্ড্রয়েড প্যারামিটার setFallbackUrl অ্যাপটি ইনস্টল না থাকলে খোলার লিঙ্ক। অ্যাপটি ইনস্টল না থাকলে প্লে স্টোর থেকে আপনার অ্যাপ ইনস্টল করা ছাড়া অন্য কিছু করার জন্য এটি নির্দিষ্ট করুন, যেমন বিষয়বস্তুর মোবাইল ওয়েব সংস্করণ খুলুন বা আপনার অ্যাপের জন্য একটি প্রচারমূলক পৃষ্ঠা প্রদর্শন করুন। মিনিমাম সংস্করণ সেট করুন আপনার versionCode
সর্বনিম্ন সংস্করণের সংস্করণ কোড যা লিঙ্কটি খুলতে পারে। ইনস্টল করা অ্যাপটি পুরনো সংস্করণ হলে, অ্যাপটি আপগ্রেড করতে ব্যবহারকারীকে প্লে স্টোরে নিয়ে যাওয়া হয়।আইওএস প্যারামিটার 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
setCampaignTokeniTunes সংযোগ বিশ্লেষণ পরামিতি। এই প্যারামিটারগুলি ( pt
,at
,ct
) অ্যাপ স্টোরে পাঠানো হয়৷একটি দীর্ঘ ডায়নামিক লিঙ্ক ছোট করুন
একটি দীর্ঘ ডায়নামিক লিঙ্ক সংক্ষিপ্ত করতে, অন্যান্য নির্মাতা পদ্ধতির সাথে প্যারামিটার সেট করার পরিবর্তে
setLongLink
ব্যবহার করে ডায়নামিক লিঙ্কের URL উল্লেখ করুন: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 // ... } } });
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.ktx.component1 and // com.google.firebase.dynamiclinks.ktx.component2 // Short link created processShortLink(shortLink, flowChartLink) }.addOnFailureListener { // Error // ... }
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2022-06-24 UTC.
[] []