全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

什么是PWA?

发布时间:2023-10-11 18:06:11
发布人:xqq

一、什么是PWA

PWA是渐进式 Web 应用,运用现代的 Web API 以及传统的渐进式增强策略来创建跨平台 Web 应用程序。。这些应用无处不在、功能丰富,使其具有与原生应用相同的用户体验优势。

PWA 是可被发现、易安装、可链接、独立于网络、渐进式、可重用、响应性和安全的。

PWA 权益

类似本机的体验

在设备上安装 PWA 时,其功能与其他应用一样。 例如:

PWA 有自己的应用程序图标,可以添加到设备的主屏幕或任务栏。打开关联的文件类型时,可以自动启动 PWA。PWA 可以在用户登录时运行。可以将 PWA 提交到应用程序存储,例如 Microsoft Store。

高级功能

PWA 还有权访问高级功能。 例如:

当设备脱机时,PWA 可以继续工作。PWA 支持推送通知。即使应用程序未运行,PWA 也可以执行定期更新。PWA 可以访问硬件功能。

与 Web 相关的优势

最后,PWA 可以在 Web 浏览器中运行,就像在网站中一样。 像网站一样运行,PWA 具有优势,例如:

可以通过搜索引擎为 PWA 编制索引。可以从标准 Web 链接共享和启动 PWA。PWA 对用户来说是安全的,因为它们使用安全的 HTTPS 终结点和其他用户安全措施。PWA 适应用户的屏幕大小或方向以及输入法。PWA 可以使用 WebBluetooth、WebUSB、WebPayment、WebAuthn 或 WebAssembly 等高级 Web API。

延伸阅读:

二、三大PWA特性

功能性(capable)可靠性(reliable)可安装性(installable)

PWA同时具备这三大特性,这也让PWA的应用体验更接近原生。

功能性

Web App当今时代已经具备了丰富的功能,你可以基于 WebRTC 开发一个视频聊天工具,可以使用 Geolocation API 开发一个地图软件,也可以使用 Notification API 来给你的APP推送消息,让用户可以在APP之外接收到通知。你也可以使用 WebGL 和 WebVR 来虚拟化这些场景。通过 Web Assembly,你可以步入其他生态,比如:C和C++等,给Web生态带来更多能力。

直到最近,只有原生App声称具备这些功能。当然,有一些能力还是web当前无法使用的,但新的API会被定义,用来扩展Web能力,比如让Web拥有文件系统的访问权限、媒体控制权限、图标上的badge修改权限、剪切板的全部功能。所有的这些能力都与Web安全、用户为中心的权限模型共同构建,确保访问网站不会给用户造成威胁。

随着现代API的定义,Web的功能性会越来越丰富。

可靠性

一个可靠的PWA应用感受起来很快,而且不依赖网络。

速度对于用户使用体验来说至关重要。实际上,页面加载的时间从1-10秒,用户流失会增长123%。性能也并非在 onload 事件之后就结束了。用户无需时刻担心他们的交互(例如点击了按钮)有没有响应。滚动和动画需要保持流畅。

最后,可靠的App需要对网络无依赖。用户会期望在弱网或者无网络的情况下打开App。他们期望看到上次他们加载的内容,就像是音频或者视频播放到某个特定时间点,即使网络连接困难,还是要保持可靠和可用。如果请求失败了,比起默默地失败或者崩溃,给用户合理的提示才是优异。

用户更喜欢App可以在眨眼睛响应他们的操作,这也是可靠性的一种。

可安装性

安装好的PWA应用可以在一个独立的窗口启动,而不用在浏览器中。它们也可以从主页、docks或者任务栏启动。你也可以搜索到它们,然后从搜索结果中打开。你也可以切换到其他App,然后再切换回来。这感觉就跟原生App几乎一致,成为设备的一部分。

#it技术干货

相关文章

模块化、组件化、插件化的区别?

模块化、组件化、插件化的区别?

2023-10-11
Java开发需要用到哪些软件?

Java开发需要用到哪些软件?

2023-10-11
Web框架有什么功能?

Web框架有什么功能?

2023-10-11
MyBatis流行的原因?

MyBatis流行的原因?

2023-10-11

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取