變更 PWA 的圖示、快速鍵、顏色和其他中繼資料的必要條件
安裝 PWA 時,瀏覽器會使用網頁應用程式資訊清單中的資訊,包括應用程式名稱、應用程式應使用的圖示,以及啟動應用程式時應開啟的網址。但如果需要更新應用程式快速鍵或嘗試新的主題顏色呢?這些變更何時會反映在瀏覽器中?
一般來說,更新資訊清單後,啟動 PWA 時應該會在一到兩天內反映變更。
電腦版 Chrome 的更新
啟動 PWA 或在瀏覽器分頁中開啟 PWA 時,Chrome 會判斷上次檢查本機資訊清單變更的時間。如果自上次啟動瀏覽器後,或是在過去 24 小時內,系統未檢查過資訊清單,Chrome 會發出資訊清單的網路要求,然後與本機副本進行比較。
如果資訊清單中選取的屬性已變更 (請參閱下方清單),Chrome 會將新資訊清單加入佇列,並在所有視窗關閉後安裝。安裝後,系統會更新新資訊清單中的所有欄位,但 icons 除外。
哪些屬性會觸發更新?
nameshort_namedisplay(請參閱下方)scopeshortcutsstart_url注意:如要變更start_url,必須設定資訊清單id。 瞭解詳情。theme_colorfile_handlers
更新「display」欄位後會發生什麼事?
如果您將應用程式的顯示模式從 browser 更新為 standalone,現有使用者更新後將無法在視窗中開啟應用程式。網頁應用程式有兩種顯示設定:一種來自資訊清單 (由您控管),另一種是使用者控管的視窗和瀏覽器分頁設定。系統一律會尊重使用者的偏好設定。
測試資訊清單更新
「chrome://web-app-internals」頁面 (適用於 Chrome 85 以上版本) 包含裝置上安裝的所有 PWA 詳細資訊,可協助您瞭解資訊清單上次更新時間、更新頻率等。
如要手動強制 Chrome 檢查更新的資訊清單,您可以啟動 Chrome 並使用命令列標記 --disable-manifest-update-throttle,或重新啟動 Chrome (使用 about://restart),這會重設計時器,因此下次啟動 PWA 時,Chrome 會檢查更新的資訊清單。然後啟動 PWA。關閉 PWA 後,系統應會使用新的資訊清單屬性更新 PWA。
參考資料
Android 版 Chrome 的更新
啟動 PWA 時,Chrome 會判斷上次檢查本機資訊清單變更的時間。如果資訊清單在過去 24 小時內未經過檢查,Chrome 會排定資訊清單的網路要求,然後與本機副本進行比較。
如果資訊清單中的特定屬性已變更 (請參閱下方清單),Chrome 會將新資訊清單加入佇列,並在 PWA 的所有視窗關閉後,要求伺服器提供更新的 WebAPK (裝置必須已接上電源並連上 Wi-Fi)。更新後,系統會使用新資訊清單中的所有欄位。
哪些屬性會觸發更新?
nameshort_nameiconsbackground_colordisplayorientationscopeshortcutsstart_urltheme_colorweb_share_target
如果 Chrome 無法從伺服器取得更新的資訊清單,可能會將檢查間隔時間延長至 30 天。
測試資訊清單更新
「about://webapks」頁面會顯示裝置上安裝的所有 PWA 詳細資訊,包括上次更新資訊清單的時間、更新頻率等。
如要手動排定資訊清單更新時間,並覆寫計時器和本機資訊清單,請執行下列操作:
- 將裝置接上電源,並確認已連上 Wi-Fi。
- 使用 Android 工作管理員關閉 PWA,然後使用 Android 設定中的「應用程式」面板強制停止 PWA。
- 在 Chrome 中開啟
about://webapks,然後按一下 PWA 的「更新」按鈕。「更新狀態」應變更為「待處理」。 - 啟動 PWA,確認已正確載入。
- 使用 Android 工作管理員關閉 PWA,然後使用 Android 設定中的「應用程式」面板強制停止 PWA。
PWA 通常會在幾分鐘內更新,更新完成後,「更新狀態」應會變更為「成功」
參考資料
- Android 版 Chrome 的
UpdateReason列舉