浏览器提供的 API(即 Web API)很有限(目前只有相机、GPS、电池等少数几个),大部分系统硬件都不能通过网页访问,也无法直接读取硬盘文件,所以 Web App 无法充分利用平台的硬件。网页通过浏览器渲染,性能不如原生 App,不适合做性能要求较高的页面Web App 需要打开浏览器才能使用,这意味着,用户必须记住如何导航到它,要么直接输入网址,要么翻找书签。这使得进入 Web App,远不如原生 App 方便。这点很致命,事实表明,用户偏好原生 App。
谷歌曾经调查了原生 App 和 Web App 各一千个,发现 Web App 可以覆盖更多的用户(1100万 vs 400万),但是原生 App 的用户使用时间(188分钟)远超 Web App(9分钟)。
当时为了推广 Web App,谷歌公司的 Chrome 浏览器团队做了很多努力。他们认为,Web App 足以满足大多数 App 的需求,但是三大缺陷阻碍它的推广。
1、不能从手机的首屏直接进入。
2、缺乏手机状态栏和锁屏时的通知推送能力。
3、不支持脱机访问(即断网也能使用)。
为了解决上面这些问题,Chrome 团队开发了新技术"渐进式 Web App"(Progressive Web App,缩写 PWA)。它可以把网站缓存在手机里面,供离线时使用,还能在手机首屏生成图标,直接点击进入,并且有通知推送能力,也不带有浏览器的地址栏和状态栏,跟原生 App 的使用体验非常接近。