تحسين ميزة رصد التوافق مع تطبيق الويب التقدّمي بلا اتصال بالإنترنت

بيني ماكلاكلان
بيني ماكلاشلان

تطبيقات الويب التقدّمية (PWA) هي نمط لإنشاء تطبيقات حديثة قابلة للتثبيت باستخدام تكنولوجيا الويب للأجهزة الجوّالة وأجهزة الكمبيوتر المكتبي.

إنّ أحد معايير إنشاء تجربة ويب حديثة، وليس تطبيقات PWA مصادفة، هو أنّ التطبيق يجب أن يستمر في العمل حتى إذا كان الجهاز غير متصل بالإنترنت. وهذا يعني أنه لن تظهر شاشة لعبة الديناصور في Chrome إذا فقد المستخدم إمكانية الوصول إلى الشبكة على جهازه.

الهدف من جميع معايير PWA هو المساعدة في ضمان حصول المستخدمين على تجربة عالية الجودة وتنافسية للتطبيقات عند تصفح الويب. يتحقّق Chrome من معايير تطبيق الويب التقدّمي قبل تفعيل إمكانية التثبيت لتطبيق الويب التقدّمي (PWA).

لا يمكن تثبيت التطبيقات على الجهاز من Chrome سوى التطبيقات التي تستوفي جميع المعايير الأساسية لقابلية تثبيت تطبيق الويب التقدّمي، بما في ذلك إتاحة وضع عدم الاتصال بالإنترنت.

المنطق السابق لرصد وضع عدم الاتصال بالإنترنت

كان التحقق من الدعم بلا اتصال بالإنترنت جزءًا من معايير قابلية تثبيت PWA لعدة سنوات. حتى وقت قريب، لم يكن بإمكان Chrome محاكاة الطلبات من خلال مشغّل الخدمات، لذا لم يكن من الممكن إجراء فحص كامل للسلوك الصحيح في وضع عدم الاتصال.

رسم توضيحي لعامل الخدمات

وهذا يعني أنّ متصفِّح Chrome لم يتمكّن من التحقّق مما إذا كان معالِج أحداث "fetch" قد عرض موردًا صالحًا مع HTTP 200 أثناء الفحص بلا اتصال بالإنترنت. يتحقّق Chrome فقط مما إذا كان مشغّل الخدمة لديه معالِج fetch أم لا.

تم تعديل منطق رصد العمل بلا إنترنت.

أضاف الإصدار 89 Chrome إمكانية تشغيل الطلبات التي تمت محاكاتها بلا اتصال بالإنترنت من خلال مشغّل الخدمات، ما يسمح بمنطق تحسين عمليات الرصد بلا اتصال بالإنترنت ليعكس الدعم الفعلي للتطبيق بلا اتصال بالإنترنت بشكل أفضل.

وقد خططنا لاستخدام هذه القدرة الجديدة لضمان توفير تطبيقات الويب التقدّمية (PWA) صفحة صالحة عند عدم الاتصال بالإنترنت، ولكننا أوقفنا هذه الخطط. سيستمر اجتياز عملية التحقق من قابلية التثبيت إذا كانت الصفحة تحتوي على مشغّل خدمات يتضمّن معالج أحداث fetch.

ما مدى تأثير هذا التغيير في المطوّرين؟

لا يلزم إجراء أي تغييرات في الوقت الحالي، إلا أنّنا ننصحك بشدة بتوفير تجربة بلا اتصال بالإنترنت، لأنّنا نتوقع استخدام المنطق المعدَّل للتحقق من وجود صفحة صالحة في وقت ما في المستقبل.

يعود إليك تحديد نوع التجربة بلا اتصال بالإنترنت التي تريد توفيرها. في أحد جانبي النطاق، تتوفر تجربة تعمل بكامل طاقتها في وضع عدم الاتصال. ويعني هذا تخزين جميع الموارد والبيانات اللازمة مسبقًا ومزامنة البيانات مع الخادم عندما يكون المستخدم متصلاً بالإنترنت مرة أخرى. سيساعد التخزين المؤقت للموارد أيضًا في تحسين مقاييس مؤشرات أداء الويب الأساسية، لأنّه يلغي الحاجة إلى تنزيل الموارد من الشبكة في كل مرة. وفي الطرف الآخر من النطاق، تتوفّر صفحة احتياطية مخصّصة بلا اتصال بالإنترنت.

ستتم إزالة التحذير الذي يظهر ضمن علامة التبويب المشاكل في أدوات المطوّرين حول الإصدار Chrome 90.