Chrome 94穩定版發(fā)布:默認支持空閑檢測API引發(fā)争議
上月發(fā)布的 Chrome 93 穩定版本爲桌面(miàn)端添加了對(duì) WebOTP 的支持,并廢除了傳輸層安全(TLS)中的 3DES 密碼套件。今天,Google 正式發(fā)布了 Chrome 94 穩定版。由于 Google 將(jiāng)發(fā)布周期從此前的 6 周縮短至 4 周,而且距離上個版本發(fā)布僅有 3 周時(shí)間,因此 Chrome 94 的更新幅度相對(duì)較小。
下載地址:https://www.google.com/intl/zh-CN/chrome/
Chrome 94 穩定版最具争議的地方就(jiù)是引入了對(duì)空閑檢測 API 的支持。新版本爲開(kāi)發(fā)者提供更多信号,以了解用戶何時(shí)處于閑置狀态。
面(miàn)向(xiàng)開(kāi)發(fā)者的通知現在將(jiāng)對(duì)全局信号進(jìn)行觸發(fā),如與其他應用程序的互動,而不僅僅是當前的浏覽器窗口。雖然網絡開(kāi)發(fā)者的反應顯然是積極的,但 Mozilla 卻認爲該 API 是有害的,理由是“監視資本主義的機會(huì)”,以及惡意網站可以利用該 API,在用戶不同意或不知道(dào)的情況下最大限度地利用設備的計算資源。
同樣,WebKit(也就(jiù)是蘋果 Safari 的浏覽器引擎)背後(hòu)開(kāi)發(fā)團隊也站在了對(duì)立面(miàn)。團隊表示:
沒(méi)有充足的理由來使用這(zhè)個 API。首先,不能(néng)保證用戶不會(huì)立即回到設備上。另外,這(zhè)樣的服務應該由誰來知道(dào)用戶在任何時(shí)候可能(néng)使用的其他設備?我們肯定不會(huì)讓一個網站知道(dào)一個特定的用戶在任何時(shí)候可能(néng)使用的所有設備。這(zhè)是對(duì)上述用戶的隐私的非常嚴重的侵犯。在我看來,這(zhè)樣的壓制/分發(fā)機制最好(hǎo)留給底層操作系統/網絡浏覽器來處理。
在這(zhè)一點上,我將(jiāng)停止對(duì)這(zhè)個主題的回應,因爲這(zhè)裡(lǐ)或其他地方提出的用例沒(méi)有一個是令人信服的,而且你在這(zhè)裡(lǐ)提出的和我在其他地方發(fā)現的隐私或安全緩解措施沒(méi)有一個是充分的。然而,不回應這(zhè)個主題或未來關于這(zhè)個主題的主題并不意味著(zhe)我們會(huì)重新考慮我們的立場。除非在我們提出的任何一個問題上有重大的新進(jìn)展,否則我們的立場仍將(jiāng)是反對(duì)增加這(zhè)個 API,除非另有說(shuō)明,無論我們是否繼續在公開(kāi)場合這(zhè)麼(me)說(shuō)。
無論如何,這(zhè)個 API 將(jiāng)在 Chrome 94 中提供給開(kāi)發(fā)者使用,并將(jiāng)默認啓用。
Chrome 94 中包含的另一個新的開(kāi)發(fā)者界面(miàn)是虛拟鍵盤 API。其動機是讓網頁開(kāi)發(fā)者在如何放置虛拟鍵盤及其形狀方面(miàn)有更多控制權。目前,這(zhè)完全是由用戶代理行爲處理的。微軟 Edge 團隊對(duì)該 API 的反饋是積極的,鑒于他們參與了該 API 的開(kāi)發(fā),這(zhè)是有道(dào)理的。然而,Mozilla 和蘋果還(hái)沒(méi)有提供态度。
Chrome 94 還(hái)將(jiāng)帶來對(duì)低級别的 WebCodecs API 的支持,它將(jiāng)提供對(duì)現有硬件和軟件媒體編碼器和解碼器的訪問。這(zhè)將(jiāng)提高某些應用程序的性能(néng),如對(duì)延遲敏感的遊戲流。
AppCache 也將(jiāng)從 Chrome 94 中被删除。Google 表示,這(zhè)是一個廢棄的标準,是一個安全責任,所以開(kāi)發(fā)者應該使用 Service Workers 來代替。到目前爲止,開(kāi)發(fā)者的反饋不一,但 Mozilla 和蘋果也正在將(jiāng)其從各自的浏覽器中删除。
在相對(duì)較小的變化方面(miàn),Chrome 94 將(jiāng)獲得一個新的顯示捕捉功能(néng)政策,支持 2D 畫布中的更多色彩空間,清理一個被 Flash 使用的 API,一個 CSS 屬性爲布局與滾動條的互動提供更多控制,以及改進(jìn)一個現有屬性以增強 CSS 3D 變換的互操作性。
Chrome 94 還(hái)將(jiāng)包括一個本地調度 API,允許開(kāi)發(fā)者以三個級别的優先級來調度任務:用戶阻擋、用戶可見和背景。它還(hái)啓用了一個任務控制器(TaskController),可以用來動态地改變任務的這(zhè)些優先級或完全取消它。浏覽器還(hái)獲得了一個采樣分析器,以測量 JavaScript 執行時(shí)間和調試性能(néng)問題。