擴充功能、主題和應用程式就是資源組合,並包裝在描述套件內容的 manifest.json
檔案。這個檔案的格式通常穩定,但偶爾必須進行破壞性變更才能解決重大問題。開發人員應在資訊清單中設定 manifest_version
鍵,以指定套件目標版本的資訊清單規格。
目前版本
開發人員目前應指定 'manifest_version': 2
:
{
...,
"manifest_version": 2,
...
}
資訊清單第 1 版已在 Chrome 18 版中淘汰,我們將按照下列時間表逐步淘汰支援功能。
資訊清單第 1 版支援時間表
2012 年 8 月
- 線上應用程式商店將禁止建立新的資訊清單第 1 版擴充功能。
- 線上應用程式商店會允許更新現有的資訊清單第 1 版擴充功能。
2013 年 3 月
- 線上應用程式商店將於 2013 年 3 月 4 日禁止更新資訊清單第 1 版擴充功能。
2013 年 4 月
- Chrome 27 Beta 版將停止封裝資訊清單第 1 版擴充功能 (或載入這些擴充功能以供開發)。
2013 年 6 月
- 線上應用程式商店會從牆、搜尋結果和類別頁面移除資訊清單第 1 版擴充功能。
- 我們會傳送電子郵件給所有仍在商店資訊版本 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
屬性已替換為包含scripts
或page
屬性的background
屬性。詳情請參閱活動頁面說明文件。瀏覽器動作變更:
- 資訊清單中的
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。