Firebase Remote Config انعطافپذیری زیادی را برای نحوه و زمان واکشی مقادیر جدید از سرور و فعال کردن آنها در برنامه شما فراهم میکند و به شما این امکان را میدهد تا با کنترل زمانبندی تغییرات قابل مشاهده پیکربندی، از تجربه کاربر نهایی با کیفیت اطمینان حاصل کنید. می توانید مقادیر جدیدی را هنگام راه اندازی برنامه با استفاده از fetchAndActivate()
واکشی کنید و Remote Config به عنوان یک روش مکمل برای واکشی خودکار آخرین مقادیر پارامتر پس از انتشار نسخه جدیدی از Remote Config استفاده کنید.
این راهنما به چند استراتژی بارگذاری نگاه می کند و ملاحظات کلیدی را برای انتخاب بهترین گزینه برای برنامه شما مورد بحث قرار می دهد.
استراتژی 1: واکشی و فعال کردن در بارگذاری
در این استراتژی، برنامه شما زمانی که برنامه شما برای اولین بار راه اندازی می شود، fetchAndActivate()
را فراخوانی می کند تا مقادیر جدیدی را از Remote Config دریافت کند و به محض اتمام بارگذاری آنها را فعال کند. این رویکرد ساده برای تغییرات پیکربندی که هیچ تغییر چشمگیری بصری در رابط کاربری شما ایجاد نمی کند، به خوبی کار می کند. در هر شرایطی که UI شما ممکن است در حالی که کاربران در وسط استفاده از آن هستند، به طور قابل توجهی تغییر کند، باید از آن اجتناب شود.
بعد از اینکه برنامه شما fetchAndActivate()
را فراخواند، میتواند با فراخوانی addOnConfigUpdateListener
بهروزرسانیهای مقدار پارامتر را در زمان واقعی گوش دهد. این روش شروع به گوش دادن برای بهروزرسانیهای سمت سرور به مقادیر پارامتر میکند، آنها را بهطور خودکار واکشی میکند، سپس شنونده را فراخوانی میکند. یک استراتژی ساده این است که مقادیر جدید را در شنونده فعال کنید. با این حال، همانطور که برای fetchAndActivate()
ذکر شد، برای رابط های کاربری حساس باید از فعال سازی فوری خودداری شود.
استراتژی 2: در پشت صفحه بارگذاری فعال کنید
به عنوان یک راه حل برای مشکل بالقوه UI که در استراتژی 1 با آن مواجه می شوید، می توانید به صفحه بارگیری تکیه کنید. به جای اینکه برنامه خود را فوراً راه اندازی کنید، صفحه بارگیری را نشان دهید و با fetchAndActivate
در کنترل کننده تکمیل خود تماس بگیرید. سپس بلافاصله پس از آن - دوباره با استفاده از یک تماس یا اعلان - صفحه بارگیری را رد کنید و به کاربر اجازه دهید با برنامه شما تعامل برقرار کند.
اگر از این استراتژی استفاده می کنید، توصیه می شود یک بازه زمانی به صفحه بارگیری اضافه کنید. وقفه یک دقیقهای Remote Config ممکن است برای تجربه راهاندازی برنامه با کیفیت برای کاربران بسیار طولانی باشد.
گوش دادن به بهروزرسانیهای Remote Config در زمان واقعی با فراخوانی addOnConfigUpdateListener
به خوبی با این استراتژی کار میکند. هنگامی که صفحه بارگیری نمایش داده می شود، شنونده را اضافه کنید، سپس از activate()
در یک یا چند نقطه در برنامه خود استفاده کنید، جایی که مقادیر Remote Config باعث تغییرات بصری چشمگیر نمی شود.
استراتژی 3: بارگذاری مقادیر جدید برای راه اندازی بعدی
یک استراتژی موثر این است که مقادیر پیکربندی جدید را بارگیری کنید تا در راه اندازی بعدی برنامه خود فعال شوند. در این استراتژی، برنامه شما قبل از تلاش برای واکشی مقادیر جدید، مقادیر واکشی شده را هنگام راهاندازی فعال میکند، با این فرض که ممکن است مقادیر پیکربندی جدید را قبلاً واکشی کرده باشد - اما هنوز فعال نشده است. ترتیب عملیات برای این استراتژی به شرح زیر است:
- هنگام راهاندازی، بلافاصله مقادیر واکشی شده قبلی را فعال کنید. این هر مقداری را که در جلسه قبلی از سرور دانلود کرده اید اعمال می کند و تقریباً آنی است.
- در حالی که کاربر با برنامه شما تعامل دارد، یک تماس ناهمزمان را برای واکشی مقادیر جدید با توجه به حداقل فاصله واکشی پیشفرض آغاز کنید و یک شنونده بهروزرسانی پیکربندی در زمان واقعی اضافه کنید. شنونده بلادرنگ به طور خودکار هر مقداری را که در زمان اجرای برنامه شما در سرور منتشر شده است واکشی می کند. بهروزرسانیهای بیدرنگ از تنظیم حداقل فاصله واکشی دور میزنند.
- در کنترل کننده تکمیل یا پاسخ به تماس برای تماس واکشی، هیچ کاری انجام ندهید. برنامه شما مقادیر دانلود شده را تا زمانی که دفعه بعد که برنامه شروع می شود فعال نکنید، حفظ می کند.
با این استراتژی زمان انتظار کاربر تا حد زیادی به حداقل می رسد. ترکیب استراتژیهای واکشی و شنونده بلادرنگ با فراخوانهای activate()
در صورت نیاز در چرخه حیات برنامه باعث میشود کاربران در تعامل با برنامه شما، آخرین مقادیر را از Remote Config داشته باشند.
بارگیری ضد استراتژی ها
همانطور که ممکن است از بحث بالا در مورد مزایا و معایب بارگیری متوجه شده باشید، چند الگوی استفاده وجود دارد که باید از آنها اجتناب کنید.
- هنگامی که کاربر در حال مشاهده یا تعامل با آن است، جنبههای رابط کاربری را بهروزرسانی یا تغییر ندهید - مگر اینکه دلایل قوی برنامه یا تجاری برای انجام این کار داشته باشید، مانند حذف گزینههای مربوط به تبلیغاتی که به تازگی به پایان رسیده است.
- تعداد انبوه درخواستهای واکشی همزمان را ارسال نکنید ، که میتواند باعث شود سرور برنامه شما را خفه کند. اگر میخواهید مرتباً بهروزرسانیها را واکشی کنید، Remote Config بیدرنگ استفاده کنید. در حالی که خطر انقباض در اکثر سناریوهای تولید کم است، می تواند در طول توسعه فعال مشکل ساز باشد - و Remote Config برای این مورد طراحی شده است. راهنمای throttling را بررسی کنید.
- برای بدست آوردن مقادیر Remote Config به اتصال شبکه تکیه نکنید . مقادیر پارامترهای پیشفرض درون برنامه را تنظیم کنید تا برنامه شما همیشه مطابق انتظار عمل کند. میتوانید با استفاده از پیشفرضهای قالب بارگیریشده، مقادیر پیشفرض برنامه و Remote Config به صورت دورهای همگامسازی کنید.
مراحل بعدی
این سه استراتژی اساسی به هیچ وجه فهرست کاملی از راههای بارگذاری مقادیر پیکربندی را شامل نمیشوند. بسته به نیاز خود، می توانید استراتژی های بسیار پیچیده تری را طراحی کنید.
مرجع API را برای پلتفرم خود بررسی کنید تا درباره تماسهای خاص برای واکشی و فعالسازی مقادیر پیکربندی بیشتر بدانید.