مهاجرت از Firebase به پیوندهای پویا با اشتراک گذاری سفارشی

Firebase Invites هم مکانیزمی برای دریافت Firebase Dynamic Links در برنامه شما و هم قابلیتی برای اشتراک‌گذاری آن لینک از طریق پیامک یا ایمیل فراهم می‌کرد. ما Firebase Invites توسعه دادیم تا به شما در افزایش کاربران برنامه‌تان از طریق تبلیغات دهان به دهان کمک کنیم، اما با گذشت زمان، متوجه شدیم که شما راه‌های بهتری برای تشویق کاربران به اشتراک‌گذاری برنامه‌های مورد علاقه‌شان با دوستانشان پیدا کرده‌اید، فراتر از کاری که امروزه Firebase Invites انجام می‌دهند.

ما همچنین شاهد بودیم که در حالی که استفاده از Firebase Invites کاهش یافته است، بسیاری از شما هنوز از Firebase Dynamic Links به عنوان عنصر کلیدی راه‌حل اشتراک‌گذاری کاربر به کاربر خود استفاده می‌کنید. بنابراین، ما تمرکز خود را تقویت می‌کنیم و تلاش خود را برای تبدیل Firebase Dynamic Links به بهترین راه برای ایجاد قابلیت‌های اشتراک‌گذاری کاربر به کاربر در برنامه شما افزایش می‌دهیم. به عنوان بخشی از این تغییر، ما ویژگی Firebase Invites را منسوخ کرده‌ایم و پشتیبانی از آن را از 24 ژانویه 2020 متوقف خواهیم کرد.

این به چه معناست و چه تاثیری بر من دارد؟

از ۲۴ ژانویه ۲۰۲۰، کاربران شما دیگر قادر به ارسال یا دریافت Firebase Invites نخواهند بود و سرویس backend دعوت‌نامه‌ها هنگام برقراری تماس برای ارسال و دریافت لینک دعوت، پاسخ‌های خطا را برمی‌گرداند. SDK های فعلی شامل مدیریت خطا هستند تا به تضمین موارد خرابی مناسب برای این پاسخ‌های سرور کمک کنند، بنابراین کاربران شما می‌توانند بدون خرابی به استفاده از برنامه شما ادامه دهند، اما توصیه می‌کنیم دیگر از Firebase Invites استفاده نکنید و به یک راه‌حل جایگزین با استفاده از Firebase Dynamic Links با یک راه‌حل اشتراک‌گذاری سفارشی روی آورید.

در اینجا نحوه انجام این کار آمده است!

ابتدا، یک Dynamic Link ایجاد کنید که کاربران شما بتوانند آن را با دوستان خود به اشتراک بگذارند. خبر خوب این است که احتمالاً از قبل با این مرحله آشنا هستید زیرا شبیه به نحوه تنظیم Firebase Invites است. اما می‌توانید پارامترهای خاصی را نیز به لینک پویای خود اضافه کنید، مانند اضافه کردن ابرداده‌های اجتماعی به لینک‌های خود در صورتی که کاربران شما برنامه شما را از طریق یک شبکه اجتماعی به اشتراک بگذارند تا ظاهر URL که به اشتراک گذاشته می‌شود را سفارشی کنند.

یک راهکار اشتراک‌گذاری بسازید

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

برای اندروید، یک راه حل ساده که هم اشتراک گذاری پیامک و ایمیل و هم سایر برنامه‌های محبوب شبکه اجتماعی و پیام‌رسان را پوشش می‌دهد، استفاده از یک intent عمومی با مجموعه اکشن Intent.ACTION_SEND است. این یک روش مناسب برای اشتراک گذاری داده‌ها از برنامه شما با هر برنامه‌ای که کاربر نصب کرده است و می‌تواند یک intent اشتراک گذاری را مدیریت کند، فراهم می‌کند.

چیزی شبیه به مثال زیر باید اینجا کار کند (توصیه می‌شود که از منابع رشته‌ای ثابت در کد خود استفاده کنید):

Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, "Here's a new lesson for" +
        " learning more Miwok vocabulary:\n\n" + dynamicLink);
sendIntent.putExtra(Intent.EXTRA_SUBJECT, "Let's Learn Miwok!");
sendIntent.setType("text/plain");
startActivity(Intent.createChooser(sendIntent,
        getResources().getText(R.string.send_to)));

برای مثال کامل‌تر و جزئیات بیشتر، این راهنما را برای ارسال داده‌های ساده به برنامه‌های دیگر بررسی کنید.

قطعه کد بالا چیزی شبیه به جریان دعوت‌نامه که در تصاویر زیر نشان داده شده است را ایجاد می‌کند:

اشتراک گذاری در اندروید

برای توسعه‌دهندگان iOS، می‌توانید از یک UIActivityViewController استفاده کنید و لینک ایجاد شده به عنوان بخشی از داده‌ها را به VC سفارشی ارسال کنید. این روش، جریان اشتراک‌گذاری مشابه صفحات زیر را فراهم می‌کند:

اشتراک گذاری در iOS

یک Dynamic Link در برنامه خود دریافت کنید

در نهایت، آخرین مرحله برای فراهم کردن اشتراک‌گذاری کاربر به کاربر برای برنامه شما پس از پایان مهلت مقرر، دریافت یک Dynamic Link در برنامه شماست.

برای اندروید، این فرآیند به همان شکل باقی می‌ماند، بنابراین نیازی به تغییر زیادی در اینجا نخواهید داشت. تنها تفاوت این است که بدون Firebase Invites ، دیگر شناسه دعوت وجود نخواهد داشت و بنابراین اگر برنامه شما این فراخوانی را انجام می‌دهد، باید فراخوانی استخراج شناسه دعوت را از طریق FirebaseAppInvite invite = FirebaseAppInvite.getInvitation(data) حذف کنید. برای جزئیات بیشتر در مورد این بخش، لطفاً به راهنمای دریافت لینک‌های پویا در برنامه اندروید خود مراجعه کنید.

برای iOS، این کار نیاز به تغییر از شیء FIRReceivedInvite به شیء FIRDynamicLink دارد که هر دو حاوی داده‌های مشابهی هستند. برای جزئیات بیشتر، لطفاً به راهنمای دریافت لینک‌های پویا در برنامه iOS خود مراجعه کنید.

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

Firebase Invites ابزاری عالی بوده است که ما به ساخت آن افتخار می‌کنیم. با نگاه به آینده، مشتاقیم که تلاش خود را برای بهبود هرچه بیشتر Firebase Dynamic Links دو چندان کنیم تا شما انعطاف‌پذیری و کنترل بیشتری بر نحوه تشویق کاربران برای دعوت دیگران به برنامه خود داشته باشید. اگر در مورد راه‌اندازی Firebase Dynamic Links و راه‌حل‌های اشتراک‌گذاری سفارشی خود سؤالی دارید، لطفاً با StackOverflow یا هر یک از انجمن‌های پشتیبانی اضافی ما تماس بگیرید.