使用「Application」面板檢查、修改及偵錯網頁應用程式資訊清單、Service Worker 和 Service Worker 快取。
漸進式網頁應用程式 (PWA) 是以網頁技術建構的新型優質應用程式, PWA 的功能與 iOS、Android 和電腦應用程式類似。這些因素包括:
- 即使網路不穩定,也能穩定可靠。
- 安裝後即可啟動作業系統介面,例如 Mac OS X 上的「Applications」資料夾、Windows 的「Start」選單,以及 Android 和 iOS 的主畫面。
- 並顯示在活動切換器、裝置搜尋引擎 (如 Spotlight) 和內容分享試算表中。
本指南僅討論「應用程式」面板的漸進式網頁應用程式功能,如需其他窗格的說明,請參閱本指南的最後一節:其他應用程式面板指南。
摘要
- 使用「Manifest」分頁檢查網頁應用程式資訊清單。
- 您可以使用「Service Workers」分頁進行各種服務工作站相關工作,例如取消註冊或更新服務、模擬推送事件、離線啟動,或停止服務工作站。
- 在「快取儲存空間」分頁中查看 Service Worker 快取。
- 取消註冊 Service Worker 並清除所有儲存空間和快取,只要在「Clear storage」(清除儲存空間) 分頁中按一下按鈕即可。
網頁應用程式資訊清單
如果您想讓使用者將應用程式新增至 Mac OS X 的「Applications」資料夾、Windows 的「Start」選單,以及 Android 和 iOS 的主畫面,您必須具備網頁應用程式資訊清單。資訊清單會定義應用程式在主畫面的顯示方式、從主畫面啟動應用程式時將使用者導向哪個位置,以及應用程式啟動時的外觀。
資訊清單設定完成後,您就能使用「Application」面板的「Manifest」分頁進行檢查。
- 如要查看資訊清單來源,請點選下方「應用程式資訊清單」標籤 (上方螢幕截圖中的
manifest.webmanifest
) 下方的連結。 - 「身分」和「呈現方式」部分只會以較容易使用的方式顯示資訊清單來源的欄位。
- 在「通訊協定處理常式」部分中,只要按一下按鈕,即可測試 PWA 的網址通訊協定處理常式註冊作業。 詳情請參閱「測試網址通訊協定處理常式註冊」。
- 圖示部分會顯示您指定的每個圖示,供您查看其遮罩。
- 「Shortcut #N」區段會顯示所有捷徑物件的資訊。
- 「螢幕截圖 #N」部分的區段顯示螢幕截圖,藉此為應用程式提供更豐富的安裝 UI。
此外,如果 DevTools 發生錯誤 (例如無法載入的圖示),「資訊清單」分頁就會顯示「可安裝性」部分來說明錯誤。
查看及檢查可遮蓋的圖示
「Manifest」分頁的「Icons」部分會顯示應用程式的所有圖示。在本節中,您也可以查看可遮蓋的圖示 (即適應平台的圖示格式) 的安全區域。
如要裁剪圖示,讓畫面上只顯示最小的安全區域,請勾選 「僅顯示可遮蓋圖示的最小安全區域」。
如果整個標誌都顯示在安全區域內,就不用擔心。
觸發條件安裝
Chrome 可讓您在使用者介面中直接啟用及鼓勵安裝 PWA。 瞭解如何提供自己的應用程式內安裝體驗。
如何觸發 PWA 的安裝流程:
- 在 Chrome 中開啟 PWA 的到達網頁。
在頂端的網址列右側按一下 「安裝」。
按照畫面上的指示操作。
「安裝應用程式」功能無法模擬行動裝置的工作流程。請注意,即使開發人員工具處於裝置模式,電腦版 Chrome 瀏覽器仍會在網址列顯示安裝按鈕。不過,如果您可以將應用程式成功新增至電腦,那麼行動裝置也能使用這個應用程式。
如要測試真實的行動裝置體驗,您可以透過遠端偵錯功能將實際行動裝置連結至開發人員工具。如要在已連結的行動裝置上觸發安裝程序,請開啟 三點圖示選單,然後按一下 「安裝應用程式」。
檢查捷徑
應用程式捷徑可讓您快速存取使用者經常需要執行的一些常用動作。
如要檢查您在資訊清單檔案中定義的捷徑,請捲動至「資訊清單」分頁的「Shortcut #N」部分。
檢查螢幕截圖,打造更豐富的安裝 UI
只要在資訊清單檔案中加入說明和一組螢幕截圖,應用程式就能顯示更豐富的安裝對話方塊。
如要檢查螢幕截圖,請捲動至「Manifest」分頁的「Screenshot #N」部分。
測試網址通訊協定處理常式註冊
PWA 可以處理使用特定通訊協定的連結,藉此提供更貼近需求的整合體驗。 如要瞭解如何建立處理常式,請參閱 PWA 的網址通訊協定處理常式註冊。
如要測試處理常式:
- 在 PWA 的到達網頁上開啟開發人員工具。請參考這個示範 PWA 的示例。
- 請在示範網頁中安裝 PWA,並在安裝完成後重新載入應用程式。瀏覽器現已將 PWA 註冊為
web+coffee
通訊協定的處理常式。 - 在「Application」(應用程式) >「Manifest」(資訊清單) >「Protocol Handler」(通訊協定處理常式) 部分中,輸入要讓處理常式測試的網址,然後按一下「TestProtocol」。
在這個範例中,處理常式可以處理
americano
、chai
和latte-macchiato
。 - 當 Chrome 詢問您是否可以開啟應用程式時,請按一下「Open Protocol Handler」加以確認。
- 在下一個對話方塊中,允許應用程式處理
web+coffee
連結。
如果處理常式成功處理連結,就會在應用程式中開啟咖啡杯的圖片。
Service Worker
Service Worker 是未來網路平台的基礎技術。這些指令碼是瀏覽器在背景執行,與網頁分開執行。這些指令碼可讓您存取不需要網頁或使用者互動的功能,例如推播通知、背景同步處理和離線體驗。
相關指南:
「Application」面板中的「Service Workers」分頁是開發人員工具檢查及偵錯服務工作站的主要位置。
- 如果 Service Worker 已安裝到目前開啟的頁面,這個分頁中就會顯示該工作站。舉例來說,在上方螢幕截圖中,
https://airhorner.com/
範圍安裝了 Service Worker。 - 「離線」核取方塊可將開發人員工具進入離線模式。這相當於「Network」面板提供的離線模式,或「Command」選單中的
Go offline
選項。 - 「重新載入時更新」核取方塊會強制 Service Worker 在每次載入網頁時更新。
- 「略過網路」核取方塊會略過 Service Worker,並強制瀏覽器前往網路來滿足要求的資源。
- 「網路要求」連結會將您導向「網路」面板,當中會列出與 Service Worker (
is:service-worker-intercepted
篩選器) 相關的攔截要求。 - 更新連結會對指定的 Service Worker 執行一次性更新。
- 「推」按鈕會模擬推播通知,不帶酬載 (也稱為勾號)。
- 「同步處理」按鈕可模擬背景同步處理事件。
- 「Unregister」連結會取消註冊指定的 Service Worker。如要瞭解如何取消註冊 Service Worker,以及清除儲存空間和快取,請參閱清除儲存空間。
- 「Source」行會告訴您目前執行中的 Service Worker 的安裝時間。連結是服務工作站來源檔案的名稱。點選連結將會前往服務工作站的來源。
- 「Status」行會顯示 Service Worker 的狀態。這行的數字 (螢幕截圖中的
#16
) 表示 Service Worker 已更新的次數。如果您啟用 「在重新載入時更新」核取方塊,將會發現每次載入網頁時,數字會增加。狀態旁邊會顯示 start 連結 (如果 Service Worker 已停止) 或 stop 連結 (如果 Service Worker 正在執行)。Service Worker 的設計可讓瀏覽器隨時停止及啟動。而使用 stop 連結明確停止服務工作站,就能模擬出此情況。停止 Service Worker 是測試服務工作站再次重新啟動時程式碼行為的好方法。這經常是因為對持續性全域狀態有錯誤假設而造成錯誤。 - Clients 行會指出 Service Worker 的範圍。如果有多個已註冊的 Service Worker,焦點按鈕最實用。當您點選在另一個分頁執行的 Service Worker 旁的 [Focus] (聚焦) 按鈕,Chrome 會聚焦於該分頁。
「Update Cycle」表格會顯示服務 worker 的活動和經過時間,例如安裝、等待和啟用時間。如要查看每個活動的確切時間戳記,請按一下 「Expand」(展開) 按鈕。
詳情請參閱「Service Worker 生命週期」。
如果 Service Worker 造成任何錯誤,「Service Workers」分頁標籤會顯示 「Error」圖示,並在「Source」行旁邊顯示錯誤數量。這個連結會將您導向含有所有記錄錯誤的控制台。
如要查看所有 Service Worker 的相關資訊,請按一下「Service Workers」分頁標籤底部的「See all registrations」。此連結會前往 chrome://serviceworker-internals/?devtools
,方便您進一步對服務工作站偵錯。
Service Worker 快取
「Cache Storage」分頁提供已使用 (服務工作站) Cache API 快取的資源唯讀清單。
請注意,第一次開啟快取並在其中新增資源時,開發人員工具可能無法偵測到變更。重新載入網頁,您應該會看到快取。
如果您開啟兩個以上的快取,這些快取會列在 [快取儲存空間] 下拉式選單下方。
配額使用量
「快取儲存空間」分頁中的部分回應可能會標記為「不透明」。這是指在未啟用 CORS 的情況下,從不同來源 (例如 CDN 或遠端 API) 擷取的回應。
為避免跨網域資訊外洩,在計算儲存空間配額限制 (例如是否擲回 QuotaExceeded
例外狀況) 以及由 navigator.storage
API 回報時,在不透明回應中加入了明顯的邊框間距。
這項邊框間距的細節會因瀏覽器而異,不過對 Google Chrome 而言,這表示任何單一快取不透明回應計入整體儲存空間用量的「最小」大小約為 7 MB。在決定要快取的不透明回應數量時,請記住這點,因為以不透明資源的實際大小為基礎,很容易會比預期更快超出儲存空間配額限制。
相關指南:
清除儲存空間
開發漸進式網頁應用程式時,「清除儲存空間」分頁是相當實用的功能。只要在這個分頁中按一下,就能取消註冊 Service Worker,並清除所有快取和儲存空間。詳情請參閱以下章節。
相關指南:
其他應用程式面板指南
如要進一步瞭解「Application」面板的其他窗格,請參閱下列指南。
相關指南: