扩展程序、主题和应用其实就是一组资源,用
manifest.json
文件,用于描述软件包的内容。此文件的格式为
总体稳定,但偶尔必须进行破坏性更改才能解决重要问题。
开发者应通过哪个版本的清单规范指定其软件包的目标
在清单中设置 manifest_version
键。
当前版本
开发者目前应指定 'manifest_version': 2
:
{
...,
"manifest_version": 2,
...
}
清单版本 1 在 Chrome 18 中已弃用,根据 。
Manifest 版本 1 支持时间表
2012 年 8 月
- 应用商店将禁止创建新的清单版本 1 扩展程序。
- 应用商店允许更新现有清单版本 1 扩展程序。
2013 年 3 月
- 应用商店将于 2013 年 3 月 4 日阻止对清单版本 1 扩展程序的更新。
2013 年 4 月
- Chrome 27 Beta 将停止打包清单版本 1 扩展程序(或停止为 开发)。
2013 年 6 月
- 应用商店将从墙、搜索结果和 类别页。
- 电子邮件通知将发送至应用店中仍在使用清单版本 1 扩展程序的所有开发者 提醒他们这些扩展程序将被取消发布,并提供更新说明。
2013 年 9 月
- 应用商店将取消发布所有清单版本 1 扩展程序。
- 最终通知电子邮件将发送给仍在网页版中使用清单版本 1 扩展程序的开发者 商店。
- Chrome 将继续加载并运行已安装的清单版本 1 扩展程序。
2014 年 1 月
- 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
API 都被弃用。使用 单数形式browser_action
和chrome.browserAction
。 - 移除了
browser_action
的icons
属性。使用default_icon
属性 或 browserAction.setIcon。 - 移除了
browser_action
的name
属性。使用default_title
属性 或 browserAction.setTitle。 - 移除了
browser_action
的popup
属性。使用default_popup
属性或 browserAction.setPopup。 - 不能再将
browser_action
的default_popup
属性指定为对象。它 必须是字符串。
- 清单中的
页面操作变更:
- 清单中的
page_actions
键和chrome.pageActions
API 都被弃用。使用 单数形式page_action
和chrome.pageAction
。 - 移除了
page_action
的icons
属性。使用default_icon
属性或 pageAction.setIcon。 - 移除了
page_action
的name
属性。使用default_title
属性或 pageAction.setTitle。 - 移除了
page_action
的popup
属性。使用default_popup
属性 或 pageAction.setPopup。 - 不能再将
page_action
的default_popup
属性指定为对象。它必须 为字符串。
- 清单中的
移除了
chrome.self
API。请改用chrome.extension
。chrome.extension.getTabContentses
(!!!) 和chrome.extension.getExtensionTabs
已不存在。使用 extension.getViews。Port.tab
已不存在。请改用 runtime.Port。