الوصف
تتضمّن واجهة برمجة التطبيقات chrome.extension
أدوات مساعدة يمكن استخدامها في أي صفحة إضافة. يتضمّن هذا النظام إمكانية تبادل الرسائل بين إضافة ونصوص المحتوى الخاصة بها أو بين الإضافات، كما هو موضّح بالتفصيل في تمرير الرسائل.
الأنواع
ViewType
نوع عرض الإضافة
Enum
"tab"
"popup"
الخصائص
inIncognitoContext
تكون القيمة "صحيح" بالنسبة إلى نصوص المحتوى البرمجية التي يتم تشغيلها داخل علامات التبويب في وضع التصفّح المتخفي، وبالنسبة إلى صفحات الإضافة التي يتم تشغيلها داخل عملية التصفّح المتخفي. لا ينطبق الخيار الأخير إلا على الإضافات التي تتضمّن incognito_behavior بقيمة "split".
النوع
قيمة منطقية
lastError
يُرجى استخدام runtime.lastError
.
يتم ضبط هذا الحقل لمدة بقاء دالة رد الاتصال إذا أدّت واجهة برمجة تطبيقات إضافة غير متزامنة إلى حدوث خطأ. إذا لم يحدث أي خطأ، ستكون قيمة lastError هي undefined
.
النوع
عنصر
الخصائص
- رسالة
سلسلة
وصف للخطأ الذي حدث.
الطُرق
getBackgroundPage()
chrome.extension.getBackgroundPage(): Window | undefined
تعرض هذه الدالة عنصر JavaScript "window" لصفحة الخلفية التي يتم تشغيلها داخل الإضافة الحالية. تعرِض قيمة فارغة إذا لم يكن للإضافة صفحة خلفية.
المرتجعات
-
نافذة | غير محدّد
getExtensionTabs()
chrome.extension.getExtensionTabs(
windowId?: number,
): Window[]
يُرجى استخدام extension.getViews
{type: "tab"}
.
تعرض هذه الدالة صفيفًا من عناصر JavaScript "window" لكل علامة تبويب تعمل داخل الإضافة الحالية. في حال تحديد windowId
، تعرض هذه السمة كائنات "النافذة" فقط لعلامات التبويب المرفقة بالنافذة المحدّدة.
المعلمات
- windowId
number اختياري
المرتجعات
-
Window[]
مصفوفة تتضمّن عناصر نافذة المتصفّح العامة
getURL()
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()
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
chrome.extension.onRequest.addListener(
callback: function,
)
يُرجى استخدام runtime.onMessage
.
يتم تشغيل هذا الحدث عند إرسال طلب من عملية إضافة أو نص برمجي للمحتوى.
المعلمات
- callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
- طلب
أي واحد
- المُرسِل
- sendResponse
دالة
تظهر المَعلمة
sendResponse
على النحو التالي:() => void
-
onRequestExternal
chrome.extension.onRequestExternal.addListener(
callback: function,
)
يُرجى استخدام runtime.onMessageExternal
.
يتم تنشيط هذا الحدث عند إرسال طلب من إضافة أخرى.
المعلمات
- callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(request: any, sender: runtime.MessageSender, sendResponse: function) => void
- طلب
أي واحد
- المُرسِل
- sendResponse
دالة
تظهر المَعلمة
sendResponse
على النحو التالي:() => void
-