الوحدات المشتركة

الوحدات المشتركة هي مجموعات من الموارد التي لا يتم منحها أذونات ويمكن مشاركتها بين الإضافات. الاستخدامات الشائعة للوحدات المشتركة هي:

  • كواجهة برمجة تطبيقات. ويمكنك توزيع "وحدة" مشتركة يمكنها توفير HTML وJS وموارد أخرى إلى توفير واجهة برمجة تطبيقات يمكن تحديثها بشكل مستقل عن الإضافات التي تعتمد عليها.
  • كتحسين للتنزيل. تحتوي الوحدة المشتركة على موارد شائعة تستخدمها العديد من الإضافات. ويتم تنزيله مرة واحدة، عند تثبيت إضافة تابعة لأول مرة.

البيان

يتم استخدام "الوحدات المشتركة" من خلال حقلَي بيان: "export" و"import".

تصدير

يشير حقل التصدير إلى أنّ الإضافة هي وحدة مشتركة تصدِّر مواردها:

{
  "version": "1.0",
  "name": "My Shared Module",
  "export": {
    // Optional list of extension IDs explicitly allowed to
    // import this Shared Module's resources.  If no allowlist
    // is given, all extensions are allowed to import it.
    "allowlist": [
      "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
      "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
    ]
  }
  // Note: no permissions are allowed in Shared Modules
}

استيراد

تستخدم الإضافات والتطبيقات حقل استيراد للتصريح بأنها تعتمد على موارد من وحدات مشتركة معينة:

{
  "version": "1.0",
  "name": "My Importing Extension",
  ...
  "import": [
    {"id": "cccccccccccccccccccccccccccccccc"},
    {"id": "dddddddddddddddddddddddddddddddd"
     "minimum_version": "0.5" // optional
    },
  ]
}

الوصول إلى الموارد

يمكن الوصول إلى موارد الوحدات المشتركة من خلال مسار محجوز _modules/SHARED_MODULE_ID في الجذر. لإضافة الاستيراد. على سبيل المثال، لتضمين النص البرمجي foo.js من وحدة مشتركة مع المعرّف "cccccccccccccccccccc"، استخدم هذا المسار من جذر الإضافة:

<script src="_modules/cccccccccccccccccccccccccccccccc/foo.js">

إذا كانت إضافة الاستيراد تتضمّن رقم التعريف "aaaaaaaaaaaaaaaaaaaaaaaaaaaaa"، في هذه الحالة، عنوان URL الكامل للموارد في الوحدة المشتركة هي:

chrome-extension://aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/_modules/cccccccccccccccccccccccccccccccc/

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

التثبيت / إلغاء التثبيت

يتم تثبيت "وحدة مشتركة" تلقائيًا من "سوق Chrome الإلكتروني" عند الحاجة بواسطة إضافة تابعة، ويتم إلغاء تثبيتها تلقائيًا عند إلغاء تثبيت الإضافة الأخيرة التي تشير إليها. لتحميل إضافة تستخدم وحدة مشتركة، يجب نشر الوحدة المشتركة في يجب ألا يتم حظر "سوق Chrome الإلكتروني" والإضافة من استخدام "الوحدة المشتركة" من خلال القائمة المسموح بها.

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