系统极客一直在努力
专注操作系统及软件使用技能

什么是「渐进式 Web 应用」,PWA 应用程序解析

你是否希望 Web 应用更像原生应用程序呢?「渐进式 Web 应用」(PWA,Progressive Web Apps)就是旨在实现这一目标的新技术。

什么是「渐进式 Web 应用」

GoogleMicrosoftMozilla 和其他多个厂商正在制定一个新的现代 Web 应用程序标准,即便一向孤傲的苹果也在跟随并进行支持。渐进式 Web 应用程序(PWA,Progressive Web Apps)就是让 Web 应用程序更像本机应用的技术,PWA 与现有的 Web 程序一样,将直接托管在其关联的网站上。开发人员可以直接在自己的 Web 服务器上对「渐进式 Web 应用」进行更新,而不必重复将更新提交给不同的应用商店,同一个应用就可以在所有浏览器和平台上运行。

当安装了 PWA 应用程序,就可以获得应用程序的主屏幕、任务栏或桌面快捷方式(取决于您的平台)。「渐进式 Web 应用」的加载速度非常快,并将包括脱机支持、推送通知、后台同步以及其他现代化功能。

PWA 应用程序还可以使用现有的网络技术访问位置服务、网络摄像头,以及其它与本机应用程序关联的类似功能。(当然,在访问这些内容之前,「渐进式 Web 应用」必须先征求用户的意见并获得许可。)

「渐进式 Web 应用」如何工作

「渐进式 Web 应用」其实就是传统 Web 应用通过现代技术来实现的增强版,以使得其能够提供类似于本地应用程序的体验。「渐进式」就意味着他们使用现代网络功能进行「逐步增强」,PWA 也可以在不支持新功能的旧版浏览器中工作,但在现代浏览器中才能更好地运行并具备更多、更强的功能。

「渐进式 Web 应用」可以在你的任务栏(Windows 10)或屏幕上(Android 设备和其他智能手机)拥有自己的窗口和快捷方式。由于使用 Cache APIIndexedDB,PWA 应用的打开和加载速度会非常之快,也因将应用程序的资源和数据直接存储于设备中,即便在脱机状态下 PWA 应用程序也能正常工作。

「渐进式 Web 应用」还可以通过 Service Worker推送通知之类的技术执行后台任务,可以像本机原生应用那样同步并发送通知,即便程序没在执行。Fetch API 让 PWA 程序可以更快、更简单地请求数据,通过 Web 应用程序清单文件,可以在将应用程序安装到主屏幕或桌面时使用自定义的:名称、图标、作者和描述。

在安全方面,「渐进式 Web 应用」始终通过加密的 HTTPS 提供服务,这意味着使用 PWA 会很安全,并且数据在传输过程中不会被篡改。

「渐进式 Web 应用」与 Google 的 Chrome Packaged App 或 Microsoft 的 Hosted Web App 不同,PWA 不用打包到脱机文件当中进行发布。它与传统 Web 应用程序一样,完全托管在 Web 服务器上。如果开发人员想更新自己的 PWA 应用,就可以像更新其它 Web 网站一样,在自己的服务器上进行更新即可。与此同时,所有支持 PWA 的平台和浏览器就都可以使用相同的「渐进式 Web 应用」了。

「渐进式 Web 应用」的优势

「渐进式 Web 应用」不仅可以让 Web 应用程序更优秀,也是为不同平台「可安装应用程序」而制定的一个新标准。

打个比方来说:Google 不想支持微软的通用 Windows 平台(UWP),但可以将 Gmail 和 Google 日历等服务搞成 PWA 应用,这样就可以在 Windows 10 系统中以原生应用的形式来运行,并在 Microsoft Store 进行展示以等待用户安装。其他不想创建单独 UWP 应用程序的开发人员也能够通过 PWA 来支持 Windows 10。

PWA 让开发人员可以更轻松地在各种设备上以更强大、更集成的方式运行 Web 应用程序,更可以与只能在单一平台上工作的本地应用程序进行竞争。ISV 可以通过 PWA 就支持更多平台,而无需再为 iOS、Android 和 Windows 等平台单独开发应用。

而且,通过开发人员提供的 Web App Manifest 文件,搜索引擎就能够抓取网页并轻松找到可在线使用的 PWA,这将使 PWA 应用更加易于展现。

「渐进式 Web 应用」支持的平台

  • 微软将在 Windows 10 Spring Creators Update 中提供支持,会在 Microsoft Store 中列出「渐进式 Web 应用」以便用户安装。与其他平台一样,也可以通过 Microsoft Edge 安装 PWA。
  • 无论是 Windows、macOS、Linux 还是 Chrome OS 平台中的 Google Chrome,PWA 都将取代已停用的 Chrome Apps 平台。
  • 在 Android 平台上,Google Chrome 已经支持安装 PWA,其他移动浏览器(Mozilla Firefox、Opera 和三星浏览器)也都支持。谷歌也正在研究一项名为 WebAPK 的技术,该技术将允许把 PWA 转化为 APK 文件并安装到设备上。
  • 苹果也在向 Safari 浏览器添加 PWA 功能
赞(0) 赞赏

评论 抢沙发

微信赞赏