以下是一些注意事項:
- 資訊清單
id
屬性可讓您為 PWA 指定專屬 ID。 protocol_handlers
屬性可讓您在安裝時自動將 PWA 註冊為通訊協定處理常式。- 優先順序提示來源試用版可讓您指定下載資源的擷取優先順序。
- 您可以強制將 Chrome 版本設為 100,以測試程式碼對三位數版本號碼的反應。
- Chrome 開發人員高峰會的影片已全部上線。
- 還有許多其他功能。
我是 Pete LePage,終於可以在攝影棚拍攝影片了,讓我們一起來看看 Chrome 96 為開發人員帶來哪些新功能。
PWA 的資訊清單 id
使用者安裝 PWA 時,瀏覽器需要有方法來識別 PWA。不過,直到最近,網頁應用程式資訊清單規格才指定如何識別 PWA,讓瀏覽器自行決定,進而導致不同的實作方式。在某些瀏覽器中,會使用 start_url
,在其他瀏覽器中則會使用資訊清單檔案的路徑。
因此,如果要變更這兩個欄位,就必須避免破壞安裝體驗。現已提供新的選用 id
屬性,可讓您明確定義 PWA 所用的 ID。
將 id
屬性新增至資訊清單,即可移除對 start_url
或資訊清單位置的依附性,並讓這些欄位更新。
{
...
id: "/?homescreen=1",
start_url: "/?homescreen=1",
...
}
id
屬性支援功能已在 Chrome 96 開始支援的電腦版 Chromium 瀏覽器推出。行動裝置支援功能 (目前使用資訊清單網址做為專屬 ID) 預計將於 2022 年上半年推出。
如果您已在實際工作環境中發布 PWA,並想在資訊清單中新增 id
,就必須使用瀏覽器指派的 ID。您可以在「開發人員工具」的「應用程式」面板的「資訊清單」窗格中找到 id
。
對於全新的 PWA,您可以將 id
設為任何字串值,但請注意,日後無法變更,因此請謹慎選擇。
{
...
id: "SquooshApp",
start_url: "/?homescreen=1",
...
}
詳情請參閱「使用網頁應用程式資訊清單 ID 屬性來獨立識別 PWA」。
PWA 的網址通訊協定處理常式
網路應用程式可以使用 navigator.registerProtocolHandler()
註冊為通訊協定處理常式。例如,Gmail 可以註冊 mailto
通訊協定。接著,當使用者點選含有 mailto:
前置字串的連結時,系統就會開啟 Gmail,讓使用者輕鬆傳送電子郵件。
自 Chrome 96 版起,PWA 可在安裝過程中註冊為通訊協定處理常式。如要為 PWA 執行這項操作,請在網路應用程式資訊清單中新增 protocol_handlers
屬性,指定要處理的 protocol
,以及點選時應開啟的 url
。
...
"protocol_handlers": [
{
"protocol": "web+tea",
"url": "/tea?type=%s"
},
{
"protocol": "web+coffee",
"url": "/coffee?type=%s"
}
]
}
這裡有一些限制,您無法註冊任何通訊協定,因此請參閱「PWA 的網址通訊協定處理常式註冊」一文,瞭解完整詳細資訊,以及如何使用 web+
語法建立自己的通訊協定!
優先順序提示 (來源試用版)
當瀏覽器剖析網頁並開始發現及下載圖片、指令碼或 CSS 等資源時,會為這些資源指派擷取優先順序,以便盡可能最佳化網頁載入作業。瀏覽器在指派優先順序方面表現相當出色,但在某些情況下可能並非最佳做法。
優先順序提示是實驗功能,自 Chrome 96 版起提供來源試用計畫,可協助最佳化 Core Web Vitals。importance
屬性可讓您指定 CSS、字型、指令碼、圖片和 iframe 等資源類型的優先順序。
<!-- We don't want a high priority for this above-the-fold image -->
<img src="/not-important.svg" importance="low">
<!-- Initiate an early fetch for a resource, but de-prioritize it -->
<link rel="preload" href="/script.js" as="script" importance="low">
<script>
fetch('https://example.com/', {importance: 'high'})
.then(data => {
// Trigger a high priority fetch
});
</script>
例如,這是 Google 航班/機票頁面。該背景圖片就是最大內容繪製 (LCP)。
讓我們看看在有和沒有優先順序提示的情況下,這項功能載入的情形。將背景圖片的優先順序設為 high
後,LCP 從 2.6 秒降至 1.9 秒。
請參閱「使用 Fetch Priority API 最佳化資源載入」一文,瞭解所有詳細資訊、如何註冊原始試用版,以及一些實例,瞭解如何利用這項 API 改善算繪效能。
在使用者代理程式字串中模擬 Chrome 100
我們將在明年初推出 Chrome 100,屆時版本號碼將是三位數。請檢查所有檢查版本號碼或剖析通用 Analytics 字串的程式碼,確保這些程式碼可處理三位數。
從 Chrome 96 版開始,有一個新的標記 #force-major-version-to-100
會將目前的版本號碼變更為 100,讓您確保一切運作正常。
詳情請參閱「在 User-Agent 字串中強制將 Chrome 主要版本設為 100」。
Chrome 開發人員高峰會
這就是 Chrome 開發人員高峰會的全部內容。所有影片和內容皆可在線上取得。請造訪 Chrome 開發人員高峰會網站。如果您錯過了主題演講或直播,請前往 Chrome 開發人員 YouTube 頻道查看 CDS 播放清單。
還有更多獎品等著您!
當然,還有許多其他功能。
- 返回、前進快取 (或
bfcache
) 現已在穩定版中提供,讓 Chrome 與 Firefox 和 Safari 保持一致。
延伸閱讀
這份文件僅涵蓋部分重點。請參閱下方連結,瞭解 Chrome 96 的其他異動。
- Chrome 開發人員工具 (96 版) 的新功能
- Chrome 96 淘汰和移除的項目
- Chrome 96 的 ChromeStatus.com 更新
- Chrome 96 版 JavaScript 的新功能
- Chromium 來源存放區變更清單
- Chrome 發布時程表
訂閱
如要隨時掌握最新消息,請訂閱 Chrome 開發人員 YouTube 頻道,這樣一來,我們發布新影片時,你就會收到電子郵件通知。
我是 Pete LePage,Chrome 97 一推出,我就會在這裡告訴你 Chrome 有哪些新功能!