چگونه Chrome به‌روزرسانی‌های مانیفست برنامه وب را مدیریت می‌کند

آنچه برای تغییر آیکون‌ها، میانبرها، رنگ‌ها و سایر فراداده‌های PWA شما لازم است

وقتی یک PWA نصب می‌شود، مرورگر از اطلاعات مانیفست برنامه وب برای نام برنامه، آیکون‌هایی که برنامه باید استفاده کند و URL که باید هنگام اجرای برنامه باز شود، استفاده می‌کند. اما اگر نیاز به به‌روزرسانی میانبرهای برنامه یا امتحان کردن رنگ تم جدید داشته باشید، چه؟ این تغییرات چه زمانی و چگونه در مرورگر منعکس می‌شوند؟

در بیشتر موارد، تغییرات باید ظرف یک یا دو روز پس از راه‌اندازی PWA، پس از به‌روزرسانی مانیفست، اعمال شوند.

به‌روزرسانی‌ها در کروم دسکتاپ

وقتی PWA اجرا می‌شود یا در یک تب مرورگر باز می‌شود، کروم آخرین باری که مانیفست محلی برای تغییرات بررسی شده است را تعیین می‌کند. اگر مانیفست از آخرین باری که مرورگر شروع به کار کرده بررسی نشده باشد، یا در ۲۴ ساعت گذشته بررسی نشده باشد، کروم یک درخواست شبکه برای مانیفست ارسال می‌کند، سپس آن را با نسخه محلی مقایسه می‌کند.

اگر ویژگی‌های انتخابی در مانیفست تغییر کرده باشند (به لیست زیر مراجعه کنید)، کروم مانیفست جدید را در صف انتظار قرار می‌دهد و پس از بسته شدن همه پنجره‌ها، آن را نصب می‌کند. پس از نصب، تمام فیلدهای مانیفست جدید به جز icons به‌روزرسانی می‌شوند.

کدام ویژگی‌ها باعث به‌روزرسانی می‌شوند؟

  • name
  • short_name
  • display (به پایین مراجعه کنید)
  • scope
  • shortcuts
  • start_url احتیاط: تغییرات در start_url نیاز به تنظیم id مانیفست دارد. اطلاعات بیشتر .
  • theme_color
  • file_handlers

وقتی فیلد display به‌روزرسانی می‌شود چه اتفاقی می‌افتد؟

اگر حالت نمایش برنامه خود را از browser به standalone به‌روزرسانی کنید، کاربران فعلی شما پس از به‌روزرسانی، برنامه‌های خود را در یک پنجره باز نخواهند داشت. دو تنظیم نمایش برای یک برنامه وب وجود دارد، یکی از مانیفست (که شما کنترل می‌کنید) و دیگری تنظیم پنجره و تب مرورگر که توسط کاربر کنترل می‌شود. ترجیح کاربر همیشه محترم شمرده می‌شود.

تست به‌روزرسانی‌های مانیفست

صفحه chrome://web-app-internals (که در کروم ۸۵ یا بالاتر موجود است) شامل اطلاعات دقیقی در مورد تمام PWA های نصب شده روی دستگاه است و می‌تواند به شما کمک کند تا بفهمید مانیفست آخرین بار چه زمانی به‌روزرسانی شده است، چند وقت یکبار به‌روزرسانی می‌شود و موارد دیگر.

برای اینکه کروم را به صورت دستی مجبور به بررسی مانیفست به‌روزرسانی‌شده کنید، می‌توانید کروم را با استفاده از پرچم خط فرمان --disable-manifest-update-throttle اجرا کنید یا کروم را مجدداً راه‌اندازی کنید (با استفاده از about://restart )، این کار تایمر را تنظیم مجدد می‌کند تا کروم در دفعه‌ی بعدی که PWA اجرا می‌شود، مانیفست به‌روزرسانی‌شده را بررسی کند. سپس PWA را اجرا کنید. پس از بستن PWA، باید با ویژگی‌های مانیفست جدید به‌روزرسانی شود.

منابع

به‌روزرسانی‌های کروم برای اندروید

وقتی PWA اجرا می‌شود، کروم آخرین باری که مانیفست محلی برای تغییرات بررسی شده است را تعیین می‌کند. اگر مانیفست در ۲۴ ساعت گذشته بررسی نشده باشد، کروم یک درخواست شبکه برای مانیفست زمان‌بندی می‌کند، سپس آن را با نسخه محلی مقایسه می‌کند.

اگر ویژگی‌های انتخابی در مانیفست تغییر کرده باشند (به لیست زیر مراجعه کنید)، کروم مانیفست جدید را در صف قرار می‌دهد و پس از بسته شدن تمام پنجره‌های PWA، اتصال دستگاه به برق و اتصال به وای‌فای، کروم یک WebAPK به‌روزرسانی‌شده را از سرور درخواست می‌کند. پس از به‌روزرسانی، تمام فیلدهای مانیفست جدید استفاده می‌شوند.

کدام ویژگی‌ها باعث به‌روزرسانی می‌شوند؟

  • name
  • short_name
  • icons
  • background_color
  • display
  • orientation
  • scope
  • shortcuts
  • start_url
  • theme_color
  • web_share_target

اگر کروم نتواند مانیفست به‌روزرسانی‌شده را از سرور دریافت کند، ممکن است زمان بین بررسی‌ها را به ۳۰ روز افزایش دهد.

به‌روزرسانی‌های مانیفست را آزمایش کنید

صفحه about://webapks شامل اطلاعات دقیقی در مورد تمام PWA های نصب شده روی دستگاه است و می‌تواند به شما بگوید که آخرین بار چه زمانی فایل مانیفست به‌روزرسانی شده است، هر چند وقت یکبار به‌روزرسانی می‌شود و موارد دیگر.

برای زمانبندی دستی به‌روزرسانی مانیفست، با لغو تایمر و مانیفست محلی، مراحل زیر را انجام دهید:

  1. دستگاه را به برق وصل کنید و مطمئن شوید که به وای‌فای متصل است.
  2. از مدیر وظیفه اندروید برای خاموش کردن PWA استفاده کنید، سپس از پنل برنامه‌ها در تنظیمات اندروید برای توقف اجباری PWA استفاده کنید.
  3. در کروم، about://webapks را باز کنید و روی دکمه‌ی «به‌روزرسانی» برای PWA کلیک کنید. «وضعیت به‌روزرسانی» باید به «در انتظار» تغییر کند.
  4. PWA را اجرا کنید و مطمئن شوید که به درستی بارگذاری شده است.
  5. از مدیر وظیفه اندروید برای خاموش کردن PWA استفاده کنید، سپس از پنل برنامه‌ها در تنظیمات اندروید برای توقف اجباری PWA استفاده کنید.

PWA معمولاً ظرف چند دقیقه به‌روزرسانی می‌شود، پس از اتمام به‌روزرسانی، «وضعیت به‌روزرسانی» باید به «موفق» تغییر کند.

منابع