chrome.extension

الوصف

تتضمّن واجهة برمجة التطبيقات chrome.extension أدوات مساعدة يمكن استخدامها في أي صفحة إضافة. يتضمّن هذا النظام إمكانية تبادل الرسائل بين إضافة ونصوص المحتوى الخاصة بها أو بين الإضافات، كما هو موضّح بالتفصيل في تمرير الرسائل.

الأنواع

ViewType

Chrome 44 والإصدارات الأحدث

نوع عرض الإضافة

Enum

"tab"

"popup"

الخصائص

inIncognitoContext

تكون القيمة "صحيح" بالنسبة إلى نصوص المحتوى البرمجية التي يتم تشغيلها داخل علامات التبويب في وضع التصفّح المتخفي، وبالنسبة إلى صفحات الإضافة التي يتم تشغيلها داخل عملية التصفّح المتخفي. لا ينطبق الخيار الأخير إلا على الإضافات التي تتضمّن incognito_behavior بقيمة "split".

النوع

قيمة منطقية

lastError

≤ الإصدار 2 من Manifest تم إيقافه نهائيًا منذ الإصدار 58 من Chrome

يُرجى استخدام runtime.lastError.

يتم ضبط هذا الحقل لمدة بقاء دالة رد الاتصال إذا أدّت واجهة برمجة تطبيقات إضافة غير متزامنة إلى حدوث خطأ. إذا لم يحدث أي خطأ، ستكون قيمة lastError هي undefined.

النوع

عنصر

الخصائص

  • رسالة

    سلسلة

    وصف للخطأ الذي حدث.

الطُرق

getBackgroundPage()

في المقدّمة فقط
chrome.extension.getBackgroundPage(): Window | undefined

تعرض هذه الدالة عنصر JavaScript "window" لصفحة الخلفية التي يتم تشغيلها داخل الإضافة الحالية. تعرِض قيمة فارغة إذا لم يكن للإضافة صفحة خلفية.

المرتجعات

  • نافذة | غير محدّد

getExtensionTabs()

≤ الإصدار 2 من ملفات البيان في المقدّمة فقط تم إيقافها نهائيًا
chrome.extension.getExtensionTabs(
  windowId?: number,
)
: Window[]

يُرجى استخدام extension.getViews {type: "tab"}.

تعرض هذه الدالة صفيفًا من عناصر JavaScript "window" لكل علامة تبويب تعمل داخل الإضافة الحالية. في حال تحديد windowId، تعرض هذه السمة كائنات "النافذة" فقط لعلامات التبويب المرفقة بالنافذة المحدّدة.

المعلمات

  • windowId

    number اختياري

المرتجعات

  • Window[]

    مصفوفة تتضمّن عناصر نافذة المتصفّح العامة

getURL()

≤ الإصدار 2 من Manifest تم إيقافه نهائيًا منذ الإصدار 58 من Chrome
chrome.extension.getURL(
  path: string,
)
: string

يُرجى استخدام runtime.getURL.

تحويل مسار نسبي ضمن دليل تثبيت إضافة إلى عنوان URL مؤهّل بالكامل

المعلمات

  • المسار

    سلسلة

    مسار إلى أحد الموارد ضمن إضافة، ويتم التعبير عنه بالنسبة إلى دليل التثبيت.

المرتجعات

  • سلسلة

    تمثّل هذه السمة عنوان URL المؤهّل بالكامل للمرجع.

getViews()

في المقدّمة فقط
chrome.extension.getViews(
  fetchProperties?: object,
)
: Window[]

تعرض هذه الطريقة صفيفًا من عناصر JavaScript "window" لكل صفحة يتم تشغيلها داخل الإضافة الحالية.

المعلمات

  • fetchProperties

    العنصر اختياري

    • tabId

      number اختياري

      الإصدار 54 من Chrome أو إصدار أحدث

      البحث عن طريقة عرض حسب معرّف علامة تبويب في حال حذف هذا الحقل، سيتم عرض جميع طرق العرض.

    • النوع

      ViewType اختياري

      نوع العرض المطلوب الحصول عليه. في حال عدم تحديدها، تعرض جميع طرق العرض (بما في ذلك الصفحات وعلامات التبويب في الخلفية).

    • windowId

      number اختياري

      النافذة التي سيتم حصر البحث فيها في حال عدم تحديدها، يتم عرض جميع طرق العرض.

المرتجعات

  • Window[]

    مصفوفة تتضمّن عناصر عامة

isAllowedFileSchemeAccess()

الوعد
chrome.extension.isAllowedFileSchemeAccess(
  callback?: function,
)
: Promise<boolean>

تعرض هذه السمة حالة إذن الوصول إلى مخطط "file://" الممنوح للإضافة. يتوافق هذا الإعداد مع إعداد "السماح بالوصول إلى عناوين URL للملفات" الذي يتحكّم فيه المستخدم لكل إضافة ويمكن الوصول إليه من خلال الصفحة chrome://extensions.

المعلمات

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      قيمة منطقية

      تكون القيمة "صحيح" إذا كان بإمكان الإضافة الوصول إلى المخطط "file://"، وتكون القيمة "خطأ" في الحالات الأخرى.

المرتجعات

  • Promise<boolean>

    الإصدار 99 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

isAllowedIncognitoAccess()

الوعد
chrome.extension.isAllowedIncognitoAccess(
  callback?: function,
)
: Promise<boolean>

تعرض هذه السمة حالة إذن الوصول إلى "وضع التصفّح المتخفي" الممنوح للإضافة. يتوافق ذلك مع إعداد "مسموح به في وضع التصفُّح المتخفي" الذي يتحكّم فيه المستخدم لكل إضافة ويمكن الوصول إليه من خلال صفحة chrome://extensions.

المعلمات

  • callback

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (isAllowedAccess: boolean) => void

    • isAllowedAccess

      قيمة منطقية

      تكون القيمة "صحيح" إذا كان للإضافة إذن الوصول إلى وضع التصفّح المتخفي، و"خطأ" في الحالات الأخرى.

المرتجعات

  • Promise<boolean>

    الإصدار 99 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

sendRequest()

Promise &leq; MV2 متوقّف نهائيًا
chrome.extension.sendRequest(
  extensionId?: string,
  request: any,
  callback?: function,
)
: Promise<any>

يُرجى استخدام runtime.sendMessage.

يرسل طلبًا واحدًا إلى المستمعين الآخرين داخل الإضافة. يشبه هذا الحقل runtime.connect، ولكنّه يرسل طلبًا واحدًا فقط مع ردّ اختياري. يتم تنشيط الحدث extension.onRequest في كل صفحة من صفحات الإضافة.

المعلمات

  • extensionId

    سلسلة اختيارية

    معرّف الإضافة التي تريد الاتصال بها. في حال حذفه، يكون الإعداد التلقائي هو الإضافة الخاصة بك.

  • طلب

    أي واحد

  • callback

    الدالة اختيارية

    الإصدار 99 من Chrome والإصدارات الأحدث

    تظهر المَعلمة callback على النحو التالي:

    (response: any) => void

    • رد

      أي واحد

      عنصر استجابة JSON الذي يرسله معالج الطلب. في حال حدوث خطأ أثناء الاتصال بالإضافة، سيتم استدعاء دالة الرجوع بدون وسيطات وسيتم ضبط runtime.lastError على رسالة الخطأ.

المرتجعات

  • Promise<any>

    الإصدار 99 من Chrome والإصدارات الأحدث

    لا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.

setUpdateUrlData()

chrome.extension.setUpdateUrlData(
  data: string,
)
: void

تضبط هذه السياسة قيمة مَعلمة ap CGI المستخدَمة في عنوان URL الخاص بتحديث الإضافة. يتم تجاهل هذه القيمة للإضافات المستضافة في "معرض إضافات Chrome".

المعلمات

  • البيانات

    سلسلة

الفعاليات

onRequest

&leq; MV2 متوقّف نهائيًا
chrome.extension.onRequest.addListener(
  callback: function,
)

يُرجى استخدام runtime.onMessage.

يتم تشغيل هذا الحدث عند إرسال طلب من عملية إضافة أو نص برمجي للمحتوى.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • طلب

      أي واحد

    • المُرسِل
    • sendResponse

      دالة

      تظهر المَعلمة sendResponse على النحو التالي:

      () => void

onRequestExternal

&leq; MV2 متوقّف نهائيًا
chrome.extension.onRequestExternal.addListener(
  callback: function,
)

يُرجى استخدام runtime.onMessageExternal.

يتم تنشيط هذا الحدث عند إرسال طلب من إضافة أخرى.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (request: any, sender: runtime.MessageSender, sendResponse: function) => void

    • طلب

      أي واحد

    • المُرسِل
    • sendResponse

      دالة

      تظهر المَعلمة sendResponse على النحو التالي:

      () => void