أساسيات مشغّل خدمات الإضافات

يتم تثبيت مشغّلي خدمات الإضافات وتعديلها بشكل مختلف عن مشغّلي خدمات الويب. توضّح هذه الصفحة تلك الاختلافات.

تسجيل ملفات تشغيل الخدمات

لتسجيل عامل خدمة إضافة، حدِّده في حقل "background" من ملف manifest.json. استخدِم المفتاح "service_worker" الذي يحدِّد ملف JavaScript واحدًا. تسجِّل مهام الخدمة في صفحات الويب أو تطبيقات الويب مهام الخدمة من خلال رصد الميزة أولاً serviceWorker في navigator ثم استدعاء register() داخل ميزة رصد الميزة. ولا يعمل هذا الإجراء مع الإضافات.

{
  "name": "Awesome Test Extension",
  ...
  "background": {
    "service_worker": "service-worker.js"
  },
  ...
}

استيراد النصوص البرمجية

هناك طريقتان لاستيراد النصوص البرمجية إلى عامل خدمة: عبارة import وطريقة importScripts(). يُرجى العِلم أنّ import() غير متاحة، وهي تُعرف غالبًا باسم الاستيراد الديناميكي.

لاستخدام عبارة import، أضِف الحقل "type" إلى ملف البيان وحدِّد "module". على سبيل المثال:

  "background": {
    "service_worker": "service-worker.js",
    "type": "module"
  }

بعد ذلك، استخدِم import كالمعتاد. يُرجى العلم أنّ التأكيدات على الاستيراد غير متاحة.

import { tldLocales } from './locales.js';

استخدِم importScripts() كما تفعل في عامل خدمة الويب.

importScripts('locales.js');

تعديل

لتحديث الخدمة العاملة، عليك نشر إصدار جديد من إضافتك في "سوق Chrome الإلكتروني". ولا يمكنك التحايل على ذلك من خلال تحميل الإضافة من خادم. لأسباب تتعلق بالأمان، لا يتيح Manifest V3 استخدام الرموز البرمجية المستضافة عن بُعد. يجب أن يكون عامل الخدمة جزءًا من حزمة الإضافة.