浏览器工作原理与实践
李兵
前盛大创新院高级研究员
56402 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 46 讲
浏览器工作原理与实践
15
15
1.0x
00:00/00:00
登录|注册

27 | 渐进式网页应用(PWA):它究竟解决了Web应用的哪些问题?

思考
PWA的未来
PWA的功能
PWA的技术手段
PWA的定义
三大进化路线
渐进式网页应用(PWA)

该思维导图由 AI 生成,仅供参考

在专栏开篇词中,我们提到过浏览器的三大进化路线:
第一个是应用程序 Web 化;
第二个是 Web 应用移动化;
第三个是 Web 操作系统化;
其中,第二个 Web 应用移动化是 Google 梦寐以求而又一直在发力的一件事,不过对于移动设备来说,前有本地 App,后有移动小程序,想要浏览器切入到移动端是相当困难的一件事,因为浏览器的运行性能是低于本地 App 的,并且 Google 也没有类似微信或者 Facebook 这种体量的用户群体。
但是要让浏览器切入到移动端,让其取得和原生应用同等待遇可是 Google 的梦想,那该怎么做呢?
这就是我们本节要聊的 PWA。那什么是 PWA?PWA 又是以什么方式切入到移动端的呢?
PWA,全称是 Progressive Web App,翻译过来就是渐进式网页应用。根据字面意思,它就是“渐进式 +Web 应用”。对于 Web 应用很好理解了,就是目前我们普通的 Web 页面,所以 PWA 所支持的首先是一个 Web 页面。至于“渐进式”,就需要从下面两个方面来理解。
站在 Web 应用开发者来说,PWA 提供了一个渐进式的过渡方案,让 Web 应用能逐步具有本地应用的能力。采取渐进式可以降低站点改造的代价,使得站点逐步支持各项新技术,而不是一步到位。
站在技术角度来说,PWA 技术也是一个渐进式的演化过程,在技术层面会一点点演进,比如逐渐提供更好的设备特性支持,不断优化更加流畅的动画效果,不断让页面的加载速度变得更快,不断实现本地应用的特性。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

PWA(渐进式网页应用)是一种融合Web和本地应用优势的新技术,通过渐进式增强Web的特点,缓解了Web应用与本地应用或小程序之间的差距。PWA利用Service Worker和manifest.json解决了Web应用的离线使用、消息推送和一级入口等问题。Service Worker作为核心技术,通过拦截请求和缓存资源,实现了离线存储和消息推送功能。此外,PWA还注重安全性,要求站点升级到HTTPS,并支持同源策略、内容安全策略等安全策略。PWA的设计思路包括架构、消息推送和安全性,通过这些技术手段,PWA逐步具备了本地应用的能力,为Web应用带来了新的发展机遇。PWA的出现为Web应用的发展带来了新的可能性,通过渐进式增强Web的优势,PWA正在逐步缩短和本地应用或小程序的距离,为Web应用的未来发展指明了方向。 PWA的未来发展取决于底层技术的支持程度,如页面渲染效率、对系统设备的支持程度、WebAssembly等。文章提出了思考题,探讨PWA能否进入移动设备,留给读者思考。 PWA的发展前景备受期待,未来将会有更多的技术进步和应用场景的拓展。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《浏览器工作原理与实践》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(19)

  • 最新
  • 精选
  • 李艺轩
    前面说【web应用就是普通的web页面】,后面说【让普通站点逐步过渡到web应用】,那么普通站点和普通web页面有什么区别?

    作者回复: 这个算我表示不严谨,第二句的本意是让传统页面过渡到Web应用。 这里传统的web页面也就是那些没有使用web新特性的页面。

    2019-12-17
  • 小黑彪Geek_070fb4
    感觉机会不大:首先这个东西需要浏览器的支持,苹果方面因该有顾虑,绕过审核直接上线;其次这个东西在国内推进也是困难重重,各大厂商定制化系统,再就是谷歌的东西太容易被墙;最后这个没有商业化的闭环,不能为开发者提供用户资源等,很难和国内BAT小程序和快应用等抗衡。 总之,前途堪忧。
    2019-10-08
    2
    43
  • Taopoppy
    老师,后面来一门前端优化的课程,和这个课就搭上了
    2019-10-06
    1
    18
  • neohope
    如果要达到浏览器通吃的目标,除了老师文中讲的这三点(消息通知,离线存储,一级入口),浏览器还有几个问题需要解决: 1、硬件操作能力 2、系统底层调用能力 3、执行效率 4、沙箱管理能力 其中: 1硬件操作和2系统底层调用,现在一般用hybrid方式来解决,纯浏览器暂时没有好的方案 3执行效率,有两方面,一个是期待浏览器不断变强(比如OpenGL支持),一个是Web Assembly可以期待一下 4沙箱问题(网站隔离、用户隔离),现在并没有看到很好的解决方案 另外,我一直以来的另一个问题是,现在浏览器其实已经很复杂了,如果封装很多的系统功能到浏览器里面,那最终和Android/IOS有什么区别呢,除了开发语言?是否会向这个方向发展呢?
    2020-07-16
    16
  • mfist
    如果PWA能够从操作系统(andriod)层面切入应该会和当前的快应用、小程序分一杯羹。技术之间是互相学习和进步的,未来技术可能会趋同,找到一个浏览器应用(pwa)、大流量应用(微信、支付宝的小程序)、手机厂商(快应用)都满意的方案
    2019-10-06
    8
  • William
    已经进入了呀,现在安卓各大应用商店很对应用都有提供快应用。免安装,无广告,用完即走
    2019-10-05
    1
    3
  • Link
    我觉得 PWA 从商业角度和技术角度来看都没有足够的优势进入移动端,因为目前移动端的商业生态已经成熟,并且小程序技术和 Flutter 技术已经抢占了先机。商业上,目前的移动端生态已经成熟,iOS 会阻止 PWA 破坏它的生态,就像阻止小程序一样。Android 生态中,如果 Google 如果能把 Android 变成直接支持 PWA 的操作系统,可能会有一些帮助,但是帮助不大。技术上,微信等各大超级 App 都已经使用了小程序技术,也就是说小程序技术已经抢占了先机。另外,Flutter 技术也在进入移动端,所以 PWA 在技术上的竞争太激烈。
    2019-10-05
    3
  • 刘弥
    对于 PC 机来说的话: 我记得 google 有发行一个 chrome OS 的笔记本电脑,其给人的感觉就是一个电脑就是一个浏览器。 那么如果这个 chrome OS 能够得到很好的普及的话,也算是为 PWA 的发展道路铺开了一个非常不错的基础设施。 对于 chrome OS 的未来的话,我个人还是抱有一定的好感的,毕竟电信行业的发展还是很快速的,所以未来的应用网络传输可能越来越快速。 另外 WebAssembly 的发展也让人期待,未来一些相对底层的操作可以委托给 WebAssembly 来实现。 对于移动设备的话: 目前看起来并不乐观,如果 chrome OS 也能覆盖移动设备的话就另当别论了。
    2020-02-13
    2
  • Chin 是我啊
    三年了,PWA 并没有进入移动设备
    2022-10-05归属地:北京
    1
  • 大前端洞见
    通过一种说法,Web应用PWA技术等未能快速发展起来,很大的一部分原因是商业利益影响的。因为PWA应用起来了,会给APP和其他应用带来打击,各厂商为了保证利益,对PWA这种技术都会实行冷漠和阻拦的方式。比如苹果公司,是最不愿意PWA能发展起来的,苹果公司也不会积极的配合这方面技术的推进。
    2020-03-08
    1
收起评论
显示
设置
留言
19
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部