本指南詳細說明完整的擴充功能更新流程,涵蓋標準更新程序、手動覆寫、開發人員 API,以及企業政策的重大影響。
標準更新週期
Chrome 會自動將已安裝的擴充功能更新至最新版本,確保使用者能使用新功能和安全性修正。根據預設,Chrome 會在啟動時和每隔幾小時檢查一次擴充功能更新。
更新程序的重要環節是,只有在擴充功能處於閒置狀態時,系統才會安裝更新。如要讓擴充功能處於閒置狀態,其元件不得處於使用中狀態。在 Manifest V3 的脈絡下,這主要表示擴充功能的 Service Worker 未執行。服務工作站的設計宗旨是事件驅動,並會在閒置一段時間後終止。此外,任何開啟的擴充功能頁面 (例如側邊面板、彈出式視窗或選項頁面),都會導致擴充功能無法進入閒置狀態。無論內容指令碼是否處於啟用狀態,都不會影響擴充功能是否處於閒置狀態。
如果擴充功能經常處於活動狀態,這項閒置需求可能會導致更新延遲。如果擴充功能的服務工作人員不斷觸發事件,可能永遠無法進入閒置狀態,更新作業也會延後到瀏覽器重新啟動後才執行。
監控擴充功能更新發布作業
如要瞭解有多少使用者使用擴充功能的最新版本,請使用 Chrome 線上應用程式商店分析資訊主頁。前往 Chrome 線上應用程式商店開發人員資訊主頁,然後選取已發布的擴充功能。在側邊導覽列中,依序前往「Analytics」->「Users」,然後向下捲動至「Daily users by item chart」(每日使用者人數 (依項目)) 圖表。您可以在這裡查看有多少使用者已採用最新版本。
手動更新擴充功能
如果使用者想立即取得最新更新,Chrome 提供手動更新機制。這也是測試更新時的實用工具。
如要強制更新所有已安裝的擴充功能,請按照下列步驟操作:
- 前往 chrome://extensions。
- 使用右上角的切換按鈕啟用「開發人員模式」。
- 按一下隨即顯示的「更新」按鈕。
Chrome 會立即從 Chrome 線上應用程式商店擷取所有已安裝擴充功能的最新版本。
檢查擴充功能的更新
擴充功能可透過 chrome.runtime API 與更新機制互動。
視需要檢查更新
擴充功能可透過 chrome.runtime.requestUpdateCheck() 函式,以程式輔助方式啟動更新檢查。如果擴充功能嚴重依附於後端服務,且需要確保執行最新相容版本,這項功能就特別實用。
呼叫這項函式時,Chrome 會向 Chrome 線上應用程式商店查詢新版本,並在有新版本時下載。函式的回呼會收到狀態,指出檢查結果。
聽取可用的更新
下載更新並準備安裝時,系統會觸發 chrome.runtime.onUpdateAvailable 事件。這個事件會在詳細資料中提供新的版本號碼。擴充功能可以監聽這個事件,判斷是否有可用的更新,並視情況閒置或使用 chrome.runtime.reload() 重新載入。
下列程式碼顯示基本實作模式:
在特殊情況下,您可以使用 chrome.runtime.requestUpdateCheck() 強制瀏覽器檢查擴充功能更新:
請注意,瀏覽器會限制對 requestUpdateCheck() 的呼叫頻率。只有在知道有更新時,才使用這個函式。舉例來說,更新後的後端需要較新版本的擴充功能。
透過企業政策控管更新
在受管理企業環境中,標準擴充功能更新流程會受到系統管理員設定的政策限制。這些政策可以覆寫預設行為,強制執行安全性和穩定性。
強制安裝
管理員可以透過擴充功能強制安裝清單政策,以無訊息方式為使用者安裝特定擴充功能。使用者無法停用或解除安裝透過這項政策安裝的擴充功能。
釘選擴充功能版本
不過,企業通常需要控管使用的擴充功能版本,確保與其他軟體相容。為此,管理員可以將擴充功能「固定」在特定版本。管理員可以在 Google 管理控制台中,為機構單位選取所需版本。擴充功能固定在特定版本後,Chrome 就不會再更新。
覆寫更新來源
企業可基於安全或自訂原因,自行代管擴充功能的衍生版本。o這項設定會強制 Chrome 從指定網址擷取擴充功能及其更新,而非 Chrome 線上應用程式商店。
設定最低 Chrome 版本
您可以在擴充功能的資訊清單檔案中指定 minimum_chrome_version。這樣可確保擴充功能只會安裝在支援所用 API 的 Chrome 版本上。
如果是新安裝的擴充功能,Chrome 線上應用程式商店會禁止舊版 Chrome 使用者安裝,並顯示「不相容」訊息。如果擴充功能更新後,minimum_chrome_version
高於使用者安裝的 Chrome 版本,現有使用者將不會再收到該擴充功能的更新。開發人員應注意這點,並在大部分使用者可能受到影響時通知他們。