逐鹿H5
2017-01-20
乔布斯早在2010年的公司会议上就说过“没有人愿意使用Flash,全球已经开始步入H5时代”。
H5是第5代HTML的简称,所谓HTML是“超文本标记语言”的英文缩写。我们上网所看到的网页,多数都是由HTML写成的。浏览器通过解码HTML,就可以把网页内容显示出来,它也构成了互联网兴起的基础。
谷歌浏览器于2015年9月1日起不再自动播放Flash;亚马逊宣布旗下网络,包括Amazon.eom门户在内的所有广告将不再使用Flash;现在,很多APP的内容都是以H5的形式呈现,典型的例子包括微信、Facebook、Twitter等。
从引爆朋友圈的H5小游戏《围住神经猫》,到颠覆传统广告的大众点评H5专题页《我们之间只有一个字》,2014下半年起,国内各种H5游戏和专题页纷纷崭露头角。
有调查显示,浏览量最高的1000个H5作品中,42%是心灵鸡汤,27%是测试题,15%是社交互动游戏,5%是大型品牌宣传。
如乔布斯所言,随着移动互联网的迅猛发展,H5已然成为移动营销领域中市场推广利器,然而,如何让H5在更多场景下得到广泛的使用,一直是业界不断探索的方向。
H5为什么会比前几代语言更加街知巷闻?平台型互联网企业和垂直的互联网公司如何介入H5?C端和B端,谁会是H5的下一个爆发点?以兼容性著称的H5是否也面临兼容难题?
比“前辈”更幸运
H5“爆红”,不仅取决于它天生的跨平台属性、原生应用(NativeAPP)的适配瓶颈,还需要等待智能移动终端性能和网络速度大幅提升的环境因素来临。
对于一种编程语言来说,H5无疑是它们中的宠儿,它得到的不仅是开发者的关注,还吸引了众多“门外汉”的目光。现在,哪家公司要是在朋友圈里不发个H5的邀请函、小调查、招聘启事的,都不好意思说自己是移动互联网时代的好公司了。
H5能蓬勃发展,在于它不再只是一种标记语言,它为下一代互联网提供了全新的框架和平台。
为了适配Android和iOS这两大智能手机系统阵营,一个做APP的团队,需要准备两套班子来适应用户两种手机。而在Android体系中,版本的分裂和机型的五花八门,想要求得极致的体验,还得反复测试各种版本和机型。H5最显著的优势在于可以直接在网页上调试和修改,这也就带来了H5跨平台的特性,它可以兼容PC端与移动端、Windows与Linux、Android与iOS,这种强大的兼容性可以显著降低开发与运营成本。
不同于APP的C/S架构,H5采用的B/S架构决定了它天然的跨平台属性。B/S结构是Web兴起后的一种网络结构模式,Web浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Browser),浏览器就可以通过Web Server同数据库进行数据交互。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,从而达到降低总体成本(TCO)的目的。
但是,B/S架构有一个缺陷,对硬件速度和网络速度要求很高,尤其是网络速度,“当网络速度不够快的时候,进度条要等很久。所以,B/S的架构在网络不好的情况下,是很难发展起来的。”云适配CEO陈本峰说。陈本峰是H5中国产业联盟专家委员,曾任职于微软美国总部IE浏览器核心团队,参与IE的H5引擎设计开发以及下一代互联网标准H5国际标准制定。
也就是说,H5今天的“爆红”,不仅取决于它天生的跨平台属性、原生应用的适配瓶颈,还需要有智能移动终端性能和网络速度大幅提升的环境因素。
正如W3C(万维网联盟)创始人Tim Berners-Lee评论的:“今天,我们想做的事情已经不再是通过浏览器观看视频或收听音频,或者在一部手机上运行浏览器。我们希望通过不同的设备,在任何地方,都能够共享照片,网上购物,阅读新闻,以及查找信息。虽然大多数用户对H5和开放Web平台并不熟悉,但是它们正在不断改进用户体验。”
受H5目前的主流应用领域的影响,有56.65%的用户比较看好H5在游戏开发领域的应用,有77.95%的用户看好企业的H5营销推广,37.64%的用户看好通过H5访问企业内部办公网页、企业级网页等企业级应用领域(见图1)。
H5并不完美。来自2015《HTML5开发者应用情况调查报告》的数据显示,32.32%的调查对象希望H5能在交互和加载能力等运行表现上变得更强大;19.39%的人希望H5相比于APP能提高API接口的硬件接入能力(见图2)。
而作为企业的技术方向的决策者,80%的CIO认为H5在市场教育上还有所缺乏,处于知道、但并不完全了解的阶段(见图3)。
就像网站并没有杀死软件一样,Web APP也很难杀死Native APP,即便得到H5支持的Web APP。更有可能的是,一个Native APP里在部分甚至大部分模块里包含H5——事实上,微信就是这样的应用,Facebook所谓退回NativeAPP,本质上也是网页打包进入它的那个原生应用。很难有泾渭分明的Web APP或者Native APP。
互联网巨头:美味H5“入口”
以H5应用为重心的领域正在吸引互联网巨头不断靠拢,从他们的布局可以一窥互联网风往哪个方向吹。
H5早在2008年就发布了草案,但并未引起广泛关注,而是进入了长期的迭代优化周期。直到2014年10月,W3C终于宣布,H5标准规范最终制定完成并向全世界开放。
在中国,无论是腾讯早期推其浏览器之时,还是后来百度为了打破APP的不可搜索性而力推,都没有将H5引爆。倒是最近随着微信朋友圈“霸屏”,H5才算在互联网世界中火了起来。
不仅是BAT全面布局H5,奇虎360也一边通过360手机助手和360手机卫士在推动原生应用的发展,一边通过360搜索和360浏览器在加速H5的布局。搜狐更是举全公司之力打造了基于H5技术的手机搜狐网3.0新闻客户端,而其CEO张朝阳还曾在个人微博里大力推荐QQ浏览器和腾讯X5浏览器,力推H5生态圈的形成。
在O2O与互联网+概念大火的情形下,外卖、家政、彩票、电影票等生活服务商都开始挂靠各大平台,舍弃APP,仅凭底层一个入口完成从场景到支付整个环节。
对于中国的互联网巨头来说,入口永远是争夺的战场。布局原生应用、开放H5,哪个都不能少。
百度
百度通过收购91手机助手、Android市场,以及自家推出的百度手机卫士、百度搜索等,逐渐在移动应用分发市场占据了重要位置。
从百度的战略发展来看,H5平台的搭建同样重要。其实,百度在很早之前就已经推出了“轻应用”这个概念,其本质就是H5,并向开发者和企业推出了各种技术开放接口。
与此同时,百度通过百度浏览器、百度搜索为企业和用户提供导流,促使用户保持原有的搜索习惯,并推出了为企业服务的直达号。
去年12月,百度还发布了APP调起SDK详细设计标准,旨在打破APP和H5的边界,通过发布的APPLink产品,依据用户的访问情况,帮助用户加载网站的H5页面,或是直接调起APP满足用户需求。目的是帮助开发者解决移动应用市场APP种类庞大,用户对APP越来越挑剔,下载欲望越来越小的问题。
阿里巴巴
作为全球最大的在线支付平台,支付宝也正在通过服务窗为企业和用户之间提供一个桥梁,而这个桥梁的应用也正是基于支付宝内部的H5。
作为阿里旗下的国内占有率最多的移动浏览器,UC浏览器同样也把H5的开放放在了重心。目前,UC专为移动WebAPP打造的UC+平台的月活跃用户已经超过了6000万,收录了20大类超过数万款的轻应用。
不仅如此,UC的神马搜索也正在开始努力打通和轻应用的无缝连接,实现为轻应用与用户对接和开放更多的流量入口。
腾讯
作为掌控着国内最大的移动入口平台公司,正在通过微信公众平台开始构建一个强大的轻应用平台。
腾讯一直都在努力为那些欠缺开发能力的公众账号,提供一个简单、标准化的解决方案一人人都能开发“微信应用”,这吸引了无数的企业和用户。微信向所有微信公号开放SDK接口,更多的用户可以接入并应用H5。
开发者不仅能够在网页上使用微信本身的拍照、选图、语音、位置等基本功能,还可以直接使用微信分享、扫一扫、卡券、支付等微信特有的能力。这也意味着,微信公众平台将更加开放,微信公众号的可定制性更加灵活。
连微信之父张晓龙都在2016微信公开课上提到,2016年微信最重磅的当属要推出基于H5的“应用号”。
对用户来说,在微信中看到的H5将不再局限于简单的页面展示,而是一个功能更全的轻应用,它包含更多的互动功能;对于第三方开发者来说,舍弃原生应用,专注做好基于微信的H5应用,比以往时候都更容易;而对企业来说,微信营销将变得更加轻松,企业与用户之间的对接将更加容易。
腾讯对H5频频示好,在QQ空间中,已经有游戏的入口玩吧。有数据透露,有H5游戏在QQ空间的流水已经过百万。而随着手机QQ浏览器6.0版本的上线,H5游戏的一级入口“热门页游”正式开通。
QQ推出的X5引擎,专用于开发H5应用,手Q也不想输在H5上。
从移动互联网以及巨头们的战略发展变化来看,移动应用分发更多的都只是在为手机游戏、手机日常必备工具提供入口和导流。对于打造一个真正强大的移动入口平台,H5已经变得越来越重要。同样,对于企业和很多开发者们来说,可以借助巨头的平台,开发更适合该平台的轻应用,为自己带来更多的流量和资源,实现对客户更好的对接。
H5游残:爆款迟未到,变现依旧难
H5游戏便捷性、碎片化的特点迎合了移动端用户的使用习惯,并且能够通过微信朋友圉等社交平台快速传播。然而,游戏会成为H5风口上飞起来的“猪”吗?
一年多的时间,H5已经从一款火热的游戏,变成了一盘大生意。2014年7月,一款《围住神经猫》的游戏在朋友圈疯狂转发,这让游戏从业者们又看到新的契机。
H5游戏,可以看作是移动端的Web游戏,是一种快捷、即时性的游戏形式,无需下载软件就可以体验,这是H5在传播上的优势。H5游戏便捷性、碎片化的特点迎合了移动端用户的使用习惯,并且能够通过微信朋友圈等社交平台快速传播。
时间回到乔布斯放话“没有人愿意使用Flash,全球已经开始步入H5时代”的2010年,当年10月,Zynga收购了H5游戏引擎开发商Dextrose,随后第一款H5游戏《Mafia Wars Atlantic City》诞生;Facebook宣布收购H5游戏团队Strobe;EA发布H5版的游戏《命令与征服》;与此同时,MOTO和迪士尼也分别投资收购了H5游戏公司Moblyng和H5引擎公司RocketPack。
不过,仅仅隔了不到一年,随着Moblyng第一个走下神坛,这些刚刚崛起的H5游戏公司就开始一个个地倒闭。随后,大批量的H5游戏公司宣告失败,H5神话开始破灭,这距离乔布斯“H5将取代Flash”的预言仅不到两年。
其实,正如前文所述,当时不是一个好的时间点。2011年是2G、3G的时候,Wi-Fi环境也远不如现在普及,H5的开发者更是不足。此外,H5在PC上的竞争对手就是风头正劲的Flash。
再来看一组数据:2013年,在微信朋友圈中蹿红的小游戏中,除了腾讯自己发布的几款外,就只有《疯狂猜图》,最火爆的那一周,日增用户最高峰值为30万;2014年,仅7、8月间,《全民寻找房祖名》在2天内被玩了6000万次;《看你有多色》上线2日用户数达3000万;《围住神经猫》更是创造了3天500万用户和1亿访问的奇迹。
现在,我们说H5火,很大一部分原因是手游大热。而去年起,手游竞争已呈现寡头化趋势,并将愈加激烈,资本不断涌入的同时,手游市场的风向标向“大成本大投入”发展。第三方机构Data Eye相关负责人也曾经公开表示:“2015年手游市场一直处于洗牌状态,整个移动游戏用户规模趋于饱和,游戏玩家增速放缓。”
中小手游团队想在市场分一杯羹的概率越来越小,与其小几率地熬成下一个《刀塔传奇》,不如换—个地方玩。
于是,国内开始涌现出大量的H5游戏开发商、社区、游戏引擎、专属渠道、以及一些传统游戏公司在H5领域的开拓。其中,从手游转向H5游戏的从业者最多,其次为页游,部分从未涉足游戏行业的团队也跃跃欲试。
来自Talking Data和Data Eye的数据显示,截止2015年Q1,H5游戏用户为1.21亿,占移动游戏用户的11.5%。截止2015Q1,3000余家个人或企业开发者投入H5游戏开发市场,总计超过80%的H5游戏公司人员规模在100人以内,相比手游、页游,端游集中在一线城市的现象被弱化,二三线城市从业者更多。
此前,业内曾预计在2015年8月前后,会有H5游戏的爆款出现,但实际并没有出现“爆款”,而且在变现方面,目前也没有千万流水的游戏出现。
此前,海底捞、滴滴出行、爱奇艺等也在试水H5游戏,试图把聚集起来的流量引导到游戏中去,进行变现。但在2015年11月30日,滴滴出行宣布旗下游戏中心将在2个月后停止运营,其在5月5日上线的游戏平台已经搭载了34款游戏,其中25款均为H5游戏。
几乎同期,蓝港互动裁撤了H5游戏部门,全体部门员工或转岗或离职。蓝港互动对此解释:“鉴于H5游戏目前依旧盈利能力不足,公司不会重金押宝H5游戏,但也不会放弃,将一直保持孵化的状态。”
尽管有H5游戏业内人士表示,可以通过广告、游戏内道具付费、跨屏精准营销、企业定制服务等多种方式变现。相比较之下,手游还可以通过设置付费点,增值道具等一系列手段完成付费形成闭环,通过日常运营来提高用户粘性和留存率。
但H5游戏利用碎片化时间在网页上进行的即时游戏,热度通常不超过7天,玩家一旦兴趣点转移,无需卸载便直接流失。淘汰快、粘性差是H5游戏的弊端,在无法留住用户之前,持续的变现能力也就无从谈起了。
移动办公:H5企业级应用崛起
H5跨屏、跨平台的各种优势,为企业的移动化转型打开了全新思路。
投融资情况,往往可以最直观地看到行业领域的发展状况。2013年到2015年的企业服务市场中,每年发生的投融资案例数量都是接近或超过当年整个IT行业投融资案例的50%。而这其中,与移动信息化相关的投融资案例数都是超过企业服务市场的50%,2013年这一数据更是接近95%。
再来看看企业这一端。“三年前我们调研的时候发现,超过80%的企业用户还没有把移动信息化纳入IT战略。但是今天,企业用户大部分已经把发展移动信息化当作一个很重要的战略部署工作。”移动信息化研究中心高级分析师江涛表示。(见图4)
可以看出,企业用户移动应用需求已经从解决因出差、外勤等原因造成的业务流转的停滞,转向满足优化或构建新业务模式的深度应用需求。企业移动信息化正当时
对于每一个企业来说,他们都需要建立一个或多个专门的企业移动应用来应对各式各样不同的移动端设备,这无形之中增加了企业的成本。尤其是对一些特别偏行业的大中型企业,他们的主要精力都在自己的核心业务上,而如何用先进的技术让他们拥抱移动互联时代,这也需要专业的技术提供方。
其实,最让企业们感到痛心的还不是资金成本这类问题,而是在数据库迁移中所面临的安全风险问题,数据库往往都涉及到企业的核心商业机密,一旦这些数据被盗,那对企业而言将是致命的打击。
而对于目前大部分都还在使用桌面虚拟化技术的企业来说,用移动设备远程管理桌面,远程操作和界面体验都非常差。
据移动信息研究中心《2014-2015企业移动信息化市场研究报告》显示,79%的用户选择“在原有的信息化系统”上进行“移动化”升级,仅有21%的用户选择“重新独立建设新的移动信息化系统”;在实际部署中,61.6%的用户选择“基于现有系统能够实现移动化升级的优先部署,再考虑其它系统”。
但由于标准缺失、传统应用的开发方式无法有效实现数据互通、效率提升、业务协同、构建一体化的目标,因此如何与原有系统平滑对接,实现从PC端向移动端延展,实现包含传统和移动化的整体平台化IT治理是企业移动化规划阶段的主要痛点,这给当前的企业移动信息化造成了实际障碍。
面对这些挑战和趋势,H5凭借天然具备的有跨平台运行能力、开发灵活、成本低等优势,逐渐在企中大型企业应用开发中得到认可。
2015《HTML5开发者应用情况调查报告》显示,对于如何看待H5技术进行企业级应用,被调查的所有CIO无一例外的选择了H5,前端开发工程师、后端开发工程师、产品经理三者对于移动化方式的选择几乎一致,均达到70%以上。(见图5)
此外,除了企业移动门户建设,据《2014-2015企业移动信息化市场研究报告》数据显示,49.2%的企业倾向使用H5技术实现企业移动OA的开发,53.7%企业选择HTML5技术实现移动CRM开发,并且上述数字还在迅速增长。
企业移动门户是企业移动信息化建设的第一步,除了在企业门户网站的移动化方式上对H5的技术选择呼声颇高外,H5技术的开发方式也正在逐渐向更多移动办公领域渗透。
从用户习惯上看,H5基于网页,能够打通PC、手机、Pad等多屏,让用户无需下载APP,只在需要时通过任何终端、任何浏览器的网页都能获得想要的信息。
从开发成本层面看,开发一个H5移动站点要比开发一个原生APP的成本低很多,尤其是对于中小企业和创业团队来说。开发一款原生APP成本除了前期的开发之外,还有后期的维护,都需要大量的人力、时间和精力。
H5开发相比与其它开发方式在工具性能的体现包括(bug修复、编辑、文档)等能力上优势相比较为突出,主要因为使用H5技术开发的产品具备Web天然具备跨屏、跨屏台的能力,在修改、迭代方面能帮助开发者大幅提高效率。
而从平台接入上看,H5具备天然的跨屏优势。不仅是手机,即便是在平板等其他智能硬件上,H5都能很好地自动适应每一个不同的屏幕,轻松实现跨屏。这一点,对于解决企业内部积累的各种各样的系统的移动化问题,有着天然的优势。
探路者云适配
未来的办公时代将会是移动办公与PC办公并行的时代。企业内部的线上沟通交流,通过手机可以以文字、语音、视频等多种沟通方式;公文的流转和审批、高层决策等环节完全可以依赖移动办公随时随地的完成,而不耽误整个项目的进度。
在国内的移动办公市场,正在掀起两股势力,一股是以微信企业号、阿里钉钉等为代表的企业移动应用,另一股势力则是以云适配为代表的创业公司发动的H5。
近日,云适配发布了具备移动和PC双渲染引擎的企业浏览器Enterplorer,这是云适配自主创新并且拥有独立内核的企业级浏览器,专门为企业移动办公使用场景而开发。可快速的实现对企业原有B/S结构的PC端业务系统的移动化。
据了解,云适配移动化方案是基于H5技术实现的。双渲染引擎的基本原理是用PC引擎处理页面、移动引擎展示移动页面,从前端解决企业移动化过程中跨平台不兼容、系统对接难、开发工作量大、风险高的问题。
一方面它的跨平台的自有内核能够屏蔽Android操作系统之间的差异性,让H5应用无论运行在什么Android手机上都有一致的表现,真正实现“一次开发、到处运行”;另外一方面,Enterplorer内核为企业做了包括内置安全沙箱、缓存加密、Cookie加密、下载文件加密等在内的安全加密,以及包括设备管理、权限管理、远程数据擦除等在内的后台管理,在保证企业数据安全的同时,让企业管理员可以做实时的统一管理。
“我们目前有一些APP,还有微信企业号,员工在使用过程中需要登录多个应用。”金山软件CIO万勇说。
像金山这样应用众多、跨平台的大型企业并不少见,由于移动应用与传统应用的割裂,新老系统的信息处理、数据共享、价值挖掘的问题都是摆在金山面前的企业信息移动化难题。采用了云适配的Enterplorer后,金山员工在使用内部应用系统过程中可以使用统一的入口;可以实现对员工访问权限管理、设备管理、账户管理等后台管理功能;并且还改善了之前微信企业号的响应速度。
普天太力是国内最早的全国手机分销商之一,同样也选择了云适配企业级浏览器Enterplorer为核心的云适配整体移动化解决方案。在解决普天太力的BPM(业务流程管理)系统移动化方面,云适配采用基于H5标准的开发方式,提供了自主可控的“统一办公入口+安全管理平台+移动适配开发工具”的整体办公移动化解决方案,在复用PC端系统数据和业务逻辑的基础上,不需要依赖原厂商,以“零API、零改动”原则,安全、可靠、快速地为普天太力完成了移动化战略。
对于已经在PC端拥有多套办公系统的大中型企业来说,显然H5技术会更适合他们;而对于一些小企业以及新的公司来说,H5和企业移动应用则各有千秋,势均力敌。
企业级移动应用服务市场是一个万亿产业值的大市场,未来将会有越来越多公司涌入到这个领域,甚至不排除巨头介入的可能。虽然云适配独创了基于浏览器内核的“双渲染适配引擎”技术,能够让移动端可以同时打开移动端和PC端网页,并且实现内容的完全同步,但是传统企业办公领域巨头们数十年的技术积累和用户积累却是云适配不能忽视的。
企业级应用还需产业链共同推动
中国信息通信研究院技术与标准研究所所长王志勤表示,H5迅速发展的同时仍存在着一些挑战:“一是H5规模化应用尚需时日,与原生应用将长期共存、并行发展;二是相关信息安全问题有待重视;三是H5平台技术标准落后于产业实践,生态完善需要产业进一步协同。目前,H5平台厂商多根据自身需要对标准进行自定义的扩展,造成H5平台对基本功能特性集缺少共识、关键能力接口不统一、安全机制良莠不齐等问题。”
不可否认,行业联盟在促进产业发展方面一直起着重要的推动作用。就在云适配发布企业级浏览器Enterplorer的当天,“中国企业级H5产业联盟”同时宣布成立。据了解,该联盟由中国信息通信研究院技术与标准研究所、云适配、微软、英特尔、华为、科大讯飞、金山等多家企业及研究机构筹备发起。
对于H5,联盟单位早已布局。微软在去年7月份推出了Win10,它有更强的管理能力、安全性,以及更强的兼容性,同时可以更好的跨平台。“基于Win10,未来微软中国将会做更多的本土化,通过为企业客户量身定制操作系统的基础之上,在企业移动办公方面和H5有更深的结合。”微软(中国)有限公司Windows&Surface事业部总经理徐维英表示。
华为早在2011年就加入了W3C标准组织,积极推动H5技术和生态的发展。华为移动安全平台AnyOffice产品总监陈爱平表示,“华为在企业移动化的变革中,聚焦安全、终端、网络等基础设施,愿意与广大的H5平台及应用厂商一道为企业移动信息化的普及做出贡献。”2014年,华为就已经与上下游合作伙伴共同建立了中国最大的BYOD应用联盟。
如果说微软和华为是从操作系统领域布局H5,那么,科大讯飞则是从应用软件以及人工智能层面对H5进行探索。科大讯飞首席信息官CIO严峻表示:
“在企业移动化应用大环境下,智能语音交互模式在企业应用里面有非常广阔的应用前景,我们希望通过对H5的探索,和产品链上下游企业有更广泛的合作。”
当H5遇到兼容性难题
陈本峰
不经过大量的兼容性测试和修复,H5也没法实现真正跨平台。
过去这些年,H5几乎已经彻底改变了PC互联网甚至移动互联网的格局。
纵观H5的发展史,一波三折,有用户的需求推动,有技术开发者的需求推动,更有巨大的商业利益在推动。如今,随着4G的普及以及手机硬件性能的飞速发展,H5一直被诟病的性能问题逐渐被淡化,H5也逐渐被人们接受成为信息和应用的载体。
过去的2015年,H5的确得到蓬勃的发展,尤其在微信朋友圈的营销上。然而,H5要走出微信朋友圈,在各种场景下得到广泛的使用,还有很长一段路要走。
看上去很美
业界一直都说H5的杀手级武器是跨平台,相比原生APP要针对不同手机操作系统做开发,H5只需一次开发,就可以在所有操作系统上运行。
H5是唯一一个通吃PC、Mac、iPhone、iPad、Android、WindowsPhone等主流平台的跨平台语言。Java和Flash都曾梦想这个位置,但都梦断于iOS。此时,人们纷纷开始研究基于H5开发跨平台手机应用,很多人都认为,原生应用只是过渡,就像当年从C/S结构转变为B/S结构一样。而且学习Objective-C和Java很费劲,既然会网页开发,为何不试试H5。
然而,H5毕竟只是一个技术标准,所以跨平台只是理论上的跨平台。在实际应用过程中,大家会发现各种浏览器之间存在各种各样的差异性,导致H5页面在不同浏览器上显示的效果不一致,于是要经过大量的兼容性测试和修复才能真正实现“一次开发,所有平台完美运行”的理想,而这样的工作量并不小。
对此,大家可能有疑问:H5不是国际标准么,浏览器都遵守H5国际标准来开发的话,不应该出现不一致啊?
其实,这里面有多方面的原因:
首先,H5的功能是个巨大的集合,浏览器产商不可能在一个版本开发周期中实现所有的H5能力,每个版本都只能开发一小部分子集。不同的浏览器产商会根据自己对市场的判断以及公司的战略,制定自己的开发路线图,所以自然会出现不同浏览器支持的H5功能集合不一致;
其次,W3C一直把制定的标准文档定义成“Recommendation(意思为“推荐”)”,也就是说,H5并不是一个强制的标准。如果开发者写的HTML网页不符合标准,浏览器依然能够显示。
事实上,互联网上有95%以上的网页都是不符合W3C标准的。结果就是,网页中有大量的异常情况,需要浏览器自己去修复。如何修复不标准的网页并没有一个固定做法,所以不同浏览器产商都有自己的一套解决方式。这也导致了各个浏览器虽然都是按照相同的W3C来开发的,但是最后的代码算法是不同的,继而导致了显示结果不一致;
第三,互联网是个高速发展的市场,每个浏览器产商都要为适应新的市场变化开发具有足够创新升级版本。然而向前创新和向后兼容往往是矛盾的,所以浏览器产商在新版本中可能会做出一些巨大的代码调整。
然而,浏览器是安装在用户手机上客户端程序,用户有权利选择是否进行升级。这就导致了即使是同一个产商的浏览器,你还得为它的不同版本做相应的兼容性修复。这一点相信大家在PC时代的IE浏览器上都吃过很多苦头,每个前端开发者都需要为IE6、IE7等不同版本做出大量的工作;
第四,今天的手机操作系统是个非常碎片化的市场。Android的开发性为它带来了高速的市场覆盖,但同时也带来了极度碎片的版本分支。几乎每个手机产商都会做一些定制,以实现自己在市场上的差异化。小米有MIUI、华为有EMUI、三星有TouchWiz等等。手机操作系统自带的默认浏览器也会做相应的定制,因此导致H5网页在不同手机操作系统的默认浏览器上显示不一致。
由于很多第三方APP内嵌浏览器一般都直接调用了操作系统自带的浏览器内核,从而导致网页在了不同手机上显示效果不一样,这点在混合APP(HybridAPP)中体现尤为明显。
如何解决H5在实际应用中的兼容性问题?
上面提到了诸多H5不能真正跨平台的原因,可能很多朋友们就要问了,如何解决?其实解决H5在实际应用中的兼容性难题,真正实现H5的跨平台,有两个途径:
途经一:通过H5的底层框架来屏蔽不同浏览器的兼容问题,所有的H5应用在框架之上来开发。
像国外的Bootstrap、jQuery UI等都是很好的UI框架,基于他们之上来开发可以减少大量的兼容性调试工作。当然,这些国外的UI框架都是针对国外的审美观、国外的主流浏览器和操作系统,国产的Amaze UI也是类似的框架,但是针对国内网民的样式喜好以及主流移动浏览器或带有浏览器功能的APP(比如微信)做了大量的调整优化;
途径二:通过让用户使用自有内核的固定浏览器,这样就不存在兼容多个浏览器或者操作系统的问题了。
然而,对于普遍的大众网民,没有任何一个企业或者是组织强制大家使用哪一款浏览器。但是,在企业内部办公的场景中,这种方式是比较可取的。
一方面,公司的员工数目有限,多的也就几千人上万人,所以,IT开发人员花大量时间去做兼容性测试和修复是一件投入产生比很低的事情,对公司效益没有任何帮助;
另外一方面,市面上各种浏览器的安全能力参差不齐,让员工自由选择浏览器是一件风险很大的事情,极有可能会导致企业数据泄露或者木马入侵。
因此,让员工使用公司经过安全认证的固定浏览器,一方面大幅度减轻IT开发的工作量,另外一方面有效保障企业数据安全,事半功倍。
H5作为一种开发语言,最终都是需要运行在浏览器上的。因此,要使H5的优势充分发挥在应用在移动办公方面,必须要有一个带自有内核并且专门针对企业的安全管理优化的浏览器。
不管怎样说,虽然H5跨平台的能力受限于操作系统的碎片化,仍然显得不完美,但是其天然的跨平台能力已经在很大程度上为开发者们带来了巨大的价值。
原因不言而喻。对于开发者而言,除了iOS、Android,开发者为什么不愿意再开发WP版本,很多时候是因为工作量太大,除了版本适配,分辨率调整等,一旦有新版本推出,在原生应用中开发者不得不等待多达两周时间去接受审核,跨平台在多屏时代给开发者非常痛苦的体验,人们都期待当年Java的一次编译处处运行的理想情况。
而H5目前正在扮演这样一个开发者救星的角色,这里面只需要有一个统一的企业级浏览器就可以了。
作者为云适配CEO,HTML5中国产业联盟专家委员。曾任职于微软美国总部IE浏览器核心团队,参与IE的HTML5引擎设计开发以及下一代互联网标准HTML5国际标准制定。专注互联网标准以及浏览器相关技术研究超过10年,著名的IE 404页面就是出自陈本峰之手。