BT

Progressive Web App:模仿原生应用的Web应用

作者 谢丽 发布于 2015年11月28日 | 欲知区块链、VR、TensorFlow等潮流技术和框架,请锁定QCon北京站!

Progressive Web App的外观和行为都同原生移动应用类似,但它本质上上仍然是Web应用,不需要通过应用商店部署。

Ashteya Biharisingh是一名混合移动应用开发人员。据她介绍

[Progressive Web App]是一个具有响应式布局的Web应用,可以离线工作,并能够安装到设备的主屏幕上。这里所说的“安装”是指:在主屏幕上添加该Web应用的快捷方式。当用户点击快捷方式时,Web应用会加载到浏览器,并以全屏模式打开。

Progressive Web App有许多好处。对用户而言,他们无需在设备上安装应用。与原生/混合应用相比,这大大节省了设备的存储空间。对开发人员而言,他们无需通过应用商店发布应用,版本发布和Bug修复可以更及时。

近日,印度最大的网上商店之一FlipKart推出了一个Progressive Web App:FlipKart Lite。Android用户通过浏览器打开该网站时会看到一条“添加到主屏幕”的消息。下次,当用户使用该Web应用时,只要点击主屏幕上的图标,它就会以全屏模式打开,就像一个原生应用。目前,作为一个Progressive Web App,FlipKart Lite仅支持Android设备。如果用户在iOS设备上访问该网站,会被重定向到应用商店。这是因为FlipKart Lite使用Service Worker实现了离线功能,而后者仅在Chrome和Opera上得到了支持。关于FlipKart的更多信息,可以查看这篇博文或者这段来自2015 Chrome开发者峰会的视频

重要通知:接下来InfoQ将会选择性地将部分优秀内容首发在微信公众号中,欢迎关注InfoQ微信公众号第一时间阅读精品内容。

Bruce Lawson是一名来自Opera的工程师。据他介绍,Opera和Chrome正紧密合作,探索Progressive Web App的最佳实现,但他们的实现之间还是有一些差别。在Bruce看来,为了便于此类应用的推广,应该有一种机制可以在用户第一次访问网站时作出提醒,该网站是一个Progressive Web App,而不是在第二次访问时才提醒用户“安装我们的应用”

Nolan Lawson是Progressive Web App Pokedex.org的创建者。对于FlipKart Lite的出现,他写到

这个应用让我超级兴奋,因为它向我们展示了,仅仅使用Web技术就可以构建一个离线的、60FPS的移动应用。

Bruce认为,Progressive Web App已经准备好迎接它的黄金时代。微软正考虑在其浏览器中添加Service Worker支持。而且,他们还遵循W3C Maifest创建了manifold.js,使开发人员可以开发跨平台和设备的托管应用。iOS也提供了一种创建“可主屏化(homescreen-able)”应用的方式。

感兴趣的读者可以进一步查阅Bruce提供的其他一些相关资源,如Web Manifest说明Service Worker手册等。


感谢徐川对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入InfoQ读者交流群InfoQ好读者(已满),InfoQ读者交流群(#2)InfoQ好读者)。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论
提供反馈
错误报告
商务合作
内容合作
Marketing
InfoQ.com及所有内容,版权所有 © 2006-2016 C4Media Inc. InfoQ.com 服务器由 Contegix提供, 我们最信赖的ISP伙伴。
北京创新网媒广告有限公司 京ICP备09022563号-7 隐私政策
BT

我们发现您在使用ad blocker。

我们理解您使用ad blocker的初衷,但为了保证InfoQ能够继续以免费方式为您服务,我们需要您的支持。InfoQ绝不会在未经您许可的情况下将您的数据提供给第三方。我们仅将其用于向读者发送相关广告内容。请您将InfoQ添加至白名单,感谢您的理解与支持。