(转)PWA(Progressive Web App)渐进式Web应用程序
-
PWA
编辑 讨论
https://baike.baidu.com/item/PWA/22378897?fr=aladdin
http://tech.it168.com/a2017/1113/3179/000003179550.shtml
3分钟告诉你什么是渐进式Web应用程序!
【IT168 评论】随着移动设备使用的大幅增长,建立一款适合移动设备的商业网站至关重要。根据Statista最新的一项研究显示,截止到2019年,手机互联网用户渗透率将达到63.4%。显然,如何在移动开发技术领域取得重大的突破成为了移动开发人员当前面临的最大挑战。
想象一下,如果一个网站上所有的功能都能够作为一个移动应用程序为用户所用——任何设备上都可以使用、可接收所有的通知、离线模式可用,为了实现这个愿景,2015年,谷歌创造了渐进式Web应用程序(PWA)。什么是PWA?使用PWA对企业有哪些好处?
什么是PWA?

PWA是指可以在任何浏览器上执行的支持互联网的应用程序,它是由服务器端脚本(PHP和ASP)和客户端脚本(JavaScript和HTML)组成的。
PWA具有成本效益,可以使公司轻松管理各种任务。此外,web应用程序安全性更高,易于定制,可用于各种设备。例如,PWA可以对员工工作时间进行跟踪,分享远程团队之间的信息,监控公司活动等。一般来讲,简单的应用程序通常都需要根据特定的系统要求进行配置,但是web应用程序始终可用。
Web应用程序在任何工作平台上都兼容。应用最广泛的例子就是在线电子表格Google Docs)、电子邮件(Gmail)、照片和视频编辑(Pixlr.com)等,这些程序允许用户同时访问相同版本的文档。
渐进+ Web应用程序优势
有无服务人员是PWAs和常规web应用程序的主要区别。服务人员是PWA背后强大的技术支撑,在服务人员的帮助下,可实现离线模式工作,接收推送消息,更新背景内容等。PWA的目的旨在实现多个平台通用应用程序。
Google的PWA概念是将网络和原生应用的最佳组合结合起来的新形式。原生应用程序和Web应用程序之间的另一个区别是访问能力。原生应用可以使用推送通知,后台同步等。相比之下,网络被认为是更安全、更尊重隐私,但目前在这些方面还有欠缺。如果能够实现这些功能,就能在用户体验方面做到更加的完美。
简单易安装也是Web应用程序与原生应用程序相比的一大优点。此外,开发人员不需要将PWA适配到iOS或Android平台上,由于使用网络技术,PWA可跨平台工作。
缺点
·PWA不支持所有浏览器,其中包括Safari。到目前为止,这是一个很大的缺点,几乎50%的移动浏览器被Safari覆盖。但这并不意味着PWA在这些浏览器中不起作用。PWA在Safari中工作时,只是没有推送通知和离线模式等功能。
·有些功能在PWA中仍不可用,包括:应用程序间通信、地理围栏、近场通信、接近传感器等。
企业该选择原生应用程序还是Web应用程序?

对于希望为其客户构建一个易于访问的移动体验的企业来讲,PWA是一个完整的解决方案。
但无论选择原生应用程序还是web应用程序完全取决于公司的目标。如果业务需求简单,预算较小、且希望容易分配,PWA是不错的选择。但如果应用程序有很多功能,且需要由iOS支持,预算也相对较大,那企业可以选择原生应用程序。
(转)PWA(Progressive Web App)渐进式Web应用程序的更多相关文章
- Progressive Web App
下一代 Web 应用? 近年来,Web 应用在整个软件与互联网行业承载的责任越来越重,软件复杂度和维护成本越来越高,Web 技术,尤其是 Web 客户端技术,迎来了爆发式的发展. 包括但不限于基于 N ...
- 试着给VuePress添加渐进式Web应用(PWA)支持,基于vuepress/plugin-pwa,点亮离线访问
背景 有时候,我们也希望VuePress构建的文档中心能支持离线访问,这时候我们需要给他添加渐进式Web应用(PWA,Progressive Web App)的支持,根据官方文档指引,我们可以借助插件 ...
- 关于渐进式 Web 应用,你应该知道的一切
渐进式 Web 应用是利用现代浏览器的特性,可以添加到主屏幕上,表现得像原生应用程序一样的 Web 应用程序. 什么是渐进式 Web 应用 渐进式 Web 应用(PWA)本质上与普通的网站没有什么不同 ...
- 渐进式Web应用程序的深入概述
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://www.grapecity.com.cn/blogs/wijmo-depth-ove ...
- html5文章 -- 使用 jQuery Mobile 与 HTML5 开发 Web App ——开发原则 | Kayo's Melody
最近专注研究 jQuery Mobile —— 一款很方便就可以把 Web App 包装成适合 Android 与 iPhone 等触屏移动设备的 Javascript 库,结合 jQuery Mob ...
- web app变革之rem
rem这是个低调的css单位,近一两年开始崭露头角,有许多同学对rem的评价不一,有的在尝试使用,有的在使用过程中遇到坑就弃用了.但是我对rem综合评价是用来做web app它绝对是最合适的人选之一. ...
- web app变革之rem(手机屏幕实现全适配)
以往web移动适配,常规写法是:media only screen @media only screen and (min-device-width: 320px){ //针对iPhone 3 } @ ...
- Outlook Web App简介
一.什么是Outlook Web AppOutlook Web Access简称OWA是基于微软Hosted Exchange技术的托管邮局的一项Web访问功能.通过访问Outlook Web Acc ...
- web app 变革之rem
rem这是个低调的css单位,近一两年开始崭露头角,有许多同学对rem的评价不一,有的在尝试使用,有的在使用过程中遇到坑就弃用了.但是我对rem综合评价是用来做web app它绝对是最合适的人选之一. ...
- Native App、Web App 还是Hybrid App?
一.什么是Native App? Native App即原生应用,即我们一般所称的客户端,是针对不同手机系统单独开发的本地应用,如需使用需要先下载到手机并安装,下载Native App的最常见方法是访 ...
随机推荐
- java.io.IOException: Could not delete path 'D:\mycode\reactnative\SecondTest\android\app\build\generated\source\r \release\android\support\v7
问题解决 直观上看是没有删除某个文件,产生的IOException异常,实际上是因为上次编译导致的缓存没有清空导致的. 进入到android目录下运行下面代码清除上次打包时的缓存: ./gradlew ...
- 百度前端代码规范:HTML
HTML 1.代码风格 1.1缩进与换行 [强制] 使用 4 个空格做为一个缩进层级,不允许使用 2 个空格 或 tab 字符. <style> ul { padding:; } < ...
- Parsing with Compositional Vector Grammars--paper
这篇和2012年的区别: 1)Max-Margin Training Objective J中RNN变为了CVG 2012-两个词向量合并并打分,这个-两个(词向量,POS)合并并打分 2012年: ...
- Introduction of filter in servlet
官方给出的Filter的定义是在请求一个资源或者从一个资源返回信息的时候执行过滤操作的插件.我们使用过滤起最多的场景估计就是在请求和返回时候的字符集转换,或者权限控制,比如一个用户没有登录不能请求某些 ...
- ubuntu 菜单栏和终端都消失了,鼠标也成了一个× 解决办法!!!
办法1: ctrl+alt+f1 进入命令模式 依次下载 sudo apt-get update sudo apt-get install --reinstall ubuntu-desktop su ...
- zombodb 数据类型映射
zombodb 与es 数据类型的映射处理 通用数据类型映射 Postgres 类型 Elasticsearch JSON 映射定义 bytea {"type": "bi ...
- 将struct转为map
package main import ( "fmt" "reflect" "time" ) type User struct { Id i ...
- 3.1 MathType上标位置调整的两种方法
具体操作步骤如下: 1.打开MathType窗口后在工作区域中编辑好公式. 2.调整上标位置有两种方法: (1)选中要调整的上标,按下“Ctrl+↑,Ctrl+↓,Ctrl+←,Ctrl+→”进行调整 ...
- Linux 释放cache化缓存
Linux 释放cache化缓存 free -g查看空余内存以及已使用内存 原文 https://blog.csdn.net/tomspcc/article/details/78131468 机械硬 ...
- bananapi+OLED做的一个打地鼠游戏,c语言编程
说明一下:BPI是对拍死的BPI的计数,对应最终的成绩RANK是难度 数值越低难度越高 每当打死10个BPI以后就会减一即难度高一级 默认初始化RANK等于15 DIE是存在的BPI数量,一旦数量大于 ...