Chrome 99 的淘汰與移除功能

Chrome 99 Beta 版已於 2022 年 2 月 3 日發布,預計在 2022 年 3 月初成為穩定版。

移除不安全來源的 Battery Status API

對於不安全的來源 (例如 HTTP 網頁或 HTTP 網頁中內嵌的 HTTPS iframe),已不再支援 Battery Status API。Battery Status API 可讓網頁開發人員存取系統的電池電量以及是否在充電等等。這項功能問世超過 10 年,最初是針對不同的安全性限制設計而成。

移除字型系列 -webkit-standard

這個版本的 Chrome 不再支援 font-family"-webkit-standard"。這個值只是專屬關鍵字 "-webkit-body" 的別名,由於是從 WebKit 沿用而來,因此一定會公開。移除這個項目可改善 CSS 規格和 Firefox 的一致性。

移除 GamepadList

navigator.getGamepads() 方法現在會傳回 Gamepad 物件的陣列,而不是 GamepadList。Chrome 已不再支援 GamepadList。如此一來,Chrome 就能符合規格 以及 Gecko 和 Webkit 使用如需遊戲控制器的一般資訊,請參閱「使用遊戲手把玩 Chrome 恐龍遊戲」。

更新 WebCodecs 以符合規格

因為 WebCodecs 規格最近有所異動,Chrome 已移除兩個項目

EncodedVideoChunkOutputCallback() 方法會採用 EncodedVideoChunkMetadata 字典。先前名為 temporalLayerId 的成員位於 EncodedVideoChunkMetadata.temporalLayerId。根據規格,目前資料位於 EncodedVideoChunkMetadata.SvcOutputMetadata.temporalLayerId

根據規格要求,VideoFrame() 建構函式必須針對未隱含時間戳記的 CanvasImageSource 類型加入時間戳記引數 (VideoFrameInit.timestamp),例如 HTMLCanvasElement。如未提供時間戳記,則應產生 TypeError,但 Chrome 先前將時間戳記預設為零。雖然這看起來實用,但如果您將 VideoFrame 傳送至 VideoEncoder 利用時間戳記來引導位元率,就會發生問題。

廢止政策

為維持平台的健康狀態,我們有時會從執行課程的網路平台中移除 API。我們移除 API 的原因有很多,例如:

  • 而是由較新的 API 取代。
  • 這些更新會反映規格變更,以便與其他瀏覽器保持一致並保持一致。
  • 這些是從未在其他瀏覽器發生的早期實驗,這可能會增加對網頁開發人員的支援負擔。

其中一些變更會對少數網站產生影響。為及早減少問題,我們嘗試提前通知開發人員,讓他們可以進行必要的變更,確保網站持續運作。

Chrome 目前提供淘汰和移除 API 的程序,基本上:

  • blink-dev 郵寄清單中發布。
  • 在 Chrome 開發人員工具控制台中偵測到用量時設定警告,並給予時間尺度。
  • 請等待系統持續監控,並在用量減少時移除這項功能。

您可以在 chromestatus.com 中使用已淘汰的篩選器,查看所有已淘汰功能的清單,並套用已移除的篩選器。我們也會盡量在這些貼文中摘要說明部分變更、原因和遷移路徑。