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

تصميم واجهة المستخدم

لكي تعمل معظم الإضافات، يجب أن يتفاعل المستخدم معها. يوفر النظام الأساسي للإضافات مجموعة متنوعة من الطرق لإضافة تفاعلات إلى إضافتك. تتضمن هذه الطرق النوافذ المنبثقة التي يتم تشغيلها من شريط أدوات Chrome واللوحات الجانبية وقوائم السياقات والمزيد.
استخدِم واجهة برمجة التطبيقات browser.sidePanel لاستضافة المحتوى في اللوحة الجانبية للمتصفّح بجانب المحتوى الرئيسي لصفحة الويب.
يمكنك التحكُّم في عرض رمز الإضافة في شريط الأدوات.
إضافة عناصر إلى قائمة السياقات في Google Chrome.

التحكم في المتصفح

تتيح لك واجهات برمجة التطبيقات للإضافات في Chrome تغيير طريقة عمل متصفحك.
إلغاءات الإعدادات هي طريقة تتيح للإضافات إلغاء إعدادات Chrome المحدّدة. بالإضافة إلى ذلك، يمكن للإضافات استخدام رمز HTML لتجاوز الصفحات لاستبدال أي صفحة يوفرها Google Chrome عادةً. ويمكن لإحدى الإضافات أن تلغي مدير الإشارات أو علامة تبويب السجل أو علامة التبويب الجديدة.
تضيف إضافات "أدوات مطوّري البرامج" وظائف إلى "أدوات مطوّري البرامج في Chrome" من خلال الوصول إلى واجهات برمجة التطبيقات الخاصة بإضافات "أدوات مطوّري البرامج" عبر صفحة "أدوات مطوّري البرامج" المُضافة إلى الإضافة. يمكنك أيضًا استخدام واجهة برمجة التطبيقات browser.debugger لاستدعاء بروتوكول تصحيح الأخطاء عن بُعد في Chrome. يمكنك إرفاقها بعلامة تبويب واحدة أو أكثر لتسجيل تفاعلات الشبكة وتصحيح أخطاء JavaScript وتعديل نموذج المستند (DOM) وغير ذلك.
تتيح لك واجهة برمجة التطبيقات browser.notifications إنشاء إشعارات باستخدام النماذج وعرض هذه الإشعارات للمستخدمين في لوحة النظام.
استخدِم واجهة برمجة التطبيقات browser.history للتفاعل مع سجلّ الصفحات التي تمت زيارتها في المتصفّح، واستخدِم واجهة برمجة التطبيقات browser.browsingData لإدارة بيانات التصفّح الأخرى. استخدِم browser.topSites للوصول إلى المواقع الإلكترونية الأكثر زيارة.
استخدِم واجهات برمجة التطبيقات، مثل browser.tabs وbrowser.tabGroups وbrowser.windows، لإنشاء متصفّح المستخدم وتعديله وترتيبه.
استخدِم واجهة برمجة التطبيقات browser.commands لإضافة اختصارات لوحة المفاتيح التي تؤدي إلى تنفيذ إجراءات في الإضافة. على سبيل المثال، يمكنك إضافة اختصار لفتح إجراء المتصفّح أو إرسال أمر إلى الإضافة.
استخدِم واجهة برمجة التطبيقات browser.identity للحصول على رموز الدخول OAuth 2.0.
توفّر واجهة برمجة التطبيقات browser.management طرقًا لإدارة قائمة الإضافات المثبَّتة والتي يتم تشغيلها. وهي مفيدة بشكل خاص للإضافات التي تتجاوز صفحة "علامة تبويب جديدة" المضمّنة.
تتيح لك واجهة برمجة التطبيقات browser.omnibox تسجيل كلمة رئيسية في مربّع متعدد الاستخدامات (شريط العناوين) في Google Chrome.
استخدِم واجهة برمجة التطبيقات browser.privacy للتحكّم في استخدام الميزات في Chrome التي يمكن أن تؤثر في خصوصية المستخدم. يمكنك أيضًا الاطّلاع على واجهة برمجة التطبيقات browser.proxy لإدارة إعدادات الخادم الوكيل في Chrome.
استخدِم واجهة برمجة التطبيقات browser.downloads لبدء عمليات التنزيل ومراقبتها وتعديلها والبحث عنها آليًا.
استخدِم واجهة برمجة التطبيقات browser.bookmarks وواجهة برمجة التطبيقات browser.readingList لإنشاء هذه القوائم وتنظيمها والتعامل معها بطرق أخرى.

التحكّم في الويب

تغيير محتوى صفحات الويب وسلوكها ديناميكيًا. يمكنك التحكّم في الويب وتعديله من خلال إدخال نصوص برمجية واعتراض طلبات الشبكة واستخدام واجهات برمجة تطبيقات الويب للتفاعل مع صفحات الويب.
النصوص البرمجية للمحتوى هي ملفات يتم تشغيلها في سياق صفحات الويب. وتستخدم هذه البرامج نموذج كائن المستند (DOM) القياسي لقراءة تفاصيل صفحات الويب التي يزورها المتصفح وإجراء تغييرات عليها وتمرير المعلومات إلى إضافتها الرئيسية.
يمنح إذن "activeTab" الإضافة إمكانية الوصول المؤقت إلى علامة التبويب النشطة حاليًا عندما يستدعي المستخدم الإضافة، مثلاً عن طريق النقر على إجراءها. ويستمر الوصول إلى علامة التبويب أثناء وجود المستخدم على هذه الصفحة، ويتم إبطاله عند انتقاله بعيدًا عن علامة التبويب أو إغلاقها.
استخدِم واجهات برمجة التطبيقات browser.declarativeNetRequest وbrowser.webRequest وbrowser.webNavigation لمراقبة طلبات الشبكة وحظرها وتعديلها.
تعرَّف على الطرق المختلفة لتسجيل الصوت والفيديو من علامة تبويب أو نافذة أو شاشة باستخدام واجهات برمجة التطبيقات الخاصة بمنصة الويب، مثل browser.tabCapture أو getDisplayMedia().
استخدِم واجهة برمجة التطبيقات browser.contentSettings للتحكّم في ما إذا كان بإمكان المواقع الإلكترونية استخدام ميزات مثل ملفات تعريف الارتباط وجافا سكريبت والمكوّنات الإضافية. بشكل عام، تتيح لك إعدادات المحتوى تخصيص سلوك Chrome على أساس كل موقع إلكتروني على حدة بدلاً من تخصيصه على مستوى العالم.

المفاهيم الأساسية

باستخدام النظام الأساسي للويب وواجهات برمجة التطبيقات للإضافات، يمكنك إنشاء ميزات أكثر تعقيدًا من خلال الجمع بين مكونات واجهة المستخدم المختلفة وميزات النظام الأساسي للإضافات.
عامل خدمات الإضافات (service-factor.js) هو نص برمجي مستند إلى حدث يُشغّله المتصفّح في الخلفية. وغالبًا ما يتم استخدامها لمعالجة البيانات وتنسيق المهام في أجزاء مختلفة من الإضافة وكمدير حدث الإضافة.
فهم الأذونات: طريقة عملها ومتى يجب تجنُّب طلبها عندما لا تكون هناك حاجة إليها
هناك طرق مختلفة لتنفيذ فلترة المحتوى والشبكات في إضافات Chrome. تعرَّف على إمكانات فلترة المحتوى المتاحة للإضافات وأساليب الفلترة وأساليبها وواجهات برمجة التطبيقات المختلفة التي يمكن أن تستخدمها إضافات Chrome.
في كثير من الأحيان، تحتاج النصوص البرمجية للمحتوى، أو صفحات الإضافات الأخرى، إلى إرسال معلومات أو تلقّيها من مشغّل خدمات الإضافات. في هذه الحالات، يمكن لأي من الطرفَين الاستماع إلى الرسائل المُرسَلة من الطرف الآخر والرد على الرسائل في القناة نفسها.
يُرجى تفعيل الإضافات لتبادل الرسائل مع التطبيقات الأصلية.
في الإصدار Manifest V3، يجب أن تتضمّن الإضافات جميع الرموز التي تستخدمها داخل الإضافة نفسها. تتوفر استراتيجيات مختلفة للقيام بذلك.
تتضمن إضافات Chrome واجهة برمجة تطبيقات تخزين مخصصة، ومتاحة لجميع مكونات الإضافات. وتتضمّن أربع مناطق تخزين منفصلة لحالات استخدام محدَّدة وأداة معالجة أحداث تتبَّع متى يتم تعديل البيانات.
لا يملك عاملو الخدمة إمكانية الوصول إلى نموذج العناصر في المستند (DOM). تسمح واجهة برمجة التطبيقات Offscreen للإضافة باستخدام واجهات برمجة تطبيقات DOM في مستند مخفي بدون مقاطعة تجربة المستخدم من خلال فتح نوافذ أو علامات تبويب جديدة.
من خلال ميزة "عزل البيانات من نطاقات أخرى"، يمكن لصفحة الويب استخدام ميزات فعّالة، مثل SharedArrayBuffer. يمكن للإضافة تفعيل ميزة حظر الوصول من نطاقات أخرى من خلال تحديد القيم المناسبة لمفتاحَي بيان "cross_origin_embedder_policy" و"cross_origin_opener_policy".
تعرَّف على كيفية تحديث إضافات Chrome وكيفية تتبُّع عملية توزيع تحديثات الإضافات.

مزيد من المواضيع