الإضافات والمظاهر والتطبيقات هي حِزم من الموارد يتم تضمينها في ملف
manifest.json
يصف محتوى الحزمة. تنسيق هذا الملف ثابت بشكل عام، ولكن في بعض الأحيان يجب إجراء تغييرات قد تؤدي إلى أعطال لمعالجة المشاكل المهمة.
على المطوّرين تحديد إصدار ملف البيان الذي يضبط أهداف الحزمة من خلال ضبط مفتاح manifest_version
في ملفات البيان.
الإصدار الحالي
على المطوّرين حاليًا تحديد 'manifest_version': 2
:
{
...,
"manifest_version": 2,
...
}
تم إيقاف الإصدار 1 من ملف البيان في الإصدار 18 من Chrome، وسيتم إيقاف التوافق على أساس الجدول الزمني التالي.
الجدول الزمني لدعم الإصدار 1 من ملف البيان
آب (أغسطس) 2012
- سيحظر السوق الإلكتروني إنشاء الإضافات الجديدة للإصدار 1 من ملف البيان.
- سيسمح السوق الإلكتروني بإجراء تعديلات على الإضافات الحالية للإصدار 1 من ملف البيان.
مارس 2013
- في 4 آذار (مارس) 2013، سيحظر السوق الإلكتروني إجراء تحديثات على إضافات بيان الإصدار 1.
نيسان (أبريل) 2013
- سيتوقف الإصدار التجريبي من Chrome 27 عن تجميع إضافات الإصدار 1 من البيان (أو تحميلها لأغراض التطوير).
حزيران (يونيو) 2013
- سيزيل السوق الإلكتروني إضافات الإصدار 1 من البيان من الجدار ونتائج البحث وصفحات الفئات.
- سيتم إرسال إشعارات بالبريد الإلكتروني إلى جميع المطوّرين الذين لديهم إضافات للإصدار 1 من البيان لا تزال في المتجر لتذكيرهم بأنّه سيتم إلغاء نشر هذه الإضافات وستوفّر تعليمات للتحديث.
أيلول (سبتمبر) 2013
- سيلغي "السوق الإلكتروني" نشر جميع إضافات الإصدار 1 من البيان.
- سيتم إرسال الإشعارات النهائية عبر البريد الإلكتروني إلى المطوّرين الذين لديهم إضافات الإصدار 1 من البيان في "السوق الإلكتروني".
- سيستمر Chrome في تحميل وتشغيل الإضافات المثبتة بالإصدار 1 من بيان التطبيق.
كانون الثاني (يناير) 2014
- سيتوقف Chrome عن تحميل أو تشغيل إضافات الإصدار 1 من البيان.
التغييرات بين الإصدارين 1 و2
- يتم تلقائيًا ضبط سياسة أمان المحتوى على "
`script-src 'self'; object-src 'self';
". ويحدث ذلك مجموعة متنوعة من التأثيرات على المطوّرين، وقد تم توضيحها باستفاضة في مستنداتcontent_security_policy
. - لم تعُد موارد الحزمة متوفّرة تلقائيًا للمواقع الإلكترونية الخارجية (مثل
src
لصورة أو علامةscript
). إذا أردت أن يتمكّن موقع إلكتروني من تحميل أحد الموارد المضمّنة في حزمتك، عليك إضافته بشكل صريح إلى القائمة المسموح بها عبر سمة البيانweb_accessible_resources
. ويرتبط هذا على وجه الخصوص بالإضافات التي تنشئ واجهة على موقع إلكتروني من خلال النصوص البرمجية للمحتوى التي يتم إدخالها. - تم استبدال السمة
background_page
بالسمةbackground
التي تتضمّن إمّا السمةscripts
أوpage
. تتوفر التفاصيل في وثائق صفحات الأحداث. تغييرات إجراءات المتصفّح:
- تم إيقاف مفتاح
browser_actions
في البيان وواجهة برمجة التطبيقاتchrome.browserActions
. يمكنك استخدام المفردَينbrowser_action
وchrome.browserAction
بدلاً من ذلك. - تمت إزالة السمة
icons
منbrowser_action
. استخدِم السمةdefault_icon
أو browserAction.setIcon بدلاً منها. - تمت إزالة السمة
name
منbrowser_action
. استخدِم السمةdefault_title
أو browserAction.setTitle بدلاً منها. - تمت إزالة السمة
popup
منbrowser_action
. استخدِم السمةdefault_popup
أو browserAction.setPopup بدلاً منها. - لم يعد من الممكن تحديد السمة
default_popup
لـbrowser_action
ككائن. ينبغي أن تكون سلسلة.
- تم إيقاف مفتاح
تغييرات إجراء الصفحة:
- تم إيقاف مفتاح
page_actions
في البيان وواجهة برمجة التطبيقاتchrome.pageActions
. يمكنك استخدام المفردَينpage_action
وchrome.pageAction
بدلاً من ذلك. - تمت إزالة السمة
icons
منpage_action
. استخدِم السمةdefault_icon
أو pageAction.setIcon بدلاً من ذلك. - تمت إزالة السمة
name
منpage_action
. استخدِم السمةdefault_title
أو pageAction.setTitle بدلاً من ذلك. - تمت إزالة السمة
popup
منpage_action
. استخدِم السمةdefault_popup
أو pageAction.setPopup بدلاً من ذلك. - لم يعد من الممكن تحديد السمة
default_popup
لـpage_action
ككائن. ينبغي أن يكون سلسلة.
- تم إيقاف مفتاح
تمت إزالة واجهة برمجة التطبيقات
chrome.self
API. يمكنك استخدامchrome.extension
بدلاً من ذلك.لم يعُد
chrome.extension.getTabContentses
(!!!) وchrome.extension.getExtensionTabs
. استخدِم extension.getViews بدلاً من ذلك.لم يعُد
Port.tab
متوفرًا. استخدِم runtime.Port بدلاً من ذلك.