تاريخ النشر: 19 أغسطس 2025
تشمل إدارة التنقّل طرق التحكّم في كيفية تعامل تطبيق الويب التقدّمي (PWA) مع تنقّل المستخدم. أحد العناصر المهمة في ذلك هو تسجيل التنقّل، وهي عملية المتصفّح التي تحدّد ما إذا كان النقر على رابط سيؤدي إلى تشغيل تطبيق الويب التقدّمي المثبَّت أو فتح علامة تبويب متصفّح جديدة.
يغطّي هذا الدليل الإصدار الجديد من ميزة تسجيل عمليات التنقّل، وهو متاح بدءًا من الإصدار 139 من Chrome. على الرغم من أنّ السلوك التلقائي للمتصفّح مناسب لمعظم الحالات، إلا أنّ الفهم الأعمق لأساليب الإدارة هذه وواجهات برمجة التطبيقات ذات الصلة بها أمر ضروري إذا كنت تريد إنشاء تجربة سلسة للمستخدمين.
يوضّح قسم عناصر التحكّم الخاصة بالمطوّرين كيفية تخصيص التنقّل لتقديم أفضل تجربة ممكنة عند تشغيل تطبيق الويب التقدّمي.
السلوك التلقائي الجديد
بهدف التوافق مع الإعدادات المفضّلة للمستخدمين وتقليل المشاكل، يعمل Chrome على توحيد طريقة تعامله مع الروابط. في السابق، كان السلوك غير متسق على جميع المنصات. كانت الأجهزة الجوّالة تعطي الأولوية عادةً لتشغيل التطبيقات المثبَّتة، بينما كانت متصفّحات أجهزة الكمبيوتر المكتبي تفتح الرابط أولاً في علامة تبويب قبل الإشارة إلى أنّ أحد التطبيقات يمكنه التعامل معه.
تتيح الطريقة الموحّدة الجديدة لتسجيل عمليات التنقّل فتح الروابط تلقائيًا في تطبيقات الويب التقدّمية (PWA) المثبَّتة. لن يتم الرجوع إلى علامة تبويب في المتصفّح إلا إذا لم يكن تطبيق الويب التقدّمي مثبّتًا أو إذا اختار المستخدم عدم استخدامه. سيتوفّر هذا السلوك الجديد بدءًا من الإصدار 139 من Chrome لأنظمة التشغيل Windows وMac وLinux، وسيتم توفيره على ChromeOS في إصدار مستقبلي.

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

تتمثّل إحدى حالات الاستخدام الأساسية لإدارة التنقّل في نقر المستخدم على رابط يؤدي إلى تطبيق الويب التقدّمي المثبَّت من صفحة أخرى في المتصفّح. يوضّح المثال التالي حالة مستخدم ثبّت تطبيق الويب التقدّمي (PWA) من Google Chat ونقر على رابط يؤدي إليه من دعوة في "تقويم Google".

calendar.google.com
.إجراءات المستخدم
يتألف كل إجراء يتخذه المستخدم من ثلاثة عناصر أساسية: الحدث (مثل النقر أو اللمس)، والموضع الذي يحدث فيه (مثل صفحة ويب أو اختصار على سطح المكتب)، ونوع الرابط الذي يتم تنشيطه (مثل عنوان URL بتنسيق HTTPS). على سبيل المثال، يمكن أن يكون إجراء المستخدم هو النقر على رابط إلى https://chat.google.com/meeting_room_id
ضمن نطاق تطبيق Google Chat التقدّمي من صفحة ويب على calendar.google.com.
قرارات المتصفّح
عندما يتّخذ المستخدم إجراءً، مثل النقر في الخطوة السابقة، ينفّذ المتصفّح عملية تسجيل التنقّل لتحديد ما إذا كان يجب فتح الروابط في علامة تبويب المتصفّح أو في تطبيق ويب تقدّمي مثبَّت. ويتضمّن الخطوات التالية:
- تحديد ما إذا كان التنقّل قابلاً للتسجيل: بشكل عام، يُعدّ التنقّل قابلاً للتسجيل إذا كان ينشئ إطارًا جديدًا ولا يفتح في سياق تصفّح إضافي.
- تحديد تطبيق ويب تقدّمي (PWA) يتحكّم في عملية التنقّل: إذا كان من الممكن تسجيل عملية التنقّل، يحاول المتصفّح العثور على تطبيق ويب تقدّمي (PWA) "يتحكّم" في عنوان URL (يقع ضمن النطاق المحدّد في بيان تطبيق الويب).
- التحقّق من الإعدادات المفضّلة للمستخدم: في حال العثور على تطبيق ويب تقدّمي (PWA) متحكّم، يتحقّق المتصفّح من الإعدادات المفضّلة للمستخدم. إذا لم يوقف المستخدم هذه الميزة في إعدادات التطبيق، سيتم تشغيل تطبيق الويب التقدّمي، وإلا سيتم فتح الرابط في علامة تبويب جديدة في المتصفّح.
- تشغيل تطبيق الويب التقدّمي: يشغّل المتصفّح تطبيق الويب التقدّمي باستخدام خوارزمية معالجة التشغيل. يمكنك التأثير في ذلك باستخدام Launch Handler API، الذي سنتناوله في الفقرة التالية.
يلخّص الرسم البياني التالي هذه العملية:

عناصر التحكّم المتوفّرة للمطوّرين
مع أنّ عملية التنقّل تعتمد بشكل أساسي على الإعدادات التلقائية للمتصفّح وإعدادات المستخدم، يمكنك استخدام واجهات برمجة تطبيقات مختلفة لإدارة جوانب معيّنة منها. بعد التعديل الأخير على ميزة تسجيل بيانات التنقّل، أصبحت بعض واجهات برمجة التطبيقات على الويب التي يعود تاريخها إلى فترة طويلة أكثر أهمية.
Launch Handler API
تُستخدَم واجهة برمجة التطبيقات هذه عندما يقرّر المتصفّح تشغيل تطبيق الويب التقدّمي، ما يتيح لك التحكّم في طريقة تشغيله، مثلاً في نافذة جديدة أو نافذة حالية.

حدِّد طريقة تشغيل تطبيق الويب التقدّمي من خلال العنصر launch_handler
في بيان تطبيق الويب، والذي يتضمّن الحقل الفرعي client_mode
. يحدّد هذا الحقل الفرعي ما إذا كان يجب استخدام نافذة جديدة أو حالية وما إذا كان يجب الانتقال إلى صفحة أخرى. القيم المسموح بها لـ client_mode
هي:
-
focus-existing
: للتعامل مع الرابط في نافذة تطبيق حالية، مثل تطبيق ويب تقدّمي (PWA) يعمل حاليًا في وضع مستقل -
navigate-existing
: في هذا الخيار، يتم الانتقال إلى عنوان URL المستهدف عند التشغيل، وهو سياق التصفّح الذي تم التفاعل معه مؤخرًا في نافذة تطبيق الويب. -
navigate-new
: يؤدي استخدام هذا الخيار إلى إنشاء سياق تصفّح جديد في نافذة تطبيق ويب لتحميل عنوان URL المستهدف عند التشغيل.
استخدِم launchQueue API
لتقديم مَعلمات إضافية والتعامل مع الحالات الخاصة.
تتوفّر واجهة برمجة التطبيقات Launch Handler API بدءًا من الإصدار 110 من Chrome، ولكنها تصبح أكثر فائدة مع تحديث ميزة "التقاط التنقّل". يمكنك الاطّلاع على مزيد من المعلومات حول هذه الواجهة في مستندات Launch Handler API.
واجهات برمجة التطبيقات الأخرى ذات الصلة
بالإضافة إلى معالجة عمليات التشغيل، يمكن أن تؤدي واجهات برمجة تطبيقات أخرى دورًا في هذه العملية، وذلك حسب الاحتياجات المحدّدة لتطبيقك. وتشمل هذه الميزات
معالجات بروتوكولات عناوين URL،
التي تتيح لتطبيق الويب تسجيل إمكانية معالجة مخططات عناوين URL خارج نطاق
http
وhttps
(على سبيل المثال، البروتوكولات العادية مثل mailto:
أو
البروتوكولات المخصّصة مثل web+music
). بالإضافة إلى ذلك، تتيح لك
Web App Scope Extensions API (التي لا تزال
قيد التطوير) توسيع نطاق تطبيق الويب التقدّمي (PWA) لتضمين الروابط من
مصادر أخرى، بما في ذلك النطاقات الفرعية، حتى يتم تشغيل تطبيق الويب التقدّمي (PWA) عندما ينقر المستخدم على رابط من
مصدر مرتبط. لا تتناول هذه المقالة هذه المواضيع بالتفصيل، ولكن يمكنك الاطّلاع على الروابط ذات الصلة لمعرفة المزيد.
حالة الاستخدام: تسجيل روابط Google Chat في تطبيق الويب التقدّمي Chat
في الختام، تعرَّف على كيفية عمل الأجزاء المختلفة معًا في مثال النقر على رابط في "تقويم Google" للانتقال إلى غرفة في Google Chat، وذلك لمستخدم سبق له تثبيت تطبيق Google Chat المتوافق مع تطبيقات الويب التقدّمية.
قبل تسجيل بيانات التنقّل
في الفيديو التالي، ينشئ مستخدم اجتماعًا في "تقويم Google" ويدعو ثلاثة ضيوف. ينشئ تطبيق "تقويم Google" تلقائيًا رابطًا في Google Chat يتضمّن جميع المشاركين. عندما ينقر المستخدم على هذا الرابط، يتم فتح غرفة الدردشة في علامة تبويب جديدة في المتصفّح. يظهر رمز في شريط العناوين يشير إلى أنّه تم تثبيت تطبيق ويب تقدّمي (PWA) مطابق، ولكن يجب أن يشغّله المستخدم يدويًا. كان هذا هو السلوك قبل تعديل ميزة تسجيل التنقّل:
بعد تسجيل التنقّل
يعرض الفيديو التالي سير عمل المستخدم نفسه، ولكن مع سلوك تسجيل التنقّل الجديد. في هذا الإصدار، يؤدي النقر على رابط Google Chat من "تقويم Google" إلى فتح غرفة المحادثة المعنية مباشرةً في تطبيق الويب التقدّمي المثبَّت. بالإضافة إلى ذلك، نفّذ فريق Google Chat ميزة "التعامل مع التشغيل" من خلال إضافة السمة launch_handler
إلى بيان تطبيق الويب. من خلال ضبط قيمة client_mode
على focus-existing
، يضمنون فتح الرابط في نسخة حالية من تطبيق الويب التقدّمي (PWA)، إذا كان أحدها قيد التشغيل. ومن خلال إزالة وقت الاستجابة المطلوب لفتح علامة تبويب جديدة في المتصفح ثم بدء تحميل الصفحة، يمكن أن يكون "الوقت الفعلي اللازم لتفاعل المستخدم" أسرع بحسب التصميم. في الواقع،
حسّن Google Chat بشكل كبير من وقت استجابة التنقّل من خلال إزالة الحاجة إلى
تشغيل تطبيق جديد.
الخاتمة والخطوات التالية
تناولت هذه المقالة السلوك الجديد التلقائي لالتقاط عمليات التنقّل المتاح في الإصدار 139 من Chrome، مع التركيز على حالة استخدام شائعة تتمثل في نقر المستخدم على رابط HTTPS ضمن نطاق أحد تطبيقات الويب التقدّمية المثبَّتة. يمكنك الاطّلاع على مزيد من المعلومات وحالات الاستخدام في إدارة التنقّل إلى تطبيقات الويب التقدّمية المثبّتة. يوضّح المخطّط التالي التصنيف الكامل لحالات الاستخدام، بما في ذلك أحداث المستخدمين ومساحات العرض والبروتوكولات، مع النتائج المقابلة لها:

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