Firebase Dynamic Links Google کی ایک سروس ہے جو سمارٹ لنکس بناتی ہے جو صارف کو موبائل ایپ کے اندر صحیح جگہ یا ویب سائٹ پر لے جاتے ہیں، اس بات پر منحصر ہے کہ آیا ایپ ڈیوائس پر انسٹال ہے۔ Dynamic Links ایپ اسٹور سے انسٹالیشن کے بعد پہلے لانچ پر بھی ٹرانزیشن سیاق و سباق کو محفوظ رکھتے ہیں۔ Firebase دستاویزات، 2026 کے مطابق، متحرک لنکس ایک واحد API میں پروسیس ہوتے ہیں جو خود بخود رویے کا تعین کرتا ہے: ایپ کھولنا، ویب سائٹ پر جانا یا ایپ انسٹال کرنا۔ یہ سروس ریفرل پروگرامز، آن بورڈنگ منظرناموں اور مارکیٹنگ مہمات کے لیے ناگزیر ہے۔
اہم نکات
Firebase Dynamic Links Google کی ایک ٹیکنالوجی ہے جو ایک واحد لنک بناتی ہے جو موبائل ایپ یا ویب سائٹ میں مطلوبہ مواد تک لے جاتا ہے، پلیٹ فارم اور انسٹالیشن کی حیثیت کے مطابق رویے کو ڈھالتا ہے۔ لنک چیک کرتا ہے کہ آیا ایپ ڈیوائس پر انسٹال ہے: اگر ہاں — پیرامیٹرز کے ساتھ ایپ کھولتا ہے، اگر نہیں — انسٹالیشن کے لیے Google Play یا App Store پر ری ڈائریکٹ کرتا ہے، اور انسٹالیشن کے بعد ہدف اسکرین پر ری ڈائریکٹ کرتا ہے۔
عام گہرے لنکس کے مقابلے Dynamic Links کا بنیادی فائدہ موخر گہرے لنکس کی معاونت ہے۔ Deferred Deep Linking کا مطلب ہے کہ ٹرانزیشن سیاق و سباق (لنک پیرامیٹرز) محفوظ رہتا ہے چاہے ایپ ابھی انسٹال نہ ہوئی ہو۔ جب صارف اسٹور سے ایپ انسٹال کرتا ہے، Dynamic Links SDK محفوظ کردہ سیاق و سباق کو پڑھتا ہے اور مطلوبہ اسکرین پر منتقل کرتا ہے۔ اس ٹیکنالوجی کے بغیر، صارف انسٹالیشن کے بعد صرف مرکزی اسکرین پر آتا، پرومو کوڈ، دعوت نامہ یا مخصوص آرڈر کا لنک کھو دیتا۔
Dynamic Links ریفرل پروگرامز میں دعوت دینے والے کے اکاؤنٹ سے منسلک نئے صارفین کو راغب کرنے کے لیے استعمال ہوتے ہیں۔ مارکیٹنگ مہمات ای میل نیوز لیٹرز اور سوشل نیٹ ورکس سے ٹرانزیشن کے ساتھ درست تبدیلی کی پیمائش کے لیے Dynamic Links استعمال کرتی ہیں۔ آن بورڈنگ منظرناموں میں، لنک نئے صارف کو ذاتی نوعیت کے مواد کے ساتھ خوش آمدید اسکرین پر لے جاتا ہے۔ ای کامرس میں، پروڈکٹ لنکس سیاق و سباق محفوظ رکھتے ہیں اور انسٹالیشن کے بعد پہلے لانچ پر بھی پروڈکٹ کارڈ تک لے جاتے ہیں۔
Dynamic Links کا کام کرنے کا طریقہ کار کئی مراحل پر مشتمل ہے، جن میں سے ہر ایک ایپ کی حالت کے مطابق مختلف ہو سکتا ہے۔ جب صارف متحرک لنک پر کلک کرتا ہے، براؤزر Firebase سرور کو درخواست بھیجتا ہے۔ Firebase intent-filter یا universal link تصدیق کے ذریعے چیک کرتا ہے کہ آیا ایپ انسٹال ہے۔ اگر ایپ انسٹال ہے، Firebase گہرا لنک منتقل کرکے اسے کھولتا ہے۔ اگر نہیں — اسٹور پیج یا ویب ورژن پر ری ڈائریکٹ کرتا ہے۔
ایک معیاری Dynamic Link بیس URL، لنک پیرامیٹرز اور اختیاری مارکیٹنگ ٹیگز پر مشتمل ہوتا ہے۔ بیس URL — your-app.page.link جیسا ڈومین Firebase Console میں رجسٹرڈ ہوتا ہے۔ گہرے لنک کے پیرامیٹرز استفسار پیرامیٹرز کے ذریعے سیٹ کیے جاتے ہیں: link (ایپ کے اندر ہدف URL)، apn (Android پیکج نام)، ibi (iOS Bundle ID)، st اور sd (سوشل پیش نظارہ کے لیے عنوان اور تفصیل)۔ مارکیٹنگ ٹیگز utm_source، utm_medium، utm_campaign ٹریکنگ کے لیے Google Analytics میں بھیجے جاتے ہیں۔
| پیرامیٹر | تفصیل | مثال |
|---|---|---|
| link | ہدف گہرا لنک | https://yourapp.page.link/product/123 |
| apn | Android پیکج نام | com.example.myapp |
| ibi | iOS Bundle ID | com.example.myapp.ios |
| st | سوشل عنوان | خصوصی پیشکش |
| sd | سوشل تفصیل | پہلے آرڈر پر 30% چھوٹ |
Firebase Console Engage > Dynamic Links سیکشن میں Dynamic Links بنانے کے لیے بصری انٹرفیس فراہم کرتا ہے۔ کنسول میں، آپ گہرے لنک، ویب رویے، سوشل میٹا ڈیٹا اور UTM ٹیگز سمیت تمام لنک پیرامیٹرز سیٹ کر سکتے ہیں۔ لنک بنانے کے بعد، کنسول ایک تیار URL کے ساتھ ساتھ کلکس اور ٹرانزیشنز کے اعدادوشمار فراہم کرتا ہے۔ بڑی تعداد میں لنک بنانے کے لیے OAuth 2.0 تصدیق کے ساتھ Firebase Dynamic Links REST API استعمال ہوتی ہے۔
پروگرامی طور پر Dynamic Links بنانے کے لیے Firebase Dynamic Links API پر POST درخواست بھیجی جاتی ہے۔ درخواست کا باڈی گہرے لنک پیرامیٹرز، پلیٹ فارم سیٹنگز اور سوشل میٹا ڈیٹا کے ساتھ dynamicLinkInfo پر مشتمل ہوتا ہے۔ API https://your-app.page.link/abc123 جیسا تیار URL واپس کرتا ہے۔ طویل مدتی لنکس کے لیے suffix.option = UNIQUE استعمال ہوتا ہے — منفرد لاحقہ والے مختصر لنکس۔ عارضی لنکس کے لیے — SHORT، ممکنہ تصادم کے ساتھ۔
const axios = require("axios")
const apiUrl = "https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=API_KEY"
const data = {
dynamicLinkInfo: {
domainUriPrefix: "https://yourapp.page.link",
link: "https://yourapp.com/promo/summer",
androidInfo: { androidPackageName: "com.example.myapp" },
iosInfo: { iosBundleId: "com.example.myapp.ios" },
socialMetaTagInfo: {
socialTitle: "موسم گرما کی مہم",
socialDescription: "مہینے کے آخر تک 50% تک چھوٹ"
}
},
suffix: { option: "UNIQUE" }
}
axios.post(apiUrl, data)
.then(res => console.log(res.data.shortLink))
.catch(err => console.error(err))
Dynamic Links خود بخود ڈومین کے بعد 6–8 حروف کے مختصر URL تیار کرتے ہیں، جو انہیں SMS اور سوشل نیٹ ورکس میں استعمال کے لیے موزوں بناتے ہیں۔ UTM پیرامیٹرز utmParameters فیلڈ کے ذریعے یا براہ راست link پیرامیٹر میں شامل کیے جاتے ہیں۔ Firebase خود بخود Dynamic Links پر کلکس کو Firebase کے لیے Google Analytics سے جوڑتا ہے، جس سے ریفرل ٹریفک اور مہم کی انتساب کو ٹریک کیا جا سکتا ہے۔
Android میں Dynamic Links ترتیب دینا میں Firebase SDK شامل کرنا، گہرے لنکس وصول کرنے والی activity کے لیے intent-filter ترتیب دینا اور Firebase Dynamic Links SDK کے ذریعے لنکس پروسیس کرنا شامل ہے۔ SDK انسٹال کرنے اور google-services.json شامل کرنے کے بعد، آپ کو اپنی ایپ کے ڈومین سے لنکس پروسیس کرنے کے لیے AndroidManifest.xml میں intent-filter کے ساتھ activity رجسٹر کرنی ہوگی۔
Dynamic Links پروسیس کرنے والی activity میں VIEW ایکشن اور DEFAULT اور BROWSABLE زمرہ جات کے لیے intent-filter ہونا چاہیے۔ AndroidManifest.xml میں آپ کے گہرے لنک سے مطابقت رکھنے والے android:scheme، android:host اور android:pathPrefix کے ساتھ data ٹیگ شامل ہے۔ page.link ڈومین سے لنکس پروسیس کرنے کے لیے https اسکیم اور آپ کے Dynamic Links ڈومین کے میزبان کے ساتھ intent-filter بھی شامل کیا جاتا ہے۔
<!-- AndroidManifest.xml -->
<activity android:name=".MainActivity">
<intent-filter>
<action android:name=
"android.intent.action.VIEW" />
<category android:name=
"android.intent.category.DEFAULT" />
<category android:name=
"android.intent.category.BROWSABLE" />
<data android:scheme="https"
android:host="yourapp.com"
android:pathPrefix="/promo" />
</intent-filter>
</activity>
intent-filter ترتیب دینے کے بعد، Activity کوڈ میں آنے والے Dynamic Link کو پروسیس کرنا ضروری ہے۔ FirebaseDynamicLinks API intent سے لنک وصول کرتی ہے اور نکالے گئے پیرامیٹرز کے ساتھ PendingDynamicLinkData آبجیکٹ واپس کرتی ہے۔ getLink طریقہ ہدف گہرا لنک واپس کرتا ہے، جسے پارس کرکے نیویگیشن کے لیے استعمال کیا جا سکتا ہے۔ کولڈ اسٹارٹ (onCreate میں getIntent کے ذریعے) اور ہاٹ اسٹارٹ (onNewIntent کے ذریعے) دونوں پر لنک کو ہینڈل کرنا ضروری ہے۔
iOS میں Dynamic Links ترتیب دینا Firebase کی طرف اور Xcode پروجیکٹ دونوں میں ترتیب کی ضرورت ہے۔ آپ کو Firebase Console میں APNs کلید اپ لوڈ کرنی ہوگی، Swift Package Manager یا CocoaPods کے ذریعے Firebase SDK شامل کرنا ہوگا اور Universal Links کو ہینڈل کرنے کے لیے App Delegate ترتیب دینا ہوگا۔ iOS میں Dynamic Links براؤزر اور ایپ کے درمیان کسی درمیانی صفحہ کے بغیر ہموار ٹرانزیشن کے لیے Universal Links استعمال کرتے ہیں۔
Universal Links Apple کی ٹیکنالوجی ہے جو آپ کے ڈومین کو موبائل ایپ سے جوڑتی ہے۔ apple-app-site-association (AASA) فائل https://your-app.page.link/apple-app-site-association پر سرور پر اپ لوڈ کی جاتی ہے۔ Firebase آپ کے Dynamic Links ڈومین کے لیے خود بخود یہ فائل بناتا اور برقرار رکھتا ہے۔ Xcode میں، آپ کو Associated Domains فعال کرنی ہوگی اور پروجیکٹ کی Capacities میں applinks:your-app.page.link بتانا ہوگا۔
iOS کے لیے، Dynamic Links پروسیسنگ App Delegate یا Scene Delegate میں Firebase SDK کے ذریعے کی جاتی ہے۔ application:continueUserActivity: طریقہ آنے والے Universal Link کو روکتا ہے اور اسے Firebase Dynamic Links API کو بھیجتا ہے، جو ہدف لنک اور پیرامیٹرز نکالتا ہے۔ Firebase SDK Firebase Installation API قلیل مدتی اسٹوریج کے ذریعے انسٹالیشن ڈیٹا کی درخواست کرکے Deferred Deep Links کو خود بخود ہینڈل کرتا ہے۔
import FirebaseDynamicLinks
class AppDelegate: UIApplicationDelegate {
func application(
_ application: UIApplication,
continue userActivity: NSUserActivity,
restorationHandler: @escaping
([UIUserActivityRestoring]?) -> Void
) -> Bool {
return DynamicLinks.dynamicLinks()
.handleUniversalLink(userActivity.webpageURL!) {
dynamicLink, error in
if let link = dynamicLink?.url {
self.handleDeepLink(link)
}
}
}
}
آئیے Kotlin استعمال کرتے ہوئے Android ایپ میں Dynamic Link پروسیسنگ کی مکمل مثال دیکھتے ہیں۔ MainActivity ایپ کے کولڈ اور ہاٹ اسٹارٹ دونوں پر آنے والے Dynamic Link کو پڑھتا ہے۔ لنک کو پیرامیٹرز میں پارس کیا جاتا ہے جو آرگیومنٹس کے ساتھ مطلوبہ اسکرین پر نیویگیشن کے لیے استعمال ہوتے ہیں۔ مثال ایک پروموشنل مہم شناخت کنندہ کے ساتھ پروموشن پیج کے لنک کی پروسیسنگ دکھاتی ہے۔
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
handleDynamicLink(intent)
}
override fun onNewIntent(intent: Intent) {
super.onNewIntent(intent)
handleDynamicLink(intent)
}
private fun handleDynamicLink(intent: Intent) {
FirebaseDynamicLinks.getInstance()
.getDynamicLink(intent)
.addOnSuccessListener { data ->
val deepLink = data?.link ?: return@addOnSuccessListener
val promoId = deepLink
.getQueryParameter("promoId") ?: ""
if (promoId.isNotEmpty()) {
navigateToPromoScreen(promoId)
}
}
.addOnFailureListener { e ->
Log.e("DL", "لنک پروسیسنگ کی خرابی", e)
}
}
}
Dynamic Links کی جانچ کے لیے Firebase Console استعمال ہوتا ہے، جہاں آپ ٹیسٹ لنک بنا کر میسنجر یا ای میل کے ذریعے ڈیوائس پر بھیج سکتے ہیں۔ Firebase Dynamic Links ڈیبگر https://your-app.page.link/?d=1 پر دستیاب ہے اور لنک کے رویے کے بارے میں تفصیلی معلومات دکھاتا ہے۔ Deferred Deep Links کی جانچ کرتے وقت، یقینی بنائیں کہ ایپ ان انسٹال ہے، اور انسٹالیشن کے بعد لنک منتقل کردہ پیرامیٹرز کے ساتھ صحیح اسکرین پر لے جائے۔
اکثر پوچھے گئے سوالات
عام گہرے لنکس صرف اس وقت کام کرتے ہیں جب ایپ انسٹال ہو اور انسٹالیشن کے بعد سیاق و سباق محفوظ نہیں رکھتے۔ Dynamic Links Deferred Deep Linking کو سپورٹ کرتے ہیں — صارف ایپ انسٹال کرتا ہے اور محفوظ کردہ لنک پیرامیٹرز کے ساتھ فوری طور پر ہدف اسکرین پر آتا ہے۔
لنکس بنانے اور پروسیس کرنے کے لیے سرور ضروری نہیں ہے — تمام کارروائیاں Firebase Console، REST API یا کلائنٹ پر Firebase SDK کے ذریعے انجام پاتی ہیں۔ بڑی تعداد میں لنک بنانے کے لیے REST API تجویز کی جاتی ہے، لیکن کنسول دستی تخلیق کے لیے موزوں ہے۔
Dynamic Links کی میعاد ختم نہیں ہوتی — جب تک دستی طور پر حذف نہ کیا جائے، یہ Firebase میں ہمیشہ کے لیے محفوظ رہتے ہیں۔ UNIQUE لاحقہ والے مختصر لنکس غیر معینہ مدت تک موجود رہتے ہیں۔ درست انتساب کے لیے ہر مہم کے لیے منفرد لنکس بنانے کی سفارش کی جاتی ہے۔
Dynamic Link پروسیس کرنے کے لیے کلک کے مرحلے پر انٹرنیٹ کنیکشن ضروری ہے کیونکہ Firebase سرور ایپ کی انسٹالیشن کی حیثیت چیک کرتا ہے۔ لنک پروسیس ہونے کے بعد، ڈیٹا intent یا Universal Link کے ذریعے ایپ میں منتقل ہوتا ہے اور آف لائن بھی دستیاب ہو جاتا ہے۔
Firebase Dynamic Links Spark پلان میں مفت ہیں۔ Blaze پلان میں، بغیر کسی اضافی فیس کے فی پروجیکٹ روزانہ 50K کلکس کی حد ہے۔ حد سے تجاوز کرنے پر اگلے دن تک نئے لنکس بنانا مسدود ہو جاتا ہے۔
خلاصہ
ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے
IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔
مزید پڑھیں