請經常查看這個頁面,瞭解 Chrome 擴充功能、擴充功能說明文件或相關政策的異動。如要查看其他通知,請前往 Chrome 擴充功能郵寄清單。Chrome 時間表列出穩定版和 Beta 版的發布日期。
Chrome 140:新的 sidePanel.getLayout() API
發布日期:
從 Chrome 140 開始,請使用新的 sidePanel.getLayout() API,判斷側邊面板位於螢幕左側或右側。如果您支援 RTL 語言,而新安裝的 Chrome 預設語言不同,這項功能就特別實用。
新指南:擴充功能更新生命週期
發布日期:
我們發布了新指南,說明 Chrome 如何更新擴充功能。
Chrome 139:在 Chrome 品牌建構版本中移除 --extensions-on-chrome-urls 和 --disable-extensions-except 旗標
發布日期:
自 Chrome 139 起,官方 Chrome 品牌建構版本將移除 --extensions-on-chrome-urls 和 --disable-extensions-except 命令列標記。詳情請參閱郵寄清單。
Chrome 138:新分頁頁面異動
發布日期:
自 Chrome 138 版起,我們將更新新分頁 UI,加入新的頁尾。 詳情請參閱郵寄清單。
網誌文章:請在書籤異動前更新擴充功能
發布日期:
我們即將對書籤同步功能進行一些變更,可能會影響您的擴充功能。詳情請參閱這篇網誌文章。
網誌文章:2025 年 6 月的 Chrome 擴充功能最新動態
發布日期:
我們最近很忙,除了 Google I/O 大會,Chrome 和 Chrome 線上應用程式商店也推出了多項新功能。請參閱這篇文章,瞭解 2025 年 6 月 Chrome 擴充功能最新動態!
影片:在瀏覽器中玩打地鼠遊戲 - 真的可以嗎?
發布時間:
歡迎觀看最新影片,瞭解如何在瀏覽器中建構遊戲。
影片:說明 Chrome 的新擴充功能選單
發布日期:
如要瞭解實驗性的新擴充功能選單,請觀看最新影片「Chrome's new extensions menu explained 」。
影片:擴充功能真好用!
發布日期:
歡迎觀看「Extensions are Neat」第 1 集,瞭解如何開始開發擴充功能,並觀看第 2 集,瞭解 Chrome 自訂功能有多靈活!
Chrome 135:新增 userScripts.execute() API
發布日期:
自 Chrome 135 版起,chrome.userScripts API 提供新的 userScripts.execute() 方法。您可以使用這個方法在任意時間插入使用者指令碼一次,不必永久註冊。
Chrome 132:在開發人員工具中查看及編輯擴充功能儲存空間
發布日期:
從 Chrome 132 開始,您可以在開發人員工具中查看及編輯使用 chrome.storage API 儲存的資料。詳情請參閱開發人員工具說明文件中的「查看及編輯擴充功能儲存空間」頁面。
網誌文章:全新擴充功能選單
發布日期:
在 2024 年 Google I/O 大會上,我們分享了擴充功能選單的初步設計,讓使用者進一步控管擴充功能可存取的網站。我們即將開始測試這些變更,首先會對 Canary 的一小部分使用者進行測試,並希望日後能更廣泛地推出這些變更。
我們也推出了 chrome.permissions.addHostAccessRequest() API。
詳情請參閱我們的網誌文章。
Chrome 132:分頁 API 中的新凍結屬性
發布日期:
自 Chrome 132 版起,Tabs API 中的 frozen 屬性會指出分頁是否已遭瀏覽器凍結。傳送至凍結分頁的訊息會排入佇列,並在分頁解除凍結時處理。
Chrome 擴充功能中的 Prompt API
發布日期:
擴充功能適用的提示 API 現已開放來源試用,您可以在瀏覽器中建構使用 Gemini Nano 的 Chrome 擴充功能。Gemini Nano 是我們最高效的語言模型。
加入 Prompt API 來源試用 (Chrome 131 至 136 版),並分享您的意見。你的意見會直接影響我們建構及導入這項 API 和所有內建 AI API 的後續版本。
網誌文章:2024 年 10 月 Chrome 擴充功能最新動態
發布日期:
又到了 Chrome 擴充功能最新動態的彙整時間。我們將介紹 AI 整合、新 API、活動和影片的重大更新。詳情請參閱 Chrome 擴充功能 10 月最新動態!
參加內建 AI 挑戰
發布日期:
Chrome 推出內建 AI 挑戰賽,邀請您使用 Chrome 整合式 AI 模型和 API,打造創新的網頁應用程式和 Chrome 擴充功能,贏取總價值 $65,000 美元的獎項。
如要註冊及瞭解詳情,請前往內建 AI 挑戰賽網站。我們非常期待看到你運用 AI 打造的網頁!
Chrome 130:action.onUserSettingsChanged
發布日期:
從 Chrome 130 開始,您可以使用 action.onUserSettingsChanged 事件。這是根據 WebExtensions 社群群組的提案。感謝 Microsoft 對 Chromium 的貢獻。
Chrome 130:StorageArea.getKeys()
發布日期:
從 Chrome 130 開始,getKeys() 方法會用於 chrome.storage API 使用的 StorageArea 介面。這是根據 WebExtensions 社群群組的提案所採取的行動。
Chrome 128:宣告式網路要求中的回應標頭比對
發布日期:
自 Chrome 128 版起,聲明式網路請求 API 將支援比對回應標頭。這是常見要求,特別是為了比對 Content-Type 標頭,因此我們與 WebExtensions 社群團體共同設計了合適的 API。
我們已更新 API 參考資料,加入新的 responseHeaders 和 excludedResponseHeaders 欄位。您可以使用這些標頭檢查特定標頭是否存在,以及標頭的值。
本次更新在說明文件中新增了規則評估部分,說明規則的相符情形。特別是標頭比對,規則只能在收到回應標頭後執行,因此會比其他規則晚套用。這表示要求在遭到封鎖或重新導向前,已送達伺服器。
影片:什麼是內容指令碼?
發布日期:
瞭解 Chrome 擴充功能的內容指令碼,包括如何註冊要在特定網頁上執行的 CSS 和 JavaScript。觀看完整影片。
重要政策更新
發布日期:
Chrome 線上應用程式商店團隊已在開發人員計畫政策頁面發布一系列更新,旨在鼓勵開發高品質產品、防範欺騙行為,並確保使用者在知情的情況下同意。Chrome 線上應用程式商店政策管理員 Rebecca Soares 在「Chrome 擴充功能:重要政策更新」這篇網誌文章中,彙整了所有更新內容。
網誌文章:2024 年 7 月 Chrome 擴充功能最新動態
發布日期:
過去三個月,我們推出了多項重大更新和新功能,包括開始淘汰資訊清單 V2。歡迎參閱 7 月版的 Chrome 擴充功能最新動態,瞭解最新消息!
影片:什麼是遠端代管程式碼?
發布日期:
Chrome 擴充功能團隊的 Patrick 說明 Chrome 擴充功能中的遠端代管程式碼 (RHC) 概念。瞭解為何系統不再允許 RHC、如何偵測 RHC,以及擴充功能需要更新時該怎麼做。觀看完整影片。
Chrome 127:新增 action.openPopup API
發布日期:
Chrome 127 版起,所有擴充功能都能使用 action.openPopup API。先前,這項功能僅適用於 Canary 或依政策安裝的擴充功能。
影片:信任與安全團隊訪談
發布日期:
Chrome 擴充功能開發人員關係團隊與 Chrome 線上應用程式商店審查團隊進行訪談,並提出您的問題。觀看完整影片。
網誌文章:Manifest V2 淘汰階段即將開始
發布日期:
自 6 月 3 日起,如果使用者在 Chrome Beta 版、開發人員版和 Canary 版中安裝了 Manifest V2 擴充功能,當他們前往擴充功能管理頁面 (chrome://extensions) 時,部分使用者會看到警告橫幅,通知他們系統即將停止支援部分 (Manifest V2) 擴充功能。詳情請參閱官方公告
側邊面板使用者介面更新
發布日期:
我們最近對側邊面板使用者介面進行了一些變更,包括新增固定圖示,以及移除全域側邊面板圖示。詳情請參閱這篇 PSA,以及我們更新的說明文件和範例。
網誌文章:2024 Google I/O 大會的 Chrome 擴充功能
發布日期:
Google I/O 大會已圓滿落幕,我們也介紹了所有令人期待的擴充功能更新!歡迎前往 YouTube 觀看完整影片,並閱讀這篇網誌文章,瞭解部分重點內容。
略過符合資格的宣告式網路要求變更審查
發布日期:
現在使用 Declarative Net Request API 時,Chrome 線上應用程式商店可略過符合資格變更的審查程序。如要進一步瞭解資格條件和如何加入,請參閱 Chrome 線上應用程式商店說明文件。
Chrome 線上應用程式商店 API 中提供的 deployPercentage
發布日期:
我們最近更新了 Chrome 線上應用程式商店 API 說明文件,加入 deployPercentage 的相關資訊。您可以使用這項功能,指派部分推出部署作業的百分比。瞭解「deployPercentage」。
Chrome 126:擴充功能的來源試用
發布日期:
Chrome 126 推出新的 manifest.json 欄位 - trial_tokens,讓您在所有擴充功能介面中選擇加入來源試用和淘汰試用。詳情請參閱指南。
網誌文章:Chrome 擴充功能最新動態 - 2024 年 4 月
發布日期:
我們發布了新版的「Chrome 擴充功能最新動態」。這篇文章討論了擴充功能團隊過去幾個月的工作內容。包括:Chrome 線上應用程式商店中的版本回溯、更完善的 Firebase Auth 支援,以及更多 API 發布和更新。
在 Chrome 線上應用程式商店開發人員資訊主頁中回溯版本
發布日期:
將擴充功能復原至 Chrome 線上應用程式商店中先前發布的版本,無需額外審查!詳情請參閱這篇網誌文章和說明文件。
Chrome 124:進階 documentScan API
發布日期:
ChromeOS 現在提供進階 documentScan API,可從連接的文件掃描器探索及擷取圖片。
Chrome 124:Service Worker 支援 WebGPU
發布日期:
自 Chrome 124 起,服務工作人員支援 WebGPU。如要快速入門,請查看 WebGPU 擴充功能範例。
Chrome 123:Events API 支援依 CIDR 區塊篩選
發布日期:
Events API 現在支援依無類別跨網域路由 (CIDR) 區塊篩選。CIDR 區塊是一組 IP 位址,這些位址共用網路前置碼和相同位元數。先前,開發人員如要篩選多個 IP 位址,必須為封鎖範圍內的每個位址設定篩選規則。現在,當擴充功能呼叫
addListener() 時,傳入的規則表示只有在網址的主機部分是 IP 位址,且包含在陣列中指定的任一 CIDR 區塊時,才會呼叫事件處理常式。
Chrome 線上應用程式商店:更新擴充功能名稱長度規定
發布日期:
Chrome 線上應用程式商店現在對 manifest.json 中的擴充功能"name"欄位設有 75 個字元的通用限制。先前英文的字元數上限為 45 個,其他語言版本的「"name"」欄位則沒有限制。
這項措施原本是為了因應文化和語言差異,因為這些差異可能無法以相同數量的字元呈現。遺憾的是,少數開發人員濫用這項功能,在商店中發布垃圾內容。因此,我們將推出新的通用限制,將字元數上限提高至 75 個字元。這項限制涵蓋目前商店中的幾乎所有擴充功能,因此這項異動可能不會對您造成影響,您無須採取任何行動。如果您嘗試上傳名稱長度超過上限的擴充功能,商店會封鎖上傳作業。
網誌文章:eyeo 測試暫停服務工作人員的歷程
發布日期:
在 eyeo 擴充功能引擎團隊的這篇文章中,我們探討了測試擴充功能服務工作人員的問題。在 Manifest V2 中,擴充功能位於背景網頁,在整個擴充功能生命週期中都會保持喚醒狀態。資訊清單 V3 改用 Service Worker,而 Service Worker 的設計宗旨是節省資源,因此會在不需要時關閉。這會帶來某些測試挑戰。這篇貼文說明 eyeo 如何解決這些難題。
Chrome 123:裝置休眠時鬧鐘仍會響起
發布日期:
使用 chrome.alarms API 設定的鬧鐘不會再因裝置進入休眠狀態而延遲。裝置喚醒後,無論錯過多少鬧鐘,都會響一次。舉例來說,假設鬧鐘設定為每小時響一次,而裝置在凌晨 12:55 到凌晨 2:05 處於休眠狀態,則只有凌晨 2:00 的鬧鐘會觸發 onAlarm 事件。系統會盡量在凌晨 2 點發出通知,如果裝置處於休眠狀態,則會在喚醒時立即發出通知。
這項變更可讓 Chrome 遵循 Web Extensions Community Group 達成的共識。
網誌文章:擴充功能訊息埠的 bfcache 行為異動
發布日期:
往返快取 (bfcache) 是一種瀏覽器最佳化功能,能讓使用者迅速往返網頁,從 Chrome 123 版開始,如果含有開啟擴充功能通訊埠的網頁儲存在 bfcache 中,系統會關閉訊息管道,因此不會將任何訊息傳送至該網頁。因此,擴充功能指令碼應監聽 onDisconnect 等生命週期事件,並在網頁從 BFCache 還原時設定新連線。
如需更多資訊和範例程式碼,請參閱「Changes to BFCache behavior with extension message ports」。
Chrome 122:非同步擴充功能 API 支援 Promise
發布日期:
我們已完成所有非同步擴充功能 API 方法的 Promise 支援實作作業。這麼做是為了改善處理非同步作業的人體工學,進而提升 API 方法的現代化程度。部分方法 (例如 desktopCapture.chooseDesktopMedia()) 仍只支援回呼,因為目前的介面不相容於 Promise。為顧及回溯相容性,回呼仍可使用。如果發現 Promise 失敗,請回報錯誤。
即時通訊的新指引
發布日期:
我們剛發布擴充功能的即時選項指南,即時更新功能可提供從伺服器直接到擴充功能安裝位置的即時通訊路徑。此外,我們也提供使用 chrome.gcm 和 Web Push 的新指引。
新指南和範例:測試服務工作人員終止作業
發布日期:
我們剛發布這份指南,說明如何使用 Puppeteer 測試 Service Worker 終止作業。隨附的範例會以 Puppeteer 和 Selenium 說明這項功能。
更新原生訊息的範例
發布日期:
我們剛發布更新版原生訊息範例。這個 API 可讓擴充功能啟動其他應用程式並與之通訊。感謝 GitHub 貢獻者 Shubham-Rasal 的努力。
Chrome 121:tabs.Tab 的新 lastAccessed 屬性
發布日期:
tabs.Tab 物件新增了名為 lastAccessed 的屬性。這項屬性表示上次啟用分頁的時間。傳回值是以毫秒為單位,自 Epoch 時間起算。
Chrome 121:現在會針對不支援的「背景」鍵發出警告
發布日期:
從 Manifest V2 變更為 Manifest V3 時,"background" 資訊清單金鑰的子項已變更,以因應擴充功能服務工作站取代背景指令碼。先前,如果將 Manifest V2 金鑰 "scripts"、"page" 或 "persistent" 新增至 Manifest V3 擴充功能的 "background" 金鑰,系統會擲回錯誤。現在,只要含有這些鍵,系統就會觸發警告。
這是為了讓擴充功能在多個瀏覽器中使用單一資訊清單檔案,詳情請參閱社群群組的提案。
Chrome 120:鬧鐘精細度下限降至 30 秒
發布日期:
自 Chrome 120 起,Manifest V3 擴充功能可使用 chrome.alarms API,延遲或間隔時間為 30 秒,不必再使用 60 秒以上的值。
網誌文章:恢復遷移至 Manifest V3
發布日期:
Manifest V2 支援時間表已更新。詳情請參閱 2023 年 11 月的網誌文章。
網誌文章:Manifest V3 內容篩選支援功能改善
發布日期:
如要瞭解我們如何改良 declarativeNetRequest API,請參閱這篇網誌文章。
網誌文章:擴充功能適用的 Chrome 120 版新功能
發布日期:
Chrome 120 Beta 版已於近期發布。如要瞭解與擴充功能開發人員相關的重要更新摘要,請參閱我們的新網誌文章:Chrome 120 擴充功能新功能。此外,這個版本也代表我們達成重大里程碑,因為我們從重大平台缺口清單中移除了最後兩項項目 (userScripts 和 ChromeOS 上的檔案處理常式)。
重要公告:開發人員資訊主頁隱私權政策網址的處理方式異動
發布時間:
開發人員資訊主頁的隱私權政策現在會新增至項目層級。這樣一來,您就能為每個項目提供不同的隱私權政策。如要進一步瞭解這項異動,請參閱PSA。
影片:與 Matt Frisbie 的對話
發布日期:
我們剛在 Chrome for Developers YouTube 頻道發布新影片,與 Google 開發人員專家兼作者 Matt Frisbie 進行對談。按這裡觀看。
擴充功能測試新指南
發布日期:
我們剛發布了擴充功能自動測試的全新指南,包括如何編寫單元測試,以及端對端測試的一般指南和教學課程。
網誌文章:Chrome 擴充功能最新動態 - 2023 年 10 月
發布日期:
我們剛發布第二版「Chrome 擴充功能最新動態」,這篇文章將說明擴充功能團隊過去幾個月的成果,包括解決服務工作人員穩定性問題,以及在彌補所有 MV3 平台缺口方面取得的進展。我們也會分享即將推出的 API,例如閱讀清單 API 和使用者指令碼 API。
提高 Declarative Net Request API 的靜態規則集限制
發布日期:
根據 Web Extensions 社群群組的意見,我們大幅提高已啟用靜態規則集的上限,從 10 個增加到 50 個。此外,允許的靜態規則集總數也從 50 個增加到 100 個。這項功能目前僅適用於 Canary 版。
改善遠端代管程式碼的相關指引
發布日期:
Manifest V3 的規定是擴充功能不得再使用遠端代管的程式碼。雖然這項資訊一開始就已納入遷移指南,但我們認為有必要針對這個問題提供更完善的指引。該頁面現在提供更多資訊,說明 Manifest V3 仍可執行的操作,並提供升級策略的相關資訊。
我們在「Chrome 線上應用程式商店違規事項疑難排解」中新增了相關內容。新章節說明擴充功能因遠端代管程式碼遭拒的常見原因。
Chrome 118:isUrlFilterCaseSensitive 現在預設為 false
發布日期:
自 Chrome 118 版起,chrome.declarativeNetRequest API 中的 isUrlFilterCaseSensitive 屬性預設會變更為 false。如要保留舊行為,可以在 declarativeNetRequest 規則中,明確將 isUrlFilterCaseSensitive 設為 true。
這是根據 Web Extensions Community Group 的討論結果而定。Firefox 和 Safari 已實施類似的變更。
Cookie 和 Web Storage API 的說明文件
發布日期:
我們發布了新指南,說明 Cookie 和網路儲存空間 API 在 Chrome 擴充功能中的運作方式。 內容包括 Privacy Sandbox 的 Cookie 和儲存空間分區變更詳情。Privacy Sandbox 是一項持續進行的專案,旨在透過建立一系列新的網頁平台 API,逐步淘汰第三方 Cookie,並詳細說明這些 API 在擴充功能中的運作方式。
現在可以搜尋擴充功能範例
發布日期:
我們最近建立了一個頁面,方便您搜尋 Chrome 擴充功能範例。搜尋頁面提供多個選項,搜尋框可讓您搜尋樣本標題中的文字。您可以依權限或擴充功能 API 限制搜尋。您可以使用額外篩選器,將搜尋範圍限制在 API 或功能 (用途) 範例。
這個新範例網頁是由 Google Summer of Code 參與者 Xuezhou Dai 所建構,他同時也貢獻了多個新範例。如要瞭解他們在去年夏天的使用心得,請參閱這篇網誌文章。
與先前一樣,您仍可在 GitHub 上複製或分叉程式碼範例。
Chrome 118:開啟檔案的配置網址異動
發布日期:
從 Chrome 118 開始,擴充功能必須在 chrome://extensions 頁面中啟用「允許存取檔案網址」設定,才能使用 Tabs 或 Windows API 開啟 file:// 配置網址。您可以呼叫 chrome.extension.isAllowedFileSchemeAccess(),以程式輔助方式檢查這項存取權。Firefox 已限制檔案網址,Safari 也支援這項變更。詳情請參閱 Chrome 擴充功能郵寄清單上的文章。
Chrome 117:擴充功能 API 導覽的網址保護範圍擴大
發布時間:
先前,從擴充功能 API 呼叫觸發的導覽 (適用於 tabs.update()、tabs.create() 和 windows.create()) 會針對部分 chrome:// 網址發出錯誤。此外,系統禁止使用 JavaScript 網址呼叫 tabs.update()。在 117 版中,JavaScript 網址的這類保護措施已擴及 tabs.create() 方法,且禁止使用的網址清單中新增了許多其他 chrome:// 網址,適用於上述所有方法。
改善 declarativeNetRequest API 指南
發布日期:
chrome.declarativeNetRequest API 會指定宣告式規則,藉此封鎖或修改網路要求。擴充功能可藉此修改網路要求,不必攔截要求或查看內容,進而為使用者提供更多隱私權保障。而且使用起來很棘手。因此,我們重新撰寫了指南,希望讓您更清楚瞭解如何實作宣告式規則集。請參閱上方連結中的新章節。
在 Chrome 線上應用程式商店中使用 Google Analytics 帳戶
發布日期:
Chrome 線上應用程式商店提供 Google Analytics 整合功能,除了開發人員資訊主頁提供的檢視畫面外,您還能查看 Chrome 線上應用程式商店資訊的 Analytics 資料。詳情請參閱「在 Chrome 線上應用程式商店中使用 Google Analytics 帳戶」。
Chrome 115:開發人員工具預設會略過內容指令碼
發布日期:
現在,注入的內容指令碼預設會列入開發人員工具的忽略清單。這不會影響中斷點,但表示偵錯期間會略過內容指令碼,並忽略這些指令碼的例外狀況。在「來源」分頁中開啟內容指令碼時,如果這項設定已開啟,系統會顯示橫幅警示,並提供從忽略清單中移除內容指令碼的選項。如要關閉這項行為,請開啟開發人員工具,然後依序前往「設定」和「忽略清單」。詳情請參閱「開發人員工具的新功能」。
Chrome 116 Beta 版:更多內容,盡在其中
發布時間:
Chrome 116 是擴充功能的一大版本。您現在可以透過程式輔助開啟側邊面板。您可以使用新方法,瞭解是否有作用中的螢幕外文件。服務工作人員獲得多項改善。116 版有許多改良之處,因此我們撰寫了這篇網誌文章,說明相關內容。Chrome 116 已於 7 月 19 日推出 Beta 版。
網誌文章:Chrome 擴充功能最新動態
發布時間:
我們剛發布了今年擴充功能異動和改良項目的總覽。這篇文章討論了今年推出的重大新功能,包括側邊面板 API、服務工作人員強化功能和螢幕外文件。你也可以一窺我們本季的開發內容。這篇文章列出更多內容,並提供所有內容的連結。
全新指南和範例:瞭解如何在 Chrome 擴充功能中使用 Google Analytics 4
發布日期:
我們發布了新的 Google Analytics 和地理位置指引與範例:
- Google Analytics 指南的更新版本,說明如何在 Chrome 擴充功能中使用 Google Analytics 4。我們也在 Github 範例存放區中新增了 Google Analytics 4 範例。請參閱
google-analytics.js,瞭解與 Google Analytics 相關的程式碼。 - 我們提供新的地理位置指南和三個範例,說明如何在 Service Worker、內容指令碼、彈出式視窗和側邊面板中存取地理位置。
Chrome 115:在 chrome.offscreen.createDocument() 中指定多個原因
發布日期:
現在呼叫 chrome.offscreen.createDocument() 時,可以指定多個 reason 列舉。如果離螢幕文件將用於多種不同用途,請使用這項屬性。瀏覽器會根據提供的原因判斷螢幕外文件的生命週期。
新工具:擴充功能更新測試工具
發布日期:
我們剛發布了擴充功能更新測試工具,這個本機擴充功能更新伺服器可用於在本機開發期間測試 Chrome 擴充功能更新,包括權限授予。這項工具會顯示使用者的更新流程,包括在使用者授予任何新要求的權限前,讓擴充功能保持停用狀態。如果您要模擬從 Manifest V2 更新至 Manifest V3 時要求的權限變更,這個工具就特別實用。
Chrome 114:全新 Side Panel API
發布時間:
隆重推出全新的 Side Panel API,這個輔助介面可讓使用者在瀏覽內容時存取工具。如要瞭解詳情,請參閱 Side Panel API 參考資料。此外,我們也在 GitHub 範例存放區中新增了許多側邊面板範例。如要進一步瞭解側邊面板,請參閱新網誌文章「使用新的 Side Panel API 設計優質使用者體驗」。我們也審查了品質指南政策和最佳做法,進一步說明如何建立高品質側邊面板擴充功能。
您的意見回饋對這項 API 的設計至關重要,請在 chromium-groups 分享您的想法和功能要求。我們會持續強化 Side Panel API,敬請期待最新消息。
新範例:擴充功能中的 WASM
發布日期:
我們提供兩個新範例,說明如何在擴充功能中使用 WASM:
- 「在 Manifest V3 中使用 WASM」一文說明瞭加入 WASM 模組的一般方法。
- 在 Manifest V3 中將 WASM 做為模組使用:說明如何在模組中使用 WASM。
特別感謝 GitHub 貢獻者 @daidr 提供這些範例。
更新 Manifest V3 遷移指南
發布時間:
我們已更新 Manifest V3 遷移指南的「已知問題」部分,列出我們打算在宣布新的 Manifest V2 淘汰時間表前,解決的擴充功能平台缺口。
使用 Manifest V3 錄製音訊和視訊
發布時間:
我們剛發布一篇新文章「錄製音訊和擷取畫面」,說明如何在 Manifest V3 中錄製分頁、視窗或螢幕的音訊或影片。本文說明使用 chrome.tabCapture API 和 getDisplayMedia() 函式錄製內容的幾種方法。
Chrome 114:提高 storage.local 配額
發布日期:
我們已將 storage.local 屬性的配額增加至約 10 MB。這項做法已獲得 Web Extensions 社群群組同意。這項變更可讓 storage.local 與 Chrome 112 中變更的 storage.session 保持一致。
新擴充功能服務工作人員教學課程和說明
發布日期:
服務工作人員是 Chrome 擴充功能不可或缺的一環。我們剛發布教學課程,說明如何註冊、偵錯及與 Service Worker 互動。我們也新增了服務工作人員指南,詳細說明重要概念。我們會在未來幾個月內擴充這個專區。
更多有關 Web Store 違規事項的疑難排解提示
發布日期:
為協助您發布 Chrome 線上應用程式商店項目,我們在兩個領域新增了指引。基本功能指南的重點在於為使用者提供好處,並豐富他們的瀏覽體驗。聯盟廣告的規範旨在確保使用者瞭解,額外資訊會使用聯盟連結或代碼營利,並要求使用者先執行動作,才能納入這些資訊,讓使用者享有一定程度的控制權。
擴充功能資訊清單轉換器的新指令
發布時間:
我們已重新撰寫擴充功能資訊清單轉換器的 README,讓您在執行工具後,更容易瞭解後續步驟。這個轉換器可協助將以 Manifest V2 建構的擴充功能遷移至 Manifest V3。新版 README 說明工具的功能時,使用的字詞與遷移指南檢查清單中的字詞非常相似。轉換器無法完成所有工作,但可免除許多不需要人工判斷的工作。
Chrome 113:離螢幕文件的新原因
發布日期:
我們在 Offscreen Documents API 中新增了兩種原因類型。使用 LOCAL_STORAGE 存取網頁平台的 localStorage API。建立網頁工作者時,請使用 WORKER。
開發人員資訊主頁現已支援 Google Analytics 4
發布時間:
Chrome 線上應用程式商店開發人員資訊主頁現已支援 Google Analytics 4 (GA4)。我們簡化了 Google Analytics 設定,並讓群組發布商的存取權管理更加直接。如果您先前使用 Google 通用 Analytics 追蹤商店資訊活動,請在 2023 年 7 月 1 日前採取行動,確保能繼續接收商店資訊資料。詳情請參閱 Chrome 擴充功能郵寄清單中的文章。
ChromeOS 支援 File Handling API
發布日期:
您可以在 ChromeOS Canary 版的 112 和 113 版中,實驗性地使用 File Handler API。這項功能可讓 ChromeOS 擴充功能開啟具有指定 MIME 類型和副檔名的檔案。如要實作檔案處理功能,請在 manifest.json 中新增一組規則。這項功能與漸進式網頁應用程式的運作方式相同。詳情請參閱本網站的這篇文章。
如要啟用檔案處理功能,請按照下列步驟操作:
- 從 112 版開始,使用
--enable-features=ExtensionWebFileHandlers標記啟動 Chrome - 從 113 版開始,將
os://flags/#extension-web-file-handlers貼到 Chrome 多功能方塊,然後從下拉式選單中選取「已啟用」。
我們預計在 6 月底推出 Chrome 115 版時,一併推出這項功能。請持續關注這個平台以獲得最新消息。
新範例:動態宣告和程式輔助插入
發布時間:
我們已為 chrome.scripting API 建構新範例。這個範例會示範動態宣告,也就是在執行階段註冊內容指令碼,以及程式輔助插入,也就是在已開啟的分頁中執行指令碼。
新範例:宣告式網路要求用途
發布日期:
我們提供三種新範例,展示如何使用宣告式網路要求 API。每個範例都示範單一用途的實作方式。第一個影片說明如何封鎖 Cookie,其餘兩個範例則示範如何封鎖及重新導向網址。
Chrome 112:提高 storage.session 配額
發布日期:
自 Chrome 112 起,storage.session 屬性的配額已增加至約 10 MB。這項做法已在 Web Extensions 社群群組中達成共識:https://github.com/w3c/webextensions/issues/350
Chrome 109:螢幕外文件
發布日期:
Manifest V3 擴充功能現在支援螢幕外文件。這些功能和 API 支援 DOM 相關功能,有助於從背景網頁轉換為擴充功能 Service Worker。詳情請參閱這篇網誌文章。
Chrome 110:擴充功能是否已啟用
發布日期:
chrome.action.isEnabled() 方法會以程式輔助方式檢查特定分頁是否已啟用擴充功能。這樣您就不必維護分頁的啟用狀態。這個新方法會採用分頁 ID 和回呼的參照,並傳回布林值。但有一項限制:使用 chrome.declarativeContent 建立的分頁一律會傳回 false。
(chrome.action 命名空間最近新增了控制擴充功能徽章外觀的方法。詳情請參閱「設定徽章顏色」一文。
Chrome 110:服務工作人員閒置逾時時間異動
發布日期:
先前,擴充功能服務工作人員經常會在五分鐘時關閉。我們已變更這項行為,讓其更貼近網頁上的 Service Worker 生命週期。如果擴充功能服務工作人員閒置 30 秒,或處理單一活動的時間超過 5 分鐘,就會關閉。詳情請參閱「延長擴充功能服務工作人員的生命週期」。
貼文:暫緩淘汰 Manifest V2
發布日期:
我們正在審查 Manifest V2 的淘汰時間表,並延後原定於 2023 年初進行的實驗。詳情請參閱 Chrome 擴充功能郵寄清單中的更新內容。
Chrome 110:設定徽章顏色
發布日期:
chrome.action 命名空間新增了兩種方法,可讓您進一步控管外觀擴充功能徽章。擴充功能可透過 setBadgeTextColor() 和 getBadgeTextColor() 方法,變更及查詢工具列圖示的徽章文字顏色。搭配 setBadgeBackgroundColor 和 getBadgeBackgroundColor 使用時,這些新方法可協助您確保設計和品牌一致性。
網誌文章:進一步瞭解遷移至 Manifest V3 的相關資訊
發布日期:
我們已釐清 Manifest V2 淘汰時程。Manifest V2 支援時間表也已更新,以反映這項資訊。
說明文件更新:遷移至 Manifest V3 時的已知問題
發布日期:
我們整理了一份目前正在開發的主要功能和開放錯誤清單,我們希望透過這個頁面,協助開發人員進一步瞭解平台現況,以及為未來做好準備時可鎖定的功能。
Chrome 線上應用程式商店:已移除「大型宣傳圖塊」圖片上傳功能
發布日期:
Chrome 線上應用程式商店已從開發人員資訊主頁的項目商店資訊分頁中,移除「大型宣傳方塊」上傳使用者介面。這項異動不會影響使用者體驗,因為這些圖片並未用於消費者 UI。詳情請參閱這篇 chromium-extensions 貼文。
Chrome 106:允許 file:// 網址上的網頁存取可從網頁存取的資源
發布日期:
根據 crbug.com/1219825#c11,不透明來源 (例如沙箱化 iframe 和動態匯入) 也應能存取可供網路存取的資源。
Chrome 106:修正錯誤,允許部分非同步 API 函式使用不正確的最終引數
發布日期:
先前,資訊清單 V3 呼叫非同步 API 時可能會提供無效的最終引數,但 Chrome 不會發生錯誤。修正後,Chrome 現在會正確顯示錯誤,並回報沒有相符的簽章。建議開發人員在 Canary 上檢查擴充功能是否有任何錯誤,以免不慎使用 API 呼叫的錯誤簽章,導致這個錯誤修正檔無法正常運作。
網誌文章:Chrome 線上應用程式商店分析功能改版
發布日期:
Chrome 線上應用程式商店已改進 Chrome 線上應用程式商店開發人員資訊主頁的項目分析體驗。新版資訊主頁更容易一目瞭然,並整合了最實用的資訊。詳情請參閱這篇網誌文章。
Chrome 105:Identity API 的 Promise
發布日期:
Identity API 的函式現在支援以 Promise 為基礎的呼叫。這項異動會對 identity.getAuthToken() 介面造成些微影響,非同步傳回集設為以 Promise 為基礎的呼叫時,會將「token」和「grantedScopes」做為單一物件的參數 (而非回呼版本將這些參數做為回呼的個別引數)。
Chrome 104:適用於 Manifest V3 的新 Favicons API
發布日期:
Manifest V3 擴充功能現在可以使用新的網址模式存取網址圖示:chrome-extension://<id>/_favicon/,其中 chrome://favicons API,詳情請參閱 Favicon API 文件。
說明文件更新:開發人員交易者/非交易者揭露資訊
發布日期:
新增交易商/非交易商開發人員身分識別,協助開發人員如實聲明交易商/非交易商狀態。
Chrome 103:Manifest V3 中的 Wasm 需要 wasm-unsafe-eval
發布日期:
Chrome 不再預設授予擴充功能 script-src: wasm-unsafe-eval。使用 WebAssembly 的擴充功能現在必須在 content_security_policy 宣告中,明確將這項指令和值新增至 extension_pages。
Chrome 103:變更 MV3 快速鍵會立即生效
發布時間:
在 chrome://extensions/shortcuts 上變更 Manifest V3 擴充功能的鍵盤快速鍵時,系統現在會立即套用更新。先前必須重新載入擴充功能,變更才會生效。
Chrome 102:主要世界中的動態內容指令碼
發布日期:
動態註冊的內容指令碼現在可以指定要將資產注入的世界。詳情請參閱 scripting.registerContentScripts()。
Chrome 102:新的資訊清單欄位「optional_host_permissions」
發布日期:
Manifest V3 擴充功能現在可以在 manifest.json 中指定 optional_host_permissions 鍵。這樣一來,Manifest V3 擴充功能就能為主機宣告選用比對模式,就像 Manifest V2 擴充功能使用 optional_permissions 鍵一樣。
Chrome 102:scripting.executeScript() 中的 injectImmediately 屬性
發布日期:
chrome.scripting.executeScript() 現在接受 injection 引數中的選用 injectImmediately 屬性。如果存在且設為 true,指令碼會盡快注入目標,而不是等待 document_idle。請注意,由於網頁會在發出 API 呼叫時繼續載入,因此無法保證指令碼會在網頁載入前注入。
Chrome 102:支援 Manifest V3 的網址列 API
發布日期:
現在可以在以 Service Worker 為基礎的擴充功能中使用 Omnibox API。先前,由於內部依附元件依賴 DOM 功能,因此呼叫部分 API 方法時會擲回例外狀況。
Chrome 102:Manifest V3 CSP 允許使用 wasm-unsafe-eval
發布日期:
Manifest V3 擴充功能現在可以在 content_security_policy 宣告中加入 wasm-unsafe-eval。這項異動可讓 Manifest V3 擴充功能使用 WebAssembly。
Chrome 102:推出新的 storage.session API
發布日期:
資訊清單 V3 擴充功能現在可以使用記憶體內儲存空間 storage.session。
文件更新:Chrome 線上應用程式商店項目探索
發布日期:
Chrome 線上應用程式商店的探索功能會提供總覽,說明使用者如何在 Chrome 線上應用程式商店中尋找項目,以及編輯人員如何選取要推薦的項目。
Chrome 101:改良的 declarativeNetRequest 網域條件
發布日期:
declarativeNetRequest 規則條件已更新,可讓擴充功能根據要求的「request」和「initiator」網域,更準確地指定要求。相關條件屬性為 initiatorDomains、excludedInitiatorDomains、requestDomains 和 excludedRequestDomains。另請參閱這篇 chromium-extensions 討論串。
Chrome 100:解決新建立分頁上的 scripting.executeScript() 問題
修正長期存在的問題:在新建立的分頁或視窗上呼叫 scripting.executeScript() 可能會失敗。
Chrome 100:原生訊息傳輸埠可讓服務工作人員保持運作
發布日期:
在擴充功能的服務工作人員中使用 chrome.runtime.connectNative() 連線至原生訊息主機時,只要通訊埠開啟,服務工作人員就會保持運作。
Chrome 100:omnibox.setDefaultSuggestion() 支援 Promise 和回呼
發布日期:
omnibox.setDefaultSuggestion() 方法現在會傳回 Promise 或接受回呼,讓開發人員判斷建議是否已正確設定。
Chrome 100:擴充功能服務工作人員支援 i18n.getMessage()
發布日期:
擴充功能服務工作人員環境現在支援 chrome.i18n.getMessage() API。
Chrome 99:Canary 中的 match_origin_as_fallback
發布日期:
內容指令碼現在可以指定 match_origin_as_fallback 鍵,將內容插入與相符框架相關的框架,包括具有 about:、data:、blob: 和 filesystem: 網址的框架。詳情請參閱內容指令碼說明文件。
Chrome 99:Canary 版支援擴充功能服務工作人員的 file: 配置
發布日期:
以 Service Worker 為基礎的 Manifest V2 和 Manifest V3 擴充功能,現在可以使用 Fetch API 要求 file: 配置網址。如要存取 file: 配置網址,使用者仍須在 chrome://extensions 頁面中,為擴充功能啟用「允許存取檔案網址」。
Chrome 99:Canary 版支援訊息 API 的 Promise
發布時間:
針對為 Manifest V3 建構的擴充功能,已在 tabs.sendMessage、runtime.sendMessage 和 runtime.sendNativeMessage 中新增 Promise 支援。
文件更新:Chrome 線上應用程式商店評論文件
發布日期:
新增參考頁面,簡要說明 Chrome 線上應用程式商店審查程序,並解釋開發人員計畫政策的執行方式。
Chrome 98:scripting.executeScript() 和 scripting.insertCSS() 接受多個檔案
發布日期:
Scripting API 的 executeScript() 和 insertCSS() 方法現在可接受多個檔案。先前這些方法需要包含單一檔案項目的陣列。
文件更新:查看違規疑難排解更新
發布日期:
我們更新了「Chrome 線上應用程式商店違規事項疑難排解」頁面,針對常見的拒絕原因提供更詳細的指引。
Chrome 96:擴大 Promise 支援範圍,新增 27 個 API
發布日期:
這個版本包含的 Promise 更新項目,比任何舊版都多。更新內容包括一般和 ChromeOS 專用的擴充功能 API。詳情請展開下列各節。
擴充功能 API
許多 API 現在支援 Manifest V3 中的 Promise。
chrome.browsingDatachrome.commandschrome.contentSettingschrome.debuggerchrome.downloadschrome.enterprise.hardwarePlatformchrome.fontSettingschrome.historychrome.instanceIDchrome.permissionschrome.processeschrome.searchchrome.sessionschrome.topSites
此外,使用 ChromeSetting 原型的 API 現在也支援 Promise。下列 API 會受到這項異動影響。
ChromeOS API
chrome.certificateProviderchrome.documentScanchrome.enterprise.deviceAttributeschrome.enterprise.networkingAttributeschrome.fileBrowserHandlerchrome.fileSystemProviderchrome.loginStatechrome.printingMetricschrome.wallpaper
Chrome 96:動態內容指令碼
發布日期:
chrome.scripting API 現在支援在執行階段註冊、更新、取消註冊及取得內容指令碼清單。先前,內容指令碼只能在擴充功能的 manifest.json 中靜態宣告,或在執行階段使用 chrome.scripting.executeScript() 以程式輔助方式插入。
文件更新:Manifest V2 支援時程
發布日期:
我們已在這篇網誌文章中宣布 Manifest V2 遷移至 V3 的時間表,並發布了更詳細的時間表頁面。
Chrome 96:declarativeNetRequestWithHostAccess 權限
發布日期:
新的 declarativeNetRequestWithHostAccess 權限可讓擴充功能在具備主機權限的網站上使用 chrome.declarativeNetRequest API。這也讓使用 webRequest、webRequestBlocking 和網站專屬主機權限的現有 Manifest V2 擴充功能,能夠遷移至 chrome.declarativeNetRequest API,而無須使用者核准新權限。
Chrome 95:直接將指令碼插入網頁
發布日期:
chrome.scripting API 的 executeScript() 方法現在可以直接將指令碼插入網頁的主要世界。先前,擴充功能只能直接注入擴充功能的獨立世界。如要進一步瞭解獨立世界,請參閱內容指令碼說明文件。
Chrome 95:支援 Storage API 的 Promise
發布日期:
Manifest V3 版 chrome.storage API 的方法現在會傳回 Promise。
政策更新:強制執行兩步驟驗證
發布日期:
我們已更新 2021 年 6 月 29 日發布的政策更新網誌文章,修正兩步驟驗證的部署時間表。
Chrome 94:declarativeNetRequest 靜態規則集異動
發布日期:
chrome.declarativeNetRequest 現在支援一次指定最多 50 個靜態規則集 (MAX_NUMBER_OF_STATIC_RULESETS),以及啟用最多 10 個規則集 (MAX_NUMBER_OF_ENABLED_STATIC_RULESETS)。
Chrome 93:支援跨來源隔離
發布日期:
資訊清單 V2 和 資訊清單 V3 擴充功能現在都可以選擇加入跨來源隔離。這項功能可限制哪些跨來源資源可載入擴充功能的網頁,並啟用 SharedArrayBuffer 等低階網頁平台功能。自 Chrome 95 版起,您必須選擇啟用這項功能。
政策更新:開發人員計畫政策更新
發布日期:
我們已更新 Chrome 線上應用程式商店開發人員計畫政策, 針對誤導性安裝手法、垃圾內容和重複內容政策做出說明。 此外,這項更新也新增了兩步驟驗證規定,您必須完成驗證才能在 Chrome 線上應用程式商店發布項目。詳情請參閱這篇網誌文章。
網誌文章:Manifest V3 中的擴充功能動作
發布日期:
Chrome 擴充功能已使用 chrome.browserAction 和 chrome.pageActions API 多年,但資訊清單 V3 將這兩者都換成通用的 chrome.actions API。這篇文章將探討這些 API 的歷史,以及 Manifest V3 的變更內容。閱讀文章。
網誌文章:介紹 chrome.scripting
發布日期:
chrome.scripting API 是全新的 Manifest V3 API,主要用於編寫指令碼。本文將深入探討這項異動的動機,並進一步瞭解其新功能。閱讀文章。
Chrome 92:支援模組服務工作人員
發布日期:
Chrome 現在支援服務工作人員中的 JavaScript 模組。如要在資訊清單中指定模組,請按照下列步驟操作:
"background": {
"service_worker": "script.js",
"type": "module"
}
這會將工作站指令碼載入為 ES 模組,讓您在工作站的指令碼中使用 import 關鍵字匯入其他模組。
Chrome 91:chrome.action.getUserSettings()
發布日期:
擴充功能可透過新的
chrome.action.getUserSettings()
方法,判斷使用者是否已將擴充功能固定在主要工具列。
Chrome 90:chrome.scripting.removeCSS()
發布日期:
新的 chrome.scripting.removeCSS() 方法可讓擴充功能移除先前透過 chrome.scripting.insertCSS() 插入的 CSS。這會取代 chrome.tabs.removeCSS()。
Chrome 90:從 scripting.executeScript() 傳回 Promise
發布日期:
chrome.scripting.executeScript() 現在支援傳回 Promise。如果指令碼執行後的值是 Promise,Chrome 會等待 Promise 結算,然後傳回結果值。
Chrome 90:chrome.scripting.executeScript() 結果包含 frameId
發布日期:
從 chrome.scripting.executeScript() 傳回的結果現在包含 frameId。frameId 屬性會指出結果來自哪個影格,讓擴充功能在插入多個影格時,輕鬆將結果與個別影格建立關聯。
Chrome 89:管理分頁群組的新 API
發布日期:
新版 chrome.tabGroups API 和 chrome.tabs 的新功能可讓擴充功能讀取及操控分頁群組。需要 Manifest V3。
Chrome 89:可自訂網路可存取資源的權限
發布日期:
Manifest V3 中的「可透過網路存取的資源」定義已變更,擴充功能可根據要求者的來源或擴充功能 ID 限制資源存取權。
網誌文章:擴充功能資訊清單轉換器
發布時間:
Chrome 擴充功能團隊已開放「擴充功能資訊清單轉換器」的原始碼,這項 Python 工具可自動執行部分擴充功能轉換至 Manifest V3 的機械式作業。請參閱公告網誌文章,並從 GitHub 取得。
Chrome 88:Manifest V3 正式發布
發布日期:
Manifest V3 是擴充功能平台的主要更新。如要瞭解新功能和異動內容,請參閱「Manifest V3 總覽」。擴充功能目前仍可使用 Manifest V2,但這項功能即將淘汰。強烈建議您為所有新擴充功能使用 Manifest V3,並盡快將現有擴充功能遷移至 Manifest V3。