在“小程序”PWA上开发WebRTC

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1


严格的说,PWA与微信小程序不同,前者更加开放,功能比Web更强(接近原生应用),而微信小程序更封闭,是Web的子集。随着Mozilla、微软和苹果陆续在PWA上投入,当然还有Google不遗余力的推动,PWA的生态越来越成熟,距离一个应用打通所有浏览器的目标越来越近。不过在当下,腾讯天然的流量和生态让微信小程序更具价值。本文来自appear.in的工程师Trond Kjetil Bremnes,介绍了在appear.in的PWA开发经验。LiveVideoStack对原文进行了摘译。


文 / Trond Kjetil Bremnes

译 / 王月美

审校 / 包研


WebRTC面临的最大挑战之一是跨平台提供一致、可靠的支持。对于大多数应用程序,尤其是那些在网络上启动的应用程序,这通常意味着除了支持网络应用程序之外,还需要开发原生或混合移动应用程序。渐进式网络应用程序(PWA)是一种新概念,它能够通过允许基于网络的应用程序在不引入中间混合框架的情况下,看起来并像本地移动应用那样运作,从而将实现应用程序在网络上统一。正如将要讨论的那样,这种方法优点颇多,但它对WebRTC应用程序确实是有意义的吗?


640?wx_fmt=jpeg

使你的WebRTC应用程序像PWA一样


什么是PWA


简而言之,渐进式网络应用程序(简称PWA)是一种带有一些额外功能的Web应用程序,是一种编写Web应用程序的新方式,它为你提供了一些操作系统通常不具备的“抓手”。WPA本身不是一个产品,至少它跟你口中所说的“安卓应用程序”不一样。这些技术集合使得网页看起来,在体验和操作方面更像是本机安装的应用程序。


“P”代表“渐进式增强”。首先,它初听起来感觉很奇怪,这意味着应用程序的功能集随着用户的使用而逐渐得以扩展。其次,这也意味着你不能真正依赖于应用程序正常运行的功能。相反,你需要逐步增强基于用户手机和操作系统功能的应用程序。由于它们使用的是幕后渐进式增强的方式,所以很可能你已经在使用PWA却不得知。


什么让PWA如此强大?


首先,就WebRTC而言,PWA可通过浏览器在任何地方工作,毕竟它们只是网页,用户无需下载任何东西。


其次,PWA可以大大减少应用程序的大小。由于你不需要嵌入浏览器,大多数运行时代码已经安装在客户端上。这意味着最小的WebRTC应用程序的大小可以用KB来衡量,甚至包括UI库。appear.in的PWA版本大小就只有200KB。而React和相关的库就占用了3/4的文件大小,接下来我们可能会做更多工作来进一步减少这类文件的大小。


640?wx_fmt=jpeg

Twitter的本地应用程序与PWA大小比较。来源:

https://docs.google.com/presentation/d/14fBthXt3i3nRbi7vUrVXj3CjI1ILcYlKDAUMf1LXWpY


第三,PWA让你依赖于浏览器的安全性。对网络浏览器安全性的看法——我仍然相信谷歌、Mozilla、微软和苹果这样的大型团队能够快速解决安全问题,也不愿意相信其他应用程序开发人员也会做的同样出色。


PWA安装


只要智能手机具有网页浏览器,就可以将网页添加到手机的主屏幕,这是用户在第一台iPhone上向手机添加新应用程序的唯一方法。自那时以来,这种很少使用的功能得以不断发展,现已变得不再只是一个简单的书签。


当一个网络应用程序满足一定数量的启发式算法时,浏览器会注意到,并开始推荐用户将该网络应用程序“安装”为PWA。这种安装增销与浏览器到浏览器的差别很大-例如Chrome会显示一个弹出窗口࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值