Chrome 擴充功能有哪些地方?'

到目前為止,Chrome 擴充功能在 2023 年有許多新進展。我們十分重視您的寶貴意見,並依此改善擴充功能平台和相關文件。我們也持續與 WebExtensions Community Group 中的其他瀏覽器供應商合作,讓擴充功能 API 在各瀏覽器中運作得更一致。

在這篇文章中,我們將向您介紹 Chrome 擴充功能團隊在今年上半年所做的幾項異動,以及本季稍晚即將推出的功能。立即開始!

新的擴充功能 API 和功能

在本節中,我想強調一些重要的 API 推出作業、簡要介紹其他 API 改善項目,並分享即將推出的 API 版本。

特色

螢幕外文件

Offscreen API 已在 Chrome 109 推出。這可讓 Manifest V3 擴充功能處理需要與 DOM 或視窗互動的用途,而這類用途無法在擴充功能服務工作程執行。此外,Chrome 114 還引進了兩個額外的非畫面原因:'WORKERS' 用於文件需要產生 worker 的情況,以及 'LOCAL_STORAGE' 用於協助將資料從 window.localStorage 遷移至 chrome.storage API

自 Chrome 115 起,您可以在建立離螢幕文件時提供多個原因。這樣一來,您就能在同一份文件中執行兩項相關工作。

全新側邊面板 API 🎉?

過去,在擴充功能中建立側欄的唯一方法,就是在每個網頁上注入含有內容指令碼的新元素。Chrome 114 推出了 Side Panel API。您現在可以以更簡單的方式,為使用者開發輔助側欄體驗。進一步瞭解Side Panel API 如何協助您設計出更優質的使用者體驗

字典擴充功能,顯示所選字詞的定義
側邊面板字典擴充功能。請參閱 chrome-extensions-samples 存放區中的程式碼

更強大的 Service Worker

所有擴充功能事件現在都會重新啟動擴充功能服務 worker 的閒置計時器。在 Chrome 110 中,擴充功能服務 worker 的生命週期上限已從五分鐘移除。此外,傳送至原生應用程式擴充功能內訊息的訊息,也會重新啟動閒置計時器。如要進一步瞭解,請參閱「擴充功能服務工作者生命週期」一文。

更多 API 發布

  • Action API:自 Chrome 110 起,您可以使用 setBadgeTextColor()getBadgeTextColor() 自訂徽章文字。此外,您也可以使用 isEnabled() 檢查目前分頁是否已啟用動作。
  • 指令 APIChrome 111 修正了在轉換為 MV3 時,在 "commands._execute_action" 下方資訊清單中宣告的擴充功能捷徑不會保留的錯誤。
  • Downloads API:Chrome 中的預設下載 UI 已從底部的層架移至萬用途工具列的右側。如要停用這項行為,您可以使用 downloads.setUiOptions() 取代 setShelfEnabled()
  • History APIchrome.history.getVisits()chrome.history.search() 也會傳回已同步至本機記錄資料庫的其他裝置資料。這可能會導致歷史記錄項目和造訪次數增加。isLocal 已在 Chrome 115 中加入 VisitItem (預計於本月稍晚推出穩定版),以便只篩選本地造訪。
  • Identity API:驗證視窗現在會以彈出式視窗顯示,而不會佔用整個應用程式視窗。為在 JavaScript 重新導向期間提供更多控制選項,我們新增了 abortOnLoadForNonInteractivetimeoutMsForNonInteractive 兩個選項。
  • Storage API:在 Chrome 112 中,chrome.session 儲存空間大小已增加至 10 MB。接著,我們在 Chrome 114 中將 chrome.local 的儲存空間大小調整為一致。

即將推出...

日後的 Chrome 版本將推出許多功能,讓擴充功能更容易遷移至 Manifest V3。如需即將實施的 MV3 遷移相關異動清單,請參閱已知問題頁面。此外,我們也預計新增下列功能:

請密切留意「擴充功能的新功能」頁面,隨時掌握 Chrome Beta 版的最新消息。

說明文件升級和更多 Manifest V3 指南

我們也一直致力於改善開發人員的學習體驗。感謝所有在 chromium-group 上提問,以及在 developer.chrome.com 上回報說明文件問題的使用者。

特色

  • 新的「MV3 遷移」專區提供實用的方法,可將 Manifest V2 擴充功能轉換為 Manifest V3。
  • 擴充功能 Service Worker 指南提供擴充功能 Service Worker 主題的詳細資訊。包括註冊和更新方式、生命週期、匯入方式等等。
  • 使用 Service Worker 處理事件教學課程會介紹擴充功能 Service Worker 的基本概念。這個擴充功能會建立網址列擴充功能,讓您快速存取擴充功能 API 參考頁面。

更多最新消息

即將推出...

  • 如何將遠端代管的程式碼遷移至 Manifest V3。
  • 如何執行 Chrome 擴充功能的自動化測試。
  • 改善宣告式網路要求指南。
  • 改善內容指令碼說明。

💡? 你知道嗎?

在結束前,我們想分享幾個實用工具和洞察資料:

  • Chrome 開始支援 WebHID;您可以從 Chrome 115 開始試用這個 API (但請注意,這個 API 仍在開發中)。
  • Puppeteer 現在支援使用 --headless=new 在無頭模式下進行測試。如要進一步瞭解這項功能,請參閱 Chrome 無頭模式升級 網誌文章。
  • 您可以使用擴充功能更新測試工具,查看在資訊清單中變更權限時會觸發哪些警告。這樣一來,您就能像使用者一樣體驗更新程序。這點很重要,因為部分權限可能會在使用者重新授予存取權之前,停用擴充功能。

歡迎與我們聯絡!🙌

今年,擴充功能團隊很高興在 Google I/O Connect 活動中與擴充功能開發人員面對面交流。我們正在努力打造新的空間,與你交流互動,例如推出焦點小組和聚會活動。

在此期間,請繼續在 chromium-groups 上發問問題,並考慮加入 WECG,並在 developer.chrome.com GitHub 存放區上回報任何說明文件問題。

再次感謝你加入擴充功能開發人員社群!