سيتم إيقاف تطبيقات Chrome نهائيًا بعد الإصدار 102 من Chrome لأنظمة التشغيل Windows وLinux وMacOS. بالنسبة إلى ChromeOS، ستظل تطبيقات Chrome متاحة حتى يناير 2025 على الأقل، ولكن ننصحك بشدة بنقل البيانات إلى تطبيقات الويب لأنّه من المقرر إيقاف تطبيقات Chrome نهائيًا. في السابق، كانت "تطبيقات Chrome" تتضمّن وظائف إضافية متاحة لها في وضع الكشك، وهي غير متاحة حاليًا لتطبيقات الويب وحدها. يمكنك مواصلة استخدام بعض هذه الوظائف من خلال نشر إضافة مصاحبة مع تطبيق الويب الخاص بك في وضع ملء الشاشة.
كيف يتم نشر الإضافات؟
يتم نشر الإضافات من خلال "وحدة تحكّم المشرف في Chrome" في شاشة إعدادات وضع Kiosk (يمكن العثور عليها من خلال الانتقال إلى Devices > Chrome > Apps & Extensions > Kiosks). ويمكن استضافة الإضافات ذاتيًا من خلال رابط متاح للجميع أو من خلال استضافة الإضافة في "سوق Chrome الإلكتروني". لمزيد من المعلومات حول إدارة الإضافات في مؤسسة أو بيئة تعليمية، يُرجى الرجوع إلى هذا المستند.
كيف يمكنني استدعاء واجهات برمجة التطبيقات الخاصة بالإضافات من تطبيق الويب؟
بما أنّه يمكنك نشر إضافات مصاحبة مع تطبيق الويب الخاص بك في أكشاك الخدمة الذاتية، يمكنك الاستفادة من إمكانات الإضافة من خلال طلب واجهات برمجة التطبيقات الخاصة بالإضافات لتنفيذ إجراءات مثل الحصول على معلومات مفيدة حول الجهاز ومنصة الأجهزة أو إدارة ميزات تسهيل الاستخدام في Chrome.
إذا كنت ستستخدم واجهات برمجة التطبيقات المخصّصة لوضع الكشك فقط، عليك تفعيلها في ملف البيان. بعد ذلك، نفِّذ عملية تمرير الرسائل بين تطبيق الويب الخاص بك في وضع ملء الشاشة والإضافة المصاحبة حتى يتمكّنا من التواصل مع بعضهما البعض.
تفعيل واجهات برمجة التطبيقات الخاصة بإضافات وضع Kiosk فقط
تتوفّر بعض واجهات برمجة التطبيقات للإضافات في وضع Kiosk فقط. لكي تتمكّن الإضافة من استدعاء واجهات برمجة التطبيقات هذه المخصّصة لأكشاك الخدمة الذاتية، عليك إضافة الحقل "kiosk_enabled" إلى البيان وضبطه على true:
{ "manifest_version": 3, "version": "1.0", ... "kiosk_enabled": true }
تنفيذ تمرير الرسائل
إعداد الإضافة
لتلقّي الرسائل والردّ عليها من تطبيق الويب، عليك عرض نص برمجي في الخلفية يستمع إلى الرسائل الواردة من العميل (تطبيق الويب) ثم ينقل هذه الطلبات إلى طلب واجهة برمجة تطبيقات مطابق. في المثال التالي، يتم توجيه الطلب من خلال وكيل لإعادة تشغيل جهاز ChromeOS عندما يرسل تطبيق الويب عنصر رسالة مخصّصًا يحتوي على methodName بقيمة callRestart.
// message handler - extension code chrome.runtime.onMessageExternal.addListener(function (request, sender, sendResponse) { if (request.methodName == 'callRestart') { chrome.runtime.restart(); } });
يمكن ضبط بيان الإضافة للسماح باستدعاء وظائف خارجية إلى الإضافة من خلال المفتاح externally_connectable الذي يحدّد المواقع الإلكترونية والإضافات المسموح لها باستدعاء طرق في الإضافة. يمكنك الاطّلاع على مزيد من المعلومات حول إضافات Chrome وManifest V3 في المستندات الرسمية.
{ "background": { "service_worker": "background.js" }, "description": "This restarts your ChromeOS device. Lucky you!", "manifest_version": 3, "name": "Restart your kiosk app", "version": "1.0", "kiosk_enabled": true, "externally_connectable": { "accepts_tls_channel_id": false, "matches": [ "://developer.android.com/" ] } }
إعداد تطبيق الويب
لاستدعاء الإضافة من تطبيق ويب، عليك معرفة معرّف الإضافة الثابت. يمكن العثور على رقم التعريف هذا في صفحة chrome://extensions التي تظهر عند تثبيت إضافة Chrome، أو من "سوق Chrome الإلكتروني" بعد تحميل الإضافة. يتيح ذلك لتطبيق الويب تحديد الامتداد المطلوب التواصل معه بالضبط. بعد ذلك، اتّصِل بالرقم chrome.runtime.sendMessage وأدخِل معرّف الإضافة مع الرسالة التي تريد إرسالها إلى الإضافة.
const STATIC_EXTENSION_ID = 'abcdefghijklmnopqrstuvwxyz'; // found from chrome extensions page of chrome web store. const callExtensionAPI = function (method) { chrome.runtime.sendMessage(STATIC_EXTENSION_ID, { methodName: method, }); }; callExtensionAPI('callRestart');
لمزيد من المعلومات حول ربط صفحات الويب بالإضافات لتمرير الرسائل، يُرجى الرجوع إلى هذه المستندات.
ملاحظة: لا يمكن للإضافات وتطبيقات الويب التواصل مع بعضها البعض بشكل عشوائي. لن تحاول الإضافة الاستماع إلى الرسائل إلا من النطاقات المدرَجة في القسم externally_connectable من ملف البيان. وبالمثل، يجب أن يعرف تطبيق الويب المعرّف الثابت للإضافة التي يريد التواصل معها.