برنامههای افزودنی، تمها و برنامهها صرفاً مجموعهای از منابع هستند که با یک فایل manifest.json که محتویات بسته را توصیف میکند، پیچیده شدهاند. فرمت این فایل به طور کلی پایدار است، اما گاهی اوقات باید برای رفع مشکلات مهم تغییراتی ایجاد کرد. توسعهدهندگان باید با تنظیم کلید manifest_version در مانیفستهایشان، مشخص کنند که بسته آنها کدام نسخه از مشخصات مانیفست را هدف قرار میدهد.
نسخه فعلی
توسعه دهندگان در حال حاضر باید 'manifest_version': 2 :
{
...,
"manifest_version": 2,
...
}
نسخه 1 مانیفست در کروم 18 منسوخ شده است و پشتیبانی طبق برنامه زمانی زیر حذف خواهد شد.
برنامه پشتیبانی مانیفست نسخه 1
آگوست 2012
- فروشگاه وب ایجاد برنامههای افزودنی جدید مانیفست نسخه 1 را مسدود میکند.
- فروشگاه وب امکان بهروزرسانی برنامههای افزودنی نسخه ۱ مانیفست موجود را فراهم میکند.
مارس 2013
- فروشگاه وب بهروزرسانیهای برنامههای افزودنی نسخه ۱ مانیفست را در ۴ مارس ۲۰۱۳ مسدود میکند.
آوریل 2013
- Chrome 27 Beta بستهبندی برنامههای افزودنی نسخه ۱ مانیفست (یا بارگیری آنها برای توسعه) را متوقف میکند.
ژوئن 2013
- فروشگاه وب افزونههای مانیفست نسخه 1 را از صفحات دیوار، نتایج جستجو و دستهبندی حذف میکند.
- ایمیلهای اعلان برای همه برنامهنویسهایی که پسوندهای مانیفست نسخه 1 هنوز در فروشگاه هستند ارسال میشود و به آنها یادآوری میشود که این برنامههای افزودنی منتشر نمیشوند و دستورالعملهای بهروزرسانی ارائه میشوند.
سپتامبر 2013
- فروشگاه وب همه برنامههای افزودنی نسخه ۱ مانیفست را لغو میکند.
- ایمیلهای اخطار نهایی برای توسعهدهندگانی ارسال میشود که پسوندهای مانیفست نسخه 1 هنوز در فروشگاه وب هستند.
- Chrome به بارگیری و اجرای برنامه های افزودنی مانیفست نسخه 1 نصب شده ادامه می دهد.
ژانویه 2014
- Chrome بارگیری یا اجرای برنامههای افزودنی مانیفست نسخه ۱ را متوقف میکند.
بین نسخه 1 و 2 تغییر می کند
- یک خطمشی امنیتی محتوا روی
`script-src 'self'; object-src 'self';به طور پیش فرض این تأثیرات مختلفی بر توسعه دهندگان دارد که در مستنداتcontent_security_policyتوضیح داده شده است. - منابع یک بسته دیگر به طور پیش فرض برای وب سایت های خارجی (به عنوان
srcیک تصویر یا یک برچسبscript) در دسترس نیستند. اگر میخواهید یک وبسایت بتواند منبع موجود در بسته شما را بارگیری کند، باید بهصراحت آن را از طریق ویژگی مانیفستweb_accessible_resourcesفهرست کنید. این امر مخصوصاً برای برنامههای افزودنی که از طریق اسکریپتهای محتوای تزریقی، رابطی را در یک وبسایت ایجاد میکنند، مرتبط است. - ویژگی
background_pageبا یک ویژگیbackgroundکه شاملscriptsیا ویژگیpageاست جایگزین شده است. جزئیات در مستندات صفحات رویداد موجود است. تغییرات عملکرد مرورگر:
- کلید
browser_actionsدر مانیفست وchrome.browserActionsAPI از بین رفته است. به جای آنbrowser_actionوchrome.browserActionمفرد استفاده کنید. - ویژگی
iconsازbrowser_actionحذف شده است. به جای آن از ویژگیdefault_iconیا browserAction.setIcon استفاده کنید. - ویژگی
namebrowser_actionحذف شده است. به جای آن از ویژگیdefault_titleیا browserAction.setTitle استفاده کنید. - ویژگی
popupbrowser_actionحذف شده است. به جای آن از ویژگیdefault_popupیا browserAction.setPopup استفاده کنید. - ویژگی
default_popupbrowser_actionدیگر نمی تواند به عنوان یک شی مشخص شود. باید یک رشته باشد.
- کلید
تغییرات عملکرد صفحه:
- کلید
page_actionsدر مانیفست وchrome.pageActionsAPI حذف شدهاند. به جای آنpage_actionوchrome.pageActionمفرد استفاده کنید. - ویژگی
iconspage_actionحذف شده است. به جای آن از ویژگیdefault_iconیا pageAction.setIcon استفاده کنید. - ویژگی
namepage_actionحذف شده است. به جای آن از ویژگیdefault_titleیا pageAction.setTitle استفاده کنید. - ویژگی
popuppage_actionحذف شده است. به جای آن از ویژگیdefault_popupیا pageAction.setPopup استفاده کنید. - ویژگی
default_popuppage_actionدیگر نمی تواند به عنوان یک شی مشخص شود. باید یک رشته باشد.
- کلید
chrome.selfAPI حذف شده است. به جای آنchrome.extensionاستفاده کنید.chrome.extension.getTabContentses(!!!) وchrome.extension.getExtensionTabsاز بین رفته اند. به جای آن از extension.getViews استفاده کنید.Port.tabاز بین رفته است. به جای آن از Runtime.Port استفاده کنید.