پرسشگان منسوخ شدن پیوندهای پویا

بیش‌از ۷ سال پیش، «پیوندهای پویای Firebase» را راه‌اندازی کردیم تا نشانی‌های وب را قدرتمندتر کنیم - برای مثال، تغییر پویای مقصد پیوند براساس شرایط زمان اجرا.

درطول سال‌ها، بوم‌سازگان‌های وب و تلفن همراه با فناوری‌هایی مثل پیوندهای برنامه، Google Play Instant، پیوندهای جامع، و App Clips تکامل یافته‌اند و مسیرهای کاربر را در برنامه‌ها و وب برای کاربران برنامه‌تان یکپارچه‌تر و قابل‌پیش‌بینی‌تر کرده‌اند. ما معتقدیم که شما و کاربرانتان از پذیرش مستقیم این فناوری‌ها و ادامه حرکت بوم‌سازگان به جلو بیشتر بهره‌مند خواهید شد. بااین‌حال، درکنار این تغییرات جدید، میاناهای برنامه‌سازی کاربردی بومی اصلی که «پیوندهای پویای Firebase» براساس آن‌ها ساخته شده بود نیز تکامل یافتند و چالش‌های جدیدی را ایجاد کردند.

برای مثال، تغییرات بوم‌سازگان بر توانایی ما برای ارائه تجربه‌ای همواره پایدار برای یکی از ویژگی‌های اصلی «پیوندهای پویای Firebase» تأثیر گذاشته است - یعنی ارائه انتقال روان به برنامه پس‌از نصب برای کاربران برنامه، صرف‌نظر از پلاتفرم.

به‌جای ادامه دادن پشتیبانی از تجربه‌ای که ایده‌آل نیست، تصمیم گرفته‌ایم «پیوندهای پویای Firebase» را برچینیم و منابعمان را بر حل کردن دیگر چالش‌های عمده توسعه‌دهندگان متمرکز کنیم.

می‌دانیم که این تغییر نیازمند صرف زمان برای ارزیابی و اتخاذ راه‌حل‌های جایگزین یا ارائه‌دهندگان پلاتفرم در بازار است.

ما همچنان به توسعه Firebase ادامه می‌دهیم تا نیازهای شما را با ادامه تکامل و تغییر بوم‌سازگان برآورده کنیم. ما به راه‌اندازی ویژگی‌های جدید و به‌روزرسانی‌ها در سراسر محصولات Firebase ادامه خواهیم داد و متعهد هستیم که به شما کمک کنیم در مسیر توسعه برنامه‌تان برتری یابید.

چه چیزی را باید بدانم؟

در ۲۵ اوت ۲۰۲۵، «پیوندهای پویای Firebase» غیرفعال خواهد شد. همه پیوندهای ارائه‌شده توسط «پیوندهای پویای Firebase» (چه آن‌هایی که در دامنه‌های سفارشی میزبانی می‌شوند و چه آن‌هایی که در زیردامنه‌های page.link میزبانی می‌شوند) دیگر کار نخواهند کرد و دیگر نمی‌توانید پیوند جدیدی ایجاد کنید.

برای کمک به شما در تصمیم‌گیری درباره نحوه انتقال از «پیوندهای پویای Firebase»، به‌روزرسانی این سند پرسشگان را با اطلاعات بیشتر ادامه خواهیم داد تا آن‌ها را مدنظر قرار دهید، و همچنین راهنماهای انتقال را برای سناریوهای مختلف انتقال که ممکن است با نحوه استفاده شما از «پیوندهای پویای Firebase» درحال‌حاضر مطابقت داشته باشد ارائه خواهیم داد.

همچنین با پیشرفت فرایند منسوخ‌سازی به‌سمت تاریخ توقف ۲۵ اوت ۲۰۲۵، این راهنما را با پرسشگان بیشتری به‌روز خواهیم کرد و در تلاش‌هایمان برای کمک به شما در فرایند انتقال، هرگونه مشکل اضافی را که کشف کنیم به این راهنما اضافه خواهیم کرد.

برای دریافت پاسخ برخی‌از مهم‌ترین سؤالاتتان، پرسشگان زیر را ببینید.

برای شروع انتقال، لطفاً به پرسشگان «چگونه باید از سرویس انتقال دهم» در پایین نگاهی بیندازید.

در ۲۵ اوت ۲۰۲۵، «پیوندهای پویای Firebase» غیرفعال خواهد شد. همه پیوندهای ارائه‌شده توسط «پیوندهای پویای Firebase» (هم آن‌هایی که در دامنه‌های سفارشی میزبانی می‌شوند و هم آن‌هایی که در زیردامنه‌های page.link میزبانی می‌شوند) از کار خواهند افتاد.

چقدر زمان برای انتقال خواهم داشت؟

تا ۲۵ اوت ۲۰۲۵ فرصت دارید انتقال را تکمیل کنید.

بله، پیوندهای جدید و موجود شما تا زمان توقف سرویس Dynamic Links در ۲۵ اوت ۲۰۲۵ همچنان کار خواهند کرد.

نه، پس‌از خاموش شدن سرویس «پیوندهای پویای Firebase»، هیچ‌کدام از دامنه‌های page .link.دیگر دردسترس نخواهند بود. توصیه می‌کنیم این فهرست سؤالات را بررسی کنید تا بهترین روش انتقال از این سرویس را ارزیابی کنید، و اگر برابری کامل ویژگی‌ها لازم است، این راهنمایی را دنبال کنید تا فراداده‌هایتان را صادر کنید و بااستفاده از دامنه جدید به ارائه‌دهنده سرویس پیوند عمیق دیگری منتقل شوید.

وقتی «پیوندهای پویای Firebase» منسوخ شود، می‌توانید انتظار داشته باشید که:

  • همه پیوندهای کلیک‌شده پاسخ وضعیت HTTP 404 را به کاربران نهایی برمی‌گردانند.
  • همه درخواست‌های اچ‌تی‌تی‌پی به:

    • https://firebasedynamiclinks.googleapis.com/v1/shortLinks (Short Links API)
    • https://firebasedynamiclinks.googleapis.com/v1/SHORT_DYNAMIC_LINK/linkStats (Link Stats API)

    پاسخ وضعیت HTTP‏ ۴۰۰/۴۰۳ را برمی‌گرداند.

  • پاسخ‌های خطای بالا به‌تدریج از ۲۵ اوت ۲۰۲۵ شروع می‌شود تا درنهایت پس‌از گذشتن تاریخ توقف، نرخ پاسخ خطا به ۱۰۰٪ برسد.

  • رفتار زیر براساس اینکه کدام نسخه پلاتفرم کیت توسعه نرم‌افزار و فراخوانی میانای برنامه‌سازی کاربردی در برنامه‌تان انجام شده است:

    iOS

    کاربرد فراخوانی میانای برنامه‌سازی کاربردی رمز وضعیت رفتار آیا برنامه‌تان ازکار خواهد افتاد؟
    ایجاد پیوند کوتاه

    کوتاه‌تر (Swift)

    shortenUrl (Swift)

    shortenWithCompletion (Objective-C)

    403 خطا با دلیل عدم موفقیت صادر می‌شود نه*
    اسناد اولین باز کردن

    به‌طور خودکار در FirebaseApp.configure (Swift) / FIRApp.configure (Objective-C) فراخوانی می‌شود

    400 هیچ خطایی صادر نمی‌شود، اما یک شیء FDL با داده‌های خالی ارسال می‌شود نه*
    باز کردن مجدد ارجاع

    handleUniversalLink (Swift)

    handleUniversalLink (Objective-C)

    400 خطا با دلیل عدم موفقیت صادر می‌شود نه*

    Android

    کاربرد فراخوانی میانای برنامه‌سازی کاربردی رمز وضعیت رفتار آیا برنامه‌تان ازکار خواهد افتاد؟
    ایجاد پیوند کوتاه

    buildShortDynamicLink (Kotlin)

    buildShortDynamicLink (Java)

    403 خطا با دلیل عدم موفقیت صادر می‌شود نه*
    اسناد اولین باز کردن

    getDynamicLink(getIntent()) (Kotlin)

    getDynamicLink(getIntent()) (Java)

    400 Task پاسخ موفقیت‌آمیز برمی‌گرداند، اما داده‌های FDL خالی خواهد بود نه*
    باز کردن مجدد ارجاع

    getDynamicLink(getIntent()) (Kotlin)

    getDynamicLink(getIntent()) (Java)

    400 Task پاسخ موفقیت‌آمیز برمی‌گرداند، اما داده‌های FDL خالی خواهد بود نه*
    پذیرش دعوت هنگام رسیدگی به تغییر مسیر هدف (از ‎ *.page.link یا دامنه سفارشی)، ماژول AppInvite در «خدمات Google Play» فراخوانده می‌شود 400 وقتی «خدمات Google Play» فراخوانده می‌شود، یک نشانگر چرخان نشان می‌دهد و وقتی پاسخ ۴۰۰ برگردانده می‌شود، ناپدید می‌شود نه*

چگونه باید از این سرویس مهاجرت کنم؟

متوجه شده‌ایم که توسعه‌دهندگان مختلف نیازهای متفاوتی درخصوص استفاده از «پیوندهای پویای Firebase» دارند.

بسته به موارد استفاده و ارزیابی شما از استفاده‌تان از «پیوندهای پویای Firebase»، احتمالاً یکی از سناریوهای زیر با نیازهای شما مطابقت خواهد داشت.

برای این سناریو، توصیه می‌کنیم از سایر ارائه‌دهندگان / فروشندگان خدمات پیوند عمیق، مانند Adjust،‏ Airbridge،‏ AppsFlyer،‏ Bitly،‏ Branch،‏ Kochava،‏ Singular، و سایر ارائه‌دهندگان مشابه در بازار استفاده کنید. (توجه داشته باشید که این ارائه‌دهندگان توسط Google بررسی نشده‌اند، اما عملکردی مشابه Firebase Dynamic Links ارائه می‌دهند).

همچنین می‌توانید فراداده پیوند عمیق خود را صادر کنید، که می‌تواند انتقال پیوندهای شما به هر ارائه‌دهنده‌ای که انتخاب می‌کنید را آسان‌تر کند.

برای کمک به پیدا کردن ارائه‌دهنده‌ای با ویژگی‌های مطابق با «پیوندهای پویای Firebase»، به فهرست ویژگی‌های زیر مراجعه کنید.

ویژگی‌های «پیوندهای پویای Firebase»:

  • کاربران را با یک کلیک به فروشگاه مناسب برای دستگاهشان هدایت می‌کند (و درصورت نیاز به صفحه وب بازمی‌گردد)
  • به کاربران امکان می‌دهد پس‌از بارگیری و نصب برنامه شما، سفر خود را ازطریق پیوند عمیق معوق ادامه دهند
  • تجربه‌ای بافتاری ازطریق محتوای پیوند عمیق‌شده در برنامه‌تان (اگر قبلاً نصب شده باشد) به کاربران ارائه می‌دهد
  • داده‌های تحلیلی مربوط به رویدادهای کلیک پیوند پویا را ارائه می‌دهد
  • امکان ایجاد نشانی‌های وب پیوند کوتاه را فراهم می‌کند
  • امکان افزودن فراداده به پیوندها برای هم‌رسانی اجتماعی را فراهم می‌کند

اگر فقط به پیوند عمیق به برنامه‌ام پس‌از نصب آن اهمیت دهم چه؟

برای این سناریو، توصیه می‌کنیم از پیوندهای برنامه و پیوندهای جامع استفاده کنید که روش‌های پشتیبانی‌شده توسط پلاتفرم برای توسعه‌دهندگان هستند تا تجربه‌های پیوند عمیق را برای کاربرانشان فراهم کنند.

برای جزئیات بیشتر درباره نحوه انتقال به استفاده از «پیوندهای برنامه» و «پیوندهای جامع»، این راهنما را بررسی کنید.

این راهنما همچنین توضیح می‌دهد که چگونه می‌توانید به‌صورت اختیاری از Firebase Hosting برای میزبانی فایل‌های درستی‌سنجی پیوند دارایی و دامنه لازم در دامنه‌ای که قصد دارید برای پیوندهای جدیدتان استفاده کنید (مثلاً فایل assetlinks.json برای App Links، فایل apple-app-site-association برای Universal Links) استفاده کنید.

برای این سناریو، ممکن است لازم نباشد هیچ اقدامی در برنامه‌تان برای رسیدگی به توقف آتی انجام دهید، اما توصیه می‌کنیم:

  • بررسی «پیوندهای پویای Firebase» موجود با پیروی از راهنمای صادر کردن فراداده‌های پیوند برای اطمینان از اینکه کاربران و برنامه شما پس‌از توقف ارائه پیوندها تحت تأثیر قرار نخواهند گرفت.

  • حذف پیشوندهای نشانی وب «پیوندهای پویای Firebase» در کنسول Firebase. توجه: دامنه‌های پیشوند نشانی وب به‌طور خودکار بعداز ۲۵ اوت ۲۰۲۵ حذف خواهند شد.

  • برداشتن کیت توسعه نرم‌افزار «پیوندهای پویای Firebase» از برنامه‌هایتان.

اگر سناریو انتقالی را می‌بینید که نیازهای شما را پوشش نمی‌دهد، لطفاً با ما تماس بگیرید و به ما اطلاع دهید

بعداز تکمیل انتقال چه کاری باید انجام دهم؟

وقتی انتقال از «پیوندهای پویای Firebase» را تکمیل کردید، حتماً همه پیشوندهای دامنه نشانی وب (دامنه‌های FDL) مرتبط با «پیوندهای پویای Firebase» قبلی را در پروژه‌تان حذف کنید.

برای انجام این کار می‌توانید:

  1. پیمایش به بخش «پیوندهای پویای Firebase» در کنسول Firebase
  2. انتخاب پیشوند نشانی وبی که می‌خواهید حذف کنید از انتخابگر سمت راست نماگرفت کنسول FDL از انتخابگر پیشوند مسیر نشانی وب

  3. کلیک کردن روی منوِ سه‌نقطه‌ای کنار دکمه «پیوند پویای جدید» نماگرفت کنسول FDL از گزینه‌های پیشوند مسیر نشانی وب

  4. انتخاب «حذف پیشوند نشانی وب»

  5. وارد کردن پیشوند نشانی وب برای تأیید اینکه می‌خواهید آن را حذف کنید، و کلیک کردن روی «حذف پیشوند نشانی وب»

پس‌از اینکه حذف همه پیشوندهای دامنه نشانی وب را به‌پایان رساندید، پروژه Firebase شما به‌عنوان تکمیل‌کننده انتقال از «پیوندهای پویای Firebase» علامت‌گذاری خواهد شد. با این کار، یادآوری بالاپر که ممکن است در کنسول Firebase برای پروژه‌تان دیده باشید نیز برداشته خواهد شد.

توجه داشته باشید که این اقدام پس‌از تکمیل، همه Firebase Dynamic Links شما را حذف خواهد کرد، بنابراین قبل‌از حذف پیشوندهای دامنه نشانی وب، مطمئن شوید که به‌طور کامل از این سرویس مهاجرت کرده‌اید.

میاناهای برنامه‌سازی کاربردی «پیوندهای پویای Firebase» برای پیوندهای کوتاه و Analytics تا تاریخ توقف ارائه در ۲۵ اوت ۲۰۲۵ دردسترس خواهند بود.

پس‌از این تاریخ، این میاناهای برنامه‌سازی کاربردی دیگر برای استفاده دردسترس نخواهند بود و سرویس تعطیل خواهد شد.

لطفاً برای دریافت دستورالعمل‌های مربوط به نحوه صادر کردن فراداده پیوند، به راهنمای صادر کردن فراداده پیوند مراجعه کنید.

می‌توانید از راهنمای صادر کردن برای بازیابی فراداده‌های «پیوندهای پویای Firebase» خودتان، که شامل خود پیوند می‌شود، استفاده کنید.

می‌توانید از Firebase Dynamic Links Analytics API برای بازیابی داده‌های آماری پیوند برای هریک از «پیوندهای پویای Firebase» خود استفاده کنید. این Analytics API به حدود ۵ پرس‌وجو در ثانیه محدود است. برای دیدن نمونه‌ای از نحوه عملکرد در محدوده درخواست هنگام استفاده از API، لطفاً به این نمونه Cloud Task مراجعه کنید.

همچنین می‌توانید از Google Analytics استفاده کنید و داده‌هایتان را برای زیرمجموعه‌ای از داده‌های تجزیه‌وتحلیل پیوند صادر کنید، ازجمله رویدادهای «به‌روزرسانی‌های برنامه» که مختص Google Analytics است.

اگر برای کمک به انتقال به نرخ درخواست بالاتری نیاز دارید، لطفاً ازطریق پشتیبانی Firebase با ما تماس بگیرید.

فراداده‌های دامنه و پیوند شما در ۲۵ اوت ۲۰۲۵ برای حذف علامت‌گذاری خواهند شد و مطابق با خط‌مشی نگهداری داده‌های ما پاک‌سازی خواهند شد.

نه، نیازی به آماده‌سازی «پیوندهای پویای Firebase» نیست چون آماده‌سازی دیگر امکان‌پذیر نیست. درعوض، می‌توانید راهنماهای به‌روزشده درباره شروع کار با اصالت‌سنجی پیوند ایمیل را دنبال کنید تا آن را برای پروژه‌تان فعال و پیاده‌سازی کنید:

فهرست کامل کنش‌هایی را که تحت تأثیر این تغییر قرار می‌گیرند ببینید.

اصالت‌سنجی پیوند ایمیل و کنش‌های ایمیل خارج از باند شما با Firebase همچنان کار خواهد کرد، اما برای ادامه استفاده از این کنش‌ها پس‌از توقف سرویس Firebase Dynamic Links در ۲۵ اوت ۲۰۲۵، باید به جدیدترین کیت‌های توسعه نرم‌افزار Firebase Authentication ارتقا دهید و به راهکار جدید منتقل شوید.

برای دریافت دستورالعمل‌های نحوه تکمیل انتقال، می‌توانید راهنماهای پیوندشده در زیر را دنبال کنید:

فهرست کامل کنش‌هایی را که تحت‌تأثیر این موضوع قرار می‌گیرند ببینید.

پیاده‌سازی‌های جریان OAuth با نسخه‌های کیت توسعه نرم‌افزار Android اصالت‌سنجی Firebase پایین‌تر از نسخه ۲۰.۰.۰ یا نسخه‌های BoM پایین‌تر از ۲۶.۰.۰ چگونه تحت تأثیر قرار می‌گیرند؟

برای ادامه استفاده از پیاده‌سازی جریان OAuth در برنامه‌های Android، باید به جدیدترین کیت توسعه نرم‌افزار Android اصالت‌سنجی Firebase (حداقل نسخه ۲۰.۰.۰) به‌روزرسانی کنید.

آیا کنش‌های ایمیل «اصالت‌سنجی Firebase» در برنامه‌های وب تحت‌تأثیر قرار می‌گیرند؟

نه. منسوخ شدن Firebase Dynamic Link فقط بر مدیریت نشانی‌های وب ورودی در دستگاه‌های همراه تأثیر می‌گذارد.

پیاده‌سازی‌هایی که از کتابخانه‌های کیت توسعه نرم‌افزار Firebase JS برای اصالت‌سنجی ارائه‌دهندگان OAuth در برنامه Cordova استفاده می‌کنند چگونه تحت تأثیر قرار می‌گیرند؟

کیت توسعه نرم‌افزار Firebase JS از «پیوندهای پویای Firebase» برای پیاده‌سازی جریان‌های اصالت‌سنجی OAuth در برنامه‌های Cordova استفاده می‌کند. باید پیاده‌سازی جریان را با اجرای دستی جریان OAuth و ارسال اعتبارنامه OAuth حاصل به Firebase برای تکمیل جریان اصالت‌سنجی اصلاح کنید.

برای جزئیات بیشتر، راهنمای Cordova را ببینید.

لطفاً به پرسشگان «چگونه باید از این سرویس مهاجرت کنم» مراجعه کنید که جزئیات سناریوهای مختلف مهاجرت را شرح می‌دهد و راهنماهای مهاجرت را برای جایگزین‌های مختلف موجود ارائه می‌دهد.