Chrome 120 Beta 版現已推出,其中包含許多令人期待的 Chrome 擴充功能開發人員更新。
Chrome 擴充功能團隊今年非常忙碌,隨著昨天的 Chrome 120 Beta 版發布,擴充功能平台又向前邁進了一大步。如要瞭解今年發生的重大事件,請參閱 7 月和 10 月的季度更新。請繼續閱讀,瞭解 Chrome 120 擴充功能的新功能。
縮小平台差距
隨著 Chrome 120 版發布,我們將解決資訊清單 V3 已知問題頁面列出的其餘平台差異。我們現在可以從清單中劃掉最後兩項:新的 userScript API,以及 ChromeOS 檔案處理支援。連同先前季度更新中說明的變更,我們對 Chrome 擴充功能平台目前的狀態,以及過去一年所完成的成就感到非常滿意。
全新 userScripts API
使用者腳本支援功能已推出!使用者指令碼通常是相對較小的程式碼片段,擴充功能可將其插入網頁,藉此修改網頁的外觀或行為。使用者可以直接建立,也可以在網路上各種不同的使用者指令碼存放區中探索。自 Chrome 120 版起,Manifest V3 擴充功能現在可以管理使用者指令碼的集合,並決定何時及如何將指令碼插入網頁。
在 Manifest V2 和 Manifest V3 中,使用者指令碼支援有一項重大差異。使用者指令碼功能強大,因此使用者必須高度信任指令碼作者,Chrome 團隊才會允許執行。為此,使用者必須先選擇啟用開發人員模式,才能執行使用者指令碼。
我們的新 userScript 範例示範了偵測開發人員模式是否已啟用,以及提供簡單的新手上路流程。
提高靜態 DNR 規則集上限
我們大幅提高已啟用靜態規則集的上限,從 10 個增加至 50 個。此外,我們也將允許的靜態規則集總數從 50 個增加到 100 個。這是我們根據 Web Extensions 社群群組收到的意見回饋所做的調整。
全新 ReadingList API
Chrome 在 2021 年推出閱讀清單功能,去年,Chrome 團隊在側邊面板中新增閱讀清單,讓使用者更容易存取。在 Chrome 120 中,我們新增了 Chrome 擴充功能建立、讀取、更新及刪除閱讀清單項目的功能。詳情請參閱 API 說明文件和新範例。
ChromeOS 上的檔案處理
擴充功能可透過檔案處理功能,開啟具有指定 MIME 類型和副檔名的檔案,方式與網頁平台檔案處理功能類似。如要進一步瞭解如何使用這項功能,請參閱「在 ChromeOS 上處理檔案」。
30 秒後觸發警報
這項更新規模不大,但解決了 Service Worker 生命週期中的重要缺口。由於 Service Worker 是事件驅動型,因此建議使用 chrome.alarms 在未來觸發事件。即使服務工作人員在這段期間關閉,Alarms API 仍可確保觸發事件。
不過,請特別留意相關限制。在 Chrome 120 之前的版本中,觸發鬧鐘的最短時間間隔為一分鐘。不過,服務工作人員會在閒置 30 秒後關閉。因此,無法直接排定 45 秒後觸發的鬧鐘,因為使用 setTimeout() 在 45 秒後設定事件時,服務工作人員可能會在事件觸發前關閉。
從 Chrome 120 開始,您可以在下列位置觸發事件:
- 使用
setTimeout()錄製的影片長度不得超過 30 秒。 - 使用
chrome.alarms製作長度 30 秒以上的影片:
await chrome.alarms.create('demo-default-alarm', {
periodInMinutes: 0.45
});
摘要
我們很高興擴充功能平台在過去一年取得的進展。Chrome 120 再次邁出重大一步,不僅提高了 DNR 限制,還支援使用者指令碼。