近年来,在网络巨头和移动开发人员的推动下,渐进式Web应用程序已成为一种增长趋势,因为它们允许将类似原生的体验带到任何平台。最致力于这项新技术的公司之一是Microsoft,它通过PWABuilder[1]等项目帮助Web开发人员接受这项新技术。随着第一个基于Chromium的MicrosoftEdge版本的发布,以及最近在Build2020上发布的公告,该公司旨在通过引入令人兴奋的新功能和API来弥合原生应用程序和Web应用程序之间的差距。那么,这些变化是什么,它们对您意味着什么?PWA是Windows上的一等公民第一组更改涉及从MicrosoftEdge安装的PWA与Windows交互的方式。到目前为止,从Edge安装Web应用程序意味着拥有一个令人难以置信的原生应用程序,但在某些情况下却表现得很奇怪。例如,它们不会在“设置”应用程序或“任务管理器”中显示为单独的应用程序,这使得它们更难管理,尤其是对于不太懂技术的用户而言。Edge团队在Build2020上举行了虚拟演示,宣布在即将推出的浏览器版本中,Windows将像对待任何其他应用程序一样对待PWA,所有这些问题都将很快得到修复。除其他外,安装的网络应用程序也可以设置为共享目标(即它们将出现在Windows共享对话框的应用程序列表中),在操作系统启动时请求启动权限,并设置某些文件类型、URL和协议到是默认值。新的API除了旨在使PWA感觉更原生的变化外,Edge团队还发布了一组新的API,使Web应用程序的行为更像其原生应用程序。可自定义的标题栏从UI的角度来看,PWA最明显的缺点之一是在桌面设备上运行时无法自定义标题栏。在即将推出的Edge版本中,一个新的API应该可以解决这个问题,允许开发人员扩展标题栏下方的HTML元素。直到现在,PWA还不能像原生版本那样自由定制标题栏。这对于复杂的PWA尤其有用,因为它们可以在UI中放置选项卡和搜索栏,而不会浪费宝贵的空间。本机文件系统访问直到现在,网站还不允许将文件保存在用户设备上的特定位置。这意味着在线照片编辑器需要用户上传他们想要编辑的照片,然后将其下载到他们的设备,而原生照片编辑器只提供替换现有照片的选项。从Edge86(83版是撰写本文时的最新版本)开始,开发人员将能够替换用户在会话中选择的所有文件,从而使Web上的生产力应用程序更加有用。BadgesAppIconsBadges存在于每个主要操作系统上,现在是网络成为其中一部分的时候了picture:我们不仅能够向PWA添加带有数字和图标的徽章,我们还将在服务线程中获得更新徽章内容的新事件。我发现这个事件概念非常有趣,因为它为推送通知引入了一种轻量级的事件替代方案。虽然这看起来像是一个微小的UI调整,但我不会将其视为一个微小的变化,因为用户研究已经多次证明,向应用程序图标添加徽章可以显着提高用户参与度。通往MicrosoftStore的简单路径感谢PWABuilder,已经可以轻松地将PWA发布到MicrosoftStore。这种方法最相关的缺点是打包的Web应用程序在传统的Edge引擎上运行,而不是Chromium,因此无法利用一些新发布的API。在Build2020中,我们发现这一切都将在几个月后发生变化,届时PWABuilder将允许打包的Web应用程序在Chromium上运行。End作为Web开发人员,我很高兴看到Microsoft在ProgressiveWebApps上投入如此多,因为我认为它们不仅是Web体验的未来,也是移动应用程序的未来,像这样的特性使它们成为原生的并且更可行框架的替代品。如果您像我一样对这些改进感到兴奋,我建议您查看PWA[2]的建议功能列表,这些功能是作为ProjectFugu的一部分开发的,该项目由谷歌、微软和英特尔跨公司合作,旨在给我们带来的许多上述变化。参考资料[1]PWABuilder:https://www.pwabuilder.com/[2]PWA建议功能列表:https://bugs.chromium.org/p/chromium/issues/list?can=2&q=proj-fugu&sort=pri&colspec=ID+Pri+M+Stars+ReleaseBlock+Component+Status+Owner+Summary+OS+Modified&x=m&y=releaseblock&cells=ids二维码关注。转载本文请联系前端全栈开发公众号。
