PWA 介绍
Progressive Web App,PWA,是一种使用Web平台技术构建的应用,可以提供接近操作系统原生应用的用户体验。
优势
操作系统原生应用的优势包括:
- 易于访问:在桌面上放置图标,就像在浏览器添加书签一样
- 离线使用:断网的情况下仍然可以使用
- 后台运行:应用不在前台,也可以更新数据、向用户推送消息
- 专用UI:沉浸式
- 访问设备功能:相册、相机、GPS等
- 应用商店分发:集中检索和安装
相比原生应用,Web应用的优势有:
- 一次编码,跨端使用
- 轻量,即用即走
PWA的目标是结合Web应用、原生应用的优势。
对于PWA而言,它的操作系统是Chrome、Firefox等支持PWA技术的浏览器,需要一个浏览器引擎来管理和运行,就像操作系统管理和运行原生应用一样。
组成
PWA由三部分组成:
- 网页 网站基本功能
- 应用清单(Mainfest) 提供浏览器安装 PWA 所需的信息,例如应用名称和图标
- 服务进程(Service Worker) 至少实现离线使用
渐进增强
渐进增强(Progressive enhancement)是一种设计理念,其核心是为尽可能多的用户提供基本内容和功能,同时进一步为现代浏览器用户提供最佳体验,运行所有需要的代码。
PWA 首先是一个Web网页,可以在任何现代浏览器中访问,如果有做兼容则还可以在 IE 等浏览器中访问。
PWA 希望在各种设备上运行。它会使用最新的、高级的 Web API,这些API有可能在用户的浏览器上不支持。PWA 应该对高级 API 执行功能检测,并在API不可用的情况下,提供可接受的回退体验。