請經常查看這個頁面,瞭解 Chrome 擴充功能、擴充功能說明文件、相關政策或其他異動。我們會在 Extensions Google 網路論壇中公布其他通知。Chrome 時間表會列出穩定版和 Beta 版的發布日期。
Chrome 128:宣告式網路要求中的回應標頭比對
自 Chrome 128 版起,我們開始支援 Declarative Net Request API 的回應標頭比對功能。這是很常見的要求,特別是比對 Content-Type 標頭,因此我們和 WebExtensions 社群群組設計了適合的 API。
我們已更新 API 參考資料,納入新的 responseHeaders
和 excludedResponseHeaders
欄位。您可以使用這些屬性檢查指定標頭是否存在,以及值是否存在。
透過本次更新,我們在說明文件中加入了新的規則評估一節,當中說明比對規則的方式。尤其是針對標頭比對,規則只會在收到回應標頭後執行,因此規則會在較晚的階段套用,而非其他規則。這表示要求在遭到封鎖或重新導向之前確實會到達伺服器。
影片:什麼是內容指令碼?
瞭解 Chrome 擴充功能中的內容指令碼,包括如何註冊要在特定網頁中執行的 CSS 和 JavaScript。歡迎觀看完整影片。
重要政策更新
Chrome 線上應用程式商店團隊已對《開發人員計畫政策》頁面發布一系列的更新內容,旨在鼓勵開發人員開發優質產品、防範欺騙行為,並確保使用者在充分知情的情況下提供同意聲明。Chrome 線上應用程式商店政策管理工具 Rebecca Soares 列出了「Chrome 擴充功能:重要政策更新網誌文章」一文中的所有更新項目。
網誌文章:Chrome 擴充功能最近活動,2024 年 7 月
過去三個月內,我們發布了幾項重大更新和新功能,包括開始逐步淘汰 Manifest V2。歡迎參閱 7 月版 Chrome 擴充功能異動,掌握最新消息!
影片:什麼是遠端代管程式碼?
Chrome 擴充功能團隊的 Patrick 分享 Chrome 擴充功能中遠端代管程式碼 (RHC) 的概念。瞭解不再允許 RHC 的原因、偵測方式,以及擴充功能需要更新時的處理方式。歡迎觀看完整影片。
Chrome 127:新的 action.openPopup API
從 Chrome 127 開始,action.openPopup
所有擴充功能都能使用 API。先前僅適用於 Canary
或是依政策安裝的擴充功能
影片:信任與安全團隊訪談
Chrome 擴充功能 DevRel 團隊隆重推出負責帶領 Chrome 線上應用程式商店審查作業的安全團隊。歡迎觀看完整影片。
網誌文章:開始逐步淘汰 Manifest V2
自 6 月 3 日起,在 Chrome Beta 版、開發人員版和 Canary 版發布,如果使用者仍未安裝 Manifest V2 擴充功能,部分使用者在造訪擴充功能管理頁面 (chrome://extensions) 時會看到警告橫幅 - 通知他們已安裝的部分 (Manifest V2) 擴充功能。詳情請參閱官方公告
側邊面板 UI 更新
我們最近對側邊面板的使用者介面做了一些變更,包括新增圖釘圖示 移除全域側邊面板圖示您可以前往公共服務宣導瞭解詳情,並查看更新後的說明文件和範例。
網誌文章:2024 年 Google I/O 大會公布的 Chrome 擴充功能
另一場 Google I/O 大會都在幕後追蹤,我們為大家介紹了所有令人期待的擴充功能更新!歡迎前往 YouTube 觀看完整影片,並閱讀我們的網誌文章,瞭解一些精選內容。
針對符合條件的宣告式網路要求變更略過審查
Chrome 線上應用程式商店現在可讓你在使用 宣告式 Net Request API。進一步瞭解資格規定和啟用方式 參閱 Chrome 線上應用程式商店說明文件。
Chrome 線上應用程式商店 API 提供的 deployPercentage
我們最近更新了 Chrome 線上應用程式商店 API 說明文件,加入 deployPercentage
的相關資訊,讓您指派一部分的推出部署作業。瞭解「deployPercentage
」。
Chrome 126:擴充功能中的來源試用
Chrome 126 推出了新的 manifest.json 欄位 (trial_tokens
),可讓您在所有擴充功能介面上啟用來源試用和淘汰測試。詳情請參閱指南。
網誌文章:Chrome 擴充功能異動 - 2024 年 4 月
我們已發布新版「Chrome 擴充功能的後續活動」。這篇貼文討論擴充功能團隊過去幾個月的用意。這包括:Chrome 線上應用程式商店的版本復原、 Firebase 驗證支援,以及更多 API 發布和更新。
Chrome 線上應用程式商店開發人員資訊主頁的版本復原作業
在不進行額外審查的情況下,將擴充功能復原到 Chrome 線上應用程式商店中先前發布的版本!如需詳細資訊,請參閱網誌文章和說明文件。
Chrome 124:Advanced documentScan API
進階 documentScan
API
現在可以在 ChromeOS 上搜尋及擷取附加的圖片
文件掃描器。
Chrome 124:Service Worker 中的 WebGPU 支援
自 Chrome 124 起,服務工作處理程序支援 WebGPU。換 快速入門,查看 WebGPU 擴充功能範例。
Chrome 123:Events API 支援根據 CIDR 區塊進行篩選
事件 API 現在支援篩選功能
按照無類別跨網域路由 (CIDR) 區塊分類。CIDR 區塊
共用網路前置字元與位元數相同的 IP 位址。先前
開發人員需要篩選多個 IP 位址來設定篩選器
為封鎖範圍中的每個位址套用規則現在當擴充功能呼叫
addListener()
,如果傳入規則,表示系統只會呼叫事件處理常式
如果網址的主機部分為 IP 位址且包含在任一 CIDR 中
在陣列中指定的區塊。
Chrome 線上應用程式商店:擴充功能名稱長度規定更新
現在,「Chrome 線上應用程式商店」的
前往 "name"
欄位
manifest.json.英文限制為 45 個字元
在其他語言代碼的 "name"
欄位沒有設限。
這麼做的用意是區分不同文化和語言的差異 可能無法以相同的字元數擷取。很抱歉, 少數開發人員濫用這項功能,在商店中發布垃圾內容。身為 因此,我們推出了新的通用限制,將上限提高至 75 個字元。 這項限制涵蓋商店中幾乎所有額外資訊,因此應該不會 這項變更。如果您嘗試上傳 副檔名名稱超出上限,系統會在 遭到商店封鎖
網誌文章:視障者測試服務工作人員停權的流程
在這篇文章由 eyeo 的擴充功能引擎團隊撰寫的文章中,我們會探討 測試擴充功能 Service Worker 的問題在 Manifest V2 中,擴充功能 運作於背景頁面,在擴充功能生命週期中會醒來。 Manifest V3 在設計上會使用 Service Worker 和 Service Worker。 如要節省資源,請在不需要時關閉。有 某些測試難題。這篇文章 說明眼睛如何因應這些挑戰。
Chrome 123:現在裝置處於休眠狀態時執行鬧鐘
使用 chrome.alarms
API 設定的鬧鐘
都不會在裝置休眠時延遲。當裝置喚醒時
不論錯過多少鬧鐘,鬧鐘都會觸發一次。舉例來說,假設
鬧鐘設定每小時響一次,鬧鐘開啟的裝置在
午夜 12:55 至凌晨 2:05,那麼只有凌晨 2:00 的鬧鐘會觸發 onAlarm
事件。
它會在最接近凌晨 2:00 時啟動,並在裝置喚醒後立即啟動
這類情形
這項異動可讓 Chrome 符合 Web Extension 社群群組中協議的行為。
網誌文章:擴充功能訊息通訊埠的 bfcache 行為異動
往返快取 (bfcache) 是瀏覽器
可以提供即時往返瀏覽的最佳化功能。距離開始還有
Chrome 123 版,如果將具有開啟擴充功能通訊埠的網頁儲存在 bfcache 中,
訊息管道已關閉,這表示系統不會將任何訊息傳送至該頁面。
因此,擴充功能指令碼應監聽生命週期事件,例如
當網頁透過 BFCache 還原時,onDisconnect
並設定新的連線。
如需更多資訊和程式碼範例,請參閱: 使用擴充功能訊息通訊埠變更 BFCache 行為。
Chrome 122:針對非同步擴充功能 API 的 Promise 支援
我們已完成所有非同步擴充功能 API 的 Promise 支援
方法。之所以這麼做,是為了翻新 API 方法,藉由提升
處理非同步作業幾種方法 (例如
desktopCapture.chooseDesktopMedia()
) 會繼續只支援回呼
因為該公司目前的介面與 Promise 不相容。往後適用
相容性,系統仍支援回呼。如果你發現 Promise 遷移失敗
請回報錯誤。
新的即時通訊指南
我們已發布擴充功能的即時選項指南。這項即時更新功能提供即時通訊路徑,可直接從伺服器傳送至你安裝的擴充功能。此外,我們也更新了 chrome.gcm、Web Push 的使用指南。
新指引和範例:測試 Service Worker 終止
我們已發布指南,說明如何透過 Puppeteer 測試 Service Worker 終止情形。隨附的範例在 Puppeteer 和 Selenium 中進行了示範。
已更新原生訊息傳遞範例
我們已發布了更新版樣本 原生訊息傳遞功能這個 API 可讓擴充功能啟動及通訊 應用程式。感謝 GitHub 貢獻者 Shubham-Rasal 需要特別留意
Chrome 121:「分頁」中的「上次存取時間」新屬性。Tab
名為 lastAccessed
的新屬性已新增至 tabs.Tab
物件。這個屬性表示上次啟用分頁的時間。傳回的值以 Epoch 紀元時間起算的毫秒為單位。
Chrome 121:不支援的「背景」鍵會發出警告
在 Manifest V2 到 Manifest V3 的變更中,"background"
資訊清單索引鍵的子項已變更,以配合擴充功能 Service Worker 的背景指令碼取代。原先在 Manifest V3 擴充功能的 "background"
鍵中加入 Manifest V2 索引鍵 "scripts"
、"page"
或 "persistent"
會導致錯誤。存在這些鍵時,現在會觸發警告。
這表示根據社群群組中的提案,在多個瀏覽器擴充功能中使用單一資訊清單檔案。
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 版擴充功能的新功能。此外,這個版本也從關鍵平台缺口清單中移除最後兩個項目 (ChromeOS 上的檔案處理常式),因此也是重要里程碑。
PSA:開發人員資訊主頁中的隱私權政策網址處理方式有所異動
開發人員資訊主頁現已在項目層級新增隱私權政策。以便為各個項目提供不同的隱私權政策。瞭解詳情 PSA的異動。
影片:與 Matt Frisbie 的即時通訊
我們剛在 Chrome 開發人員版 YouTube 頻道發布一部新影片,與 Google 開發人員專家及作者 Matt Frisbie 聊天。觀看 請按這裡。
關於測試擴充功能的新指南
我們剛剛發布了新指南,說明如何編寫擴充功能的自動測試,包括如何編寫單元測試及/ 一般指南和 端對端測試的教學課程。
網誌文章:Chrome 擴充功能異動 - 2023 年 10 月
我們已發布第二版「Chrome 擴充功能的後續活動」。這篇文章討論了擴充功能團隊過去幾個月來的努力,包括解決服務工作人員穩定性問題、解決所有 MV3 平台缺口,以及過程中有哪些缺口。我們也和大家分享令人期待的 API 版本,例如 Reading List API 和 User Scripts API。
提高 Declarative Net Request API 的靜態規則集限制
追蹤 Web 擴充功能中的意見回饋 社群群組即將大幅提高啟用靜態規則集的上限,從 10 個增加到 50 個。 此外,我們將允許的靜態規則集總數從 50 個增加為 100 個。這是 目前可用的初期測試版本
改進遠端託管程式碼的相關指引
根據 Manifest V3 的需求條件,擴充功能無法再使用遠端託管的程式碼。雖然從一開始的遷移指南就已包含這個部分,但我們還是認為應針對這個問題改善相關指引。該頁面現在提供了更多資訊,說明 Manifest V3 還有哪些功能,並進一步說明昇級策略。
另外,也提供了解決 Chrome 線上應用程式商店違規事項的相關說明。新的章節說明含有遠端託管程式碼的擴充功能會遭到拒絕的常見原因。
Chrome 118:isUrlFilterCaseSensitive 現在預設為 false
從 Chrome 118 開始,isUrlFilterCaseSensitive
屬性 (位於 chrome.declarativeNetRequest 中)
API 已變更為預設值「false
」。如要保留舊行為,您可以在以下項目中明確將 isUrlFilterCaseSensitive
設為 true
:
宣告方式
這會透過 Web 擴充功能中的討論進行 社群群組。Firefox 和 Safari 也執行了類似的變更。
Cookie 和網站儲存空間 API 的說明文件
我們發布了一份新指南,說明 Cookie 和網站儲存空間 API 在 Chrome 擴充功能中的運作方式。 其中包含有關 Privacy Sandbox:這項持續淘汰第三方 Cookie 的專案 製作一系列新的網路平台 API,並詳細說明這些 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 支援這項變更。詳情請參閱在 Google 網路論壇中張貼內容。
Chrome 117:擴充功能 API 導覽的擴展網址保護措施
先前從 tabs.update()
、tabs.create()
和 windows.create()
的擴充功能 API 呼叫觸發的導覽功能,會在部分 chrome:// 網址發生錯誤。此外,我們也禁止使用 JavaScript 網址呼叫 tabs.update()
。在 117 年,這些針對 JavaScript 網址的保護措施已擴充為 tabs.create()
方法,並新增一些額外的 chrome:// 網址,以套用至上述所有方法。
改善 declarativeNetRequest API 的指南
chrome.declarativeNetRequest
API 會透過指定宣告式規則來封鎖或修改網路要求。這可讓擴充功能在不攔截及查看網路要求的情況下,修改網路要求,進一步保障使用者隱私。使用起來也很困難有鑑於此,我們重新編寫指引內容,希望讓您更清楚瞭解如何實作宣告式規則集。請點選上方連結閱讀新章節。
在 Chrome 線上應用程式商店中使用 Google Analytics 帳戶
Chrome 線上應用程式商店整合了 Google Analytics,因此除了開發人員資訊主頁提供的檢視畫面外,您還可以查看 Chrome 線上應用程式商店商店資訊的數據分析。詳情請參閱在 Chrome 線上應用程式商店中使用 Google Analytics 帳戶。
Chrome 115:開發人員工具預設與內容指令碼相同
根據預設,插入的內容指令碼現在會列入開發人員工具的忽略清單。這不會影響中斷點,但這代表系統會在偵錯期間逐步執行內容指令碼,並忽略這些指令碼的例外狀況。在「來源」分頁中開啟內容指令碼時,如果開啟該功能,橫幅會顯示警示訊息,並提供從忽略清單中移除內容指令碼的選項。如要關閉這項行為,請開啟開發人員工具,然後依序點選「設定」和「忽略清單」。詳情請參閱「開發人員工具的新功能」。
Chrome 116 Beta 版:更多版本
Chrome 116 是擴充功能的重要版本。你現在可以透過程式輔助方式開啟側邊面板。新方法可讓您瞭解是否有有效的畫面外文件。服務工作處理程序獲得了伺服器的改善。此外,我們在 116 方面做出了足夠的改善,我們為此撰寫了網誌文章。Chrome 116 已於 7 月 19 日推出 Beta 版。
網誌文章:Chrome 擴充功能異動
我們剛發布了總覽說明今年的擴充功能異動和改善項目。文章討論了今年的重要功能,包括 Side Panel API、Service Worker 強化和螢幕外文件。此外,你也能一覽本季的預期目標。這篇文章列出了更多內容,並附上全部的連結。
新指南與範例:瞭解如何在 Chrome 擴充功能中使用 Google Analytics 4
我們發布了全新的 Google Analytics 和地理位置指南和範例:
- 更新版 Google Analytics 指南,瞭解如何在 Chrome 擴充功能中使用 Google Analytics 4。並將有效的 Google Analytics 4 範例新增至 GitHub 範例存放區。請前往
google-analytics.js
取得 Google Analytics 相關程式碼。 - 新的地理位置指南和三個範例將說明如何在服務工作人員、內容指令碼、彈出式視窗和側邊面板中存取地理位置。
Chrome 115:在 chrome.offscreen.createDocument() 中指定多個原因
現在,您可以在呼叫 chrome.offscreen.createDocument()
時指定多個 reason
列舉。如果需要將螢幕外的文件用於多種用途,請使用這個選項。瀏覽器會根據所提供的理由判斷畫面外文件的生命週期。
新工具:擴充功能更新測試工具
我們剛剛推出了擴充功能更新測試工具,這是本機擴充功能更新伺服器,可用來在本機開發期間測試 Chrome 擴充功能的更新,包括授予權限。這項工具會顯示使用者的更新流程,包括在使用者授予任何新要求的權限前,讓擴充功能保持停用狀態。如要模擬將擴充功能從 Manifest V2 更新至 Manifest V3 時所要求的權限變更,這項工具特別實用。
Chrome 114:新增側邊面板 API
全新 Side Panel API 推出,這個隨附介面可讓使用者在瀏覽的內容旁存取工具。詳情請參閱側邊面板 API 參考資料。此外,我們也在 GitHub 範例存放區中新增許多側邊面板範例。此外,我們還在新的網誌文章「Designing a Superior User Experience with the New Side Panel API」(使用新的側邊面板 API 設計更優異的使用者體驗) 中,進一步瞭解側邊面板。另外,我們也審查了品質指南政策和最佳做法,進一步引導你建立優質側邊面板擴充功能。
在設計這個 API 的過程中,您的意見回饋很重要。請前往 chromium-groups 分享你的想法和功能要求。我們會持續強化 Side Panel API,請密切留意最新消息。
新範例:擴充功能中的 WASM
我們提供兩個新範例,示範如何在擴充功能中使用 WASM:
- 在 Manifest V3 中使用 WASM:說明瞭加入 WASM 模組的一般方法。
- 使用 WASM 做為 Manifest V3 中的模組,瞭解如何在模組中使用 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 Community Group 中同意。這項做法讓 storage.local
與 Chrome 112 版中變更的 storage.session
一致。
全新擴充功能 Service Worker 教學課程和說明
Service Worker 是 Chrome 擴充功能的必要部分,我們日前發布了教學課程,說明有關註冊、偵錯和與 Service Worker 互動的基本概念。我們也新增了 Service Worker 指南,進一步詳細解釋重要概念。本節將在未來幾個月內擴大適用範圍。
更多線上應用程式商店違規問題的疑難排解提示
為協助您在 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 日前採取行動,以確保能繼續接收商店資訊的相關資料。詳情請參閱這篇 Chromium 擴充功能 Google 網路論壇貼文。
File Handling API 是 ChromeOS 的一部分
File Handler API 可在 ChromeOS 的 Canary 第 112 版及 113 版中進行實驗,可讓 ChromeOS 的擴充功能開啟指定 MIME 類型及副檔名的檔案。如要實作檔案處理方式,請在 manifest.json
中新增一組規則。這項功能的運作方式與漸進式網頁應用程式相同。詳情請參閱本網站其他位置的文章。
如要啟用檔案處理功能:
- 自 112 年起,請使用
--enable-features=ExtensionWebFileHandlers
旗標啟動 Chrome (自 112 年起) - 自 113 年起,將
os://flags/#extension-web-file-handlers
貼到 Chrome 網址列,然後選取「已啟用」。
我們預計於 6 月下旬,在 Chrome 115 中推出這項功能。留意此空間,取得更新資訊。
新範例:動態宣告和程式輔助插入
我們為 chrome.scripting
API 建立了新範例。用於示範動態宣告 (在執行階段註冊內容指令碼),以及程式輔助插入 (在已開啟的分頁中執行指令碼)。
新範例:宣告式網路要求使用案例
我們提供三個新範例,示範宣告式 Net Request 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 擴充功能現在支援螢幕外文件。這些程式庫能支援 DOM 相關功能和 API,協助您從背景頁面轉換至擴充功能服務工作處理程序。詳情請參閱這篇網誌文章。
Chrome 110:已啟用擴充功能
chrome.action.isEnabled()
方法會以程式輔助方式檢查特定分頁是否已啟用擴充功能。這樣就不必持續維持分頁的啟用狀態。這個新方法會使用分頁 ID 和回呼的參照,並傳回布林值。這項政策有一項限制:使用 chrome.declarativeContent
建立的分頁一律會傳回 false。
(chrome.action
命名空間最近有了新方法,可控制擴充功能標記的外觀。詳情請參閱設定徽章顏色)。
Chrome 110:變更 Service Worker 閒置逾時
先前擴充功能 Service Worker 通常會在五分鐘時關閉。我們修改了這項行為,使其更接近網路上的服務工作人員生命週期。擴充功能 Service Worker 會在閒置 30 秒後關閉,或是單一活動處理時間超過 5 分鐘。詳情請參閱延長擴充功能 Service Worker 生命週期。
貼文:暫停 Manifest V2
我們正在審核 Manifest V2 的淘汰時間表,目前排定的 2023 年初的實驗會延後。詳情請參閱 chromium-extensions Google 群組中的閱讀更新。
Chrome 110:設定徽章顏色
chrome.action
命名空間提供兩種新方法,可讓您進一步控管外觀擴充功能標記。setBadgeTextColor()
和 getBadgeTextColor()
方法可讓擴充功能變更及查詢工具列圖示的文字顏色。與 setBadgeBackgroundColor
和 getBadgeBackgroundColor
搭配使用時,您可以強制執行設計和品牌一致性。
網誌文章:進一步瞭解轉換至 Manifest V3
我們已釐清 Manifest V2 的淘汰時間表。為了反映這項資訊,Manifest V2 支援時間表也已更新。
文件更新:遷移至 Manifest V3 的已知問題
我們整理了一份清單,列出目前開發中的主要功能以及尚未解決的錯誤。本頁面的目標是協助開發人員深入瞭解平台的目前狀態,以及開發人員可以為未來做準備時指定的目標功能。
Chrome 線上應用程式商店:「大型宣傳資訊方塊」已移除上傳的圖片
Chrome 線上應用程式商店已移除「大型宣傳資訊方塊」開發人員資訊主頁的「商店資訊」分頁提供上傳使用者介面。這項變更不會影響使用者體驗,因為這些圖片並未用於消費者 UI。詳情請參閱這篇 chromium-extensions 文章。
Chrome 106:允許 file:// urls 中的網頁存取可透過網路存取的資源
依據 crbug.com/1219825#c11 的說明,不透明的來源 (例如沙箱式 iframe 和動態匯入) 也應能存取可透過網路存取的資源。
Chrome 106:修正某些非同步 API 函式允許錯誤最終引數的錯誤
先前,呼叫 async API 的 Manifest V3 可能會提供無效的最終引數,Chrome 則不會發生錯誤。這項修正後,Chrome 現在可以正確錯誤,並回報沒有相符的簽名。我們建議開發人員在 Canary 上檢查擴充功能,以防不小心在因這項錯誤修正而造成的 API 呼叫中,使用了錯誤的簽章。
網誌文章:Chrome 線上應用程式商店數據分析異動
Chrome 線上應用程式商店為 Chrome 線上應用程式商店開發人員資訊主頁推出全新改版的項目分析功能。新版資訊主頁不僅簡單易懂,還能直接整合最實用的資訊。詳情請參閱這篇網誌文章。
Chrome 105:Identity API 的承諾
現在起 Identity API 中的函式
都代表撥打承諾的電話。這個新功能的介面有細微變動
identity.getAuthToken()
,其中
設為承諾的呼叫的非同步回傳會包含「token」和「grantedScopes」做為參數
就如同回呼版本,系統會將這些物件做為個別引數
回呼)。
Chrome 104:Manifest V3 適用的全新網站小圖示 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 必須立即在 extension_pages
的
content_security_policy
宣告。
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() 中插入屬性
chrome.scripting.executeScript()
現在接受選用的 injectImmediately
屬性
injection
引數。如果存在且設為 true,指令碼會立即插入目標中
而不必等待 document_idle
。請注意,這不保證指令碼一定會
在網頁載入前插入 插入。因為在進行 API 呼叫時,網頁會繼續載入。
Chrome 102:Manifest V3 中的 Omnibox API 支援
您現在可以在以 Service Worker 為基礎的環境中使用 Omnibox API 。先前,這個 API 的部分方法會在叫用時 而依賴 DOM 的功能
Chrome 102:Manifest V3 CSP 允許使用 wasm-unsafe-eval
Manifest V3 擴充功能現可在 content_security_policy
中加入 wasm-unsafe-eval
宣告的內容這項變更允許 Manifest V3 擴充功能使用 WebAssembly。
Chrome 102:新增 storage.session API
Manifest V3 擴充功能現在可以在記憶體儲存空間 storage.session 中使用。
文件更新:搜尋 Chrome 線上應用程式商店項目
在 Chrome 線上應用程式商店探索功能:概略瞭解使用者尋找項目的方式 以及我們的編輯如何選擇項目來作為精選內容。
Chrome 指南:改善 declarativeNetRequest 網域條件
現已套用 declarativeNetRequest 規則條件
已更新,讓擴充功能可以根據要求的「要求」更精準地指定要求和
「發起者」網域。相關條件屬性為 initiatorDomains
excludedInitiatorDomains
、requestDomains
和excludedRequestDomains
。另請參閱
chromium-extensions 執行緒。
Chrome 100:已解決新建分頁上的 Scripting.executeScript() 問題
修正在新建立的分頁中呼叫 scripting.executeScript()
的長期問題。
可能會失敗
Chrome 100:內建訊息傳遞通訊埠可讓 Service Worker 保持運作
在擴充功能的 chrome.runtime.connectNative()
中使用 chrome.runtime.connectNative()
連線至內建訊息傳遞主機
只要通訊埠為開啟狀態,Service Worker 就會讓 Service Worker 保持運作。
Chrome 100:omnibox.setDefaultSuggestion() 支援承諾和回呼
omnibox.setDefaultSuggestion()
敬上
方法現在會傳回承諾或接受回呼,讓開發人員判斷
已正確設定建議
Chrome 100:擴充功能 Service Worker 支援 i18n.getMessage()
chrome.i18n.getMessage()
API 現已
包含在擴充功能 Service Worker 環境中
Chrome 99:Canary 版 match_origin_as_fallback
內容指令碼現在可以指定要插入到以下影格中的 match_origin_as_fallback
鍵
與相符的影格有關,包括含有 about:
、data:
、blob:
和 filesystem:
的影格
網址。請參閱內容指令碼
說明文件。
Chrome 99:擴充功能 Service Worker 支援檔案:Canary 版配置
Service Worker 的 Manifest V2 和 Manifest V3 擴充功能現在可以使用 Fetch API 提出要求
file:
通訊協定的網址。如要存取 file:
個配置的網址,使用者仍需啟用「允許存取」
「建立新檔案網址」該擴充功能的 chrome://extensions
頁面。
Chrome 99:Canary 版訊息 API 保證支援
Promise 支援已新增至
tabs.sendMessage
、
runtime.sendMessage
和
runtime.sendNativeMessage
:
專為 Manifest V3 建立的擴充功能
文件更新:Chrome 線上應用程式商店評論說明文件
新增新的參考頁面,提供 Chrome 總覽 線上應用程式商店審查程序,以及說明《開發人員計畫政策》的違規處置處理方式。
Chrome 98:scripting.executeScript() 和 Scripting.insertCSS() 接受多個檔案
Scripting API 的 executeScript()
和 insertCSS()
種方法現在接受
多個檔案先前這些方法需要使用單一檔案項目的陣列。
Google 文件更新:查看違規事項疑難排解異動資訊
建議您參閱「Chrome 線上應用程式商店違規事項疑難排解」頁面 更新,針對導致應用程式遭拒的常見原因,提供更詳細的指南。
Chrome 96:將承諾支援拓展至另外 27 個 API
與先前版本相比,這個版本包含的承諾更新大幅增加。更新內容包括: 一般和 ChromeOS 專屬擴充功能 API請展開下列各節瞭解詳情。
擴充功能 API
許多 API 現在支援 Manifest V3 中的承諾。
chrome.browsingData
chrome.commands
chrome.contentSettings
chrome.debugger
chrome.downloads
chrome.enterprise.hardwarePlatform
chrome.fontSettings
chrome.history
chrome.instanceID
chrome.permissions
chrome.processes
chrome.search
chrome.sessions
chrome.topSites
此外,使用 ChromeSetting
的 API
原型現在也支援承諾下列 API 會受到這項異動影響。
ChromeOS API
chrome.certificateProvider
chrome.documentScan
chrome.enterprise.deviceAttributes
chrome.enterprise.networkingAttributes
chrome.fileBrowserHandler
chrome.fileSystemProvider
chrome.loginState
chrome.printingMetrics
chrome.wallpaper
Chrome 96:動態內容指令碼
chrome.scripting
API 現已支援
註冊,
更新中、
取消註冊及取得內容指令碼清單
執行程式碼先前只能在擴充功能的
manifest.json,或透過程式在執行階段插入
chrome.scripting.executeScript()
。
文件更新:Manifest V2 支援時間軸
我們已在這篇網誌文章中宣布 Manifest V2 到 V3 的轉換時程。 發布更詳細的時間軸頁面。
Chrome 96:declarativeNetRequestWithHostAccess 權限
新的 declarativeNetRequestWithHostAccess
權限允許擴充功能使用
chrome.declarativeNetRequest
擴充功能擁有主機權限。這麼做也會啟用使用
可將 webRequest
、webRequestBlocking
和網站專屬主機權限遷移至
chrome.declarativeNetRequest
API,不使用
要求使用者核准新權限。
Chrome 95:直接在網頁中插入指令碼
chrome.scripting
API 的
executeScript()
方法現在可以
直接將指令碼插入網頁的主要世界。先前只能直接插入擴充功能
複製到擴充功能的獨立世界如要進一步瞭解獨立世界,請參閱說明文件
內容指令碼一文。
Chrome 95:承諾支援 Storage API
chrome.storage
Manifest V3 版本的方法
API 現在會傳回保證。
政策更新:強制執行兩步驟驗證
我們在 2021 年 6 月 29 日發布的政策更新網誌文章已更新 修正兩步驟驗證部署時程。
Chrome 94:宣告式網路要求靜態規則集變更
chrome.declarativeNetRequest
現在支援
指定多達 50 個靜態規則集
(MAX_NUMBER_OF_STATIC_RULESETS)
最多可啟用 10 個規則集
(MAX_NUMBER_OF_ENABLED_STATIC_RULESETS)
逐步完成任務。
Chrome 93:支援跨來源隔離功能
Manifest V2 和 Manifest 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 為主的新 API
等一下,編寫程式在本文中,我們會深入探討這個改變的動機,並深入探討
它具備新功能閱讀貼文。
Chrome 92:模組 Service Worker 支援
Chrome 現在支援在 Service Worker 中使用 JavaScript 模組。如何在 資訊清單:
"background": {
"service_worker": "script.js",
"type": "module"
}
這會以 ES 模組的形式載入工作站指令碼,讓您能在 import
用來匯入其他模組的 worker 指令碼。
Chrome 91:chrome.action.getUserSettings()
而
chrome.action.getUserSettings()
敬上
方法可讓擴充功能判斷使用者是否已將擴充功能固定至主要工具列。
Chrome 90:chrome.scripting.removeCSS()
新版 chrome.scripting.removeCSS()
方法可讓擴充功能移除先前透過
chrome.scripting.insertCSS()
。這項服務
取代 chrome.tabs.removeCSS()
。
Chrome 90:傳回 Scripting.executeScript() 的承諾
現付 chrome.scripting.executeScript()
支援傳回保證如果執行指令碼後產生的值是承諾值,Chrome
會等待承諾的結果解決並傳回結果值。
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 擴充功能團隊提供開放原始碼「擴充功能資訊清單轉換工具」, 會自動將擴充功能轉換成 Manifest V3 的某些機械層面詳情請參閱 公告網誌文章,並從 GitHub 取得。
Chrome 88:Manifest V3 正式發布
Manifest V3 是擴充功能平台的重大更新。請參閱 Manifest V3 總覽,瞭解全新和經過變更的功能。額外資訊 目前可能繼續使用 Manifest V2,但近期將逐步淘汰這項功能。我們強 建議所有新的擴充功能使用 Manifest V3,並開始遷移現有擴充功能 。