pwa簡介

什麼是pwa?

author: 果果 data:2020.04.10 21:58

pwa定義
Progressive Web App, 簡稱 PWA,翻譯過來就是漸進式增強WEB應用,是Google 在2016年提出的概念,2017年落地的web技術。是提升 Web App 的體驗的一種新方法,能給用戶原生應用的體驗
PWA 的主要特點
1、可靠 : 即使在不穩定的網絡環境下,也能瞬間加載並展現
2、體驗 : 快速響應,並且有平滑的動畫響應用戶的操作
3、粘性 : 像設備上的原生應用,具有沉浸式的用戶體驗,用戶可以添加到桌面

PWA 本身強調漸進式,並不要求一次性達到安全、性能和體驗上的所有要求,開發者可以通過 PWA Checklist 查看現
有的特徵。
爲什麼是漸進式

強調漸進式的改善站點體驗主要有下面兩個原因:

1、降低站點改造的代價,逐步支持各項新技術,不要一蹴而就
2、新技術標準的支持度還不完全,新技術的標準還未完全確定
PWA 改造的成本考慮
PWA 涉及到從安全、性能和體驗等方面的優化,想要一次性支持所有特性,代價很高,老闆也不一定願意投入大量人力
來支持這項大工程。

所以,從改造的成本考慮,我們也建議採取漸進式的方式,可以考慮按照下面的步驟來改造:

第一步,應該是安全,將全站 HTTPS 化,因爲這是 PWA 的基礎,沒有 HTTPS,就沒有 Service Worker
第二步,應該是 Service Worker 來提升基礎性能,離線提供靜態文件,把用戶首屏體驗提升上來
第三步,App Manifest,這一步可以和第二步同時進行
後續,再考慮其他的特性,離線消息推送等
標準的支持度
PWA 採用的最新技術,當前瀏覽器還沒有達到完全支持的程度,W3C 關於這些技術的標準也還在處於草稿狀態,沒有定
稿。

根據 Can I use 的統計(包括 PC 和 Mobile)
· App Manifest 的支持度達到 57.43%
· Service Worker 的支持度達到 72.82%
· Notifications API 的支持度達到 43.3%
· Push API 的支持度達到 72.39%
· Background Sync 暫未統計到,Chrome 49 以上均支持

隨着 W3C 的標準的進一步完善,國內外各大瀏覽器都會逐步支持,擁抱標準。
最後總結一下,PWA 具有下面一些特性
· 漸進式 : 適用於所有瀏覽器,因爲它是以漸進式增強作爲宗旨開發的
· 連接無關性 : 能夠藉助 Service Worker 在離線或者網絡較差的情況下正常訪問
· 類似應用 : 由於是在 App Shell 模型基礎上開發,因爲應具有 Native App 的交互和導航,給用戶 Native App 的體驗
· 持續更新 : 始終是最新的,無版本和更新問題
· 安全 : 通過 HTTPS 協議提供服務,防止窺探和確保內容不被篡改
· 可索引 : 應用清單文件和 Service Worker 可以讓搜索引擎索引到,從而將其識別爲『應用』
· 粘性 : 通過推送離線通知等,可以讓用戶迴流
· 可安裝 : 用戶可以添加常用的 webapp 到桌面,免去去應用商店下載的麻煩
· 可鏈接 : 通過鏈接即可分享內容,無需下載安裝

結語

技術交流,共同進步,歡迎fork和star!

倉庫地址

參考鏈接

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章