HTML5定稿了,为什么原生App世界将被颠覆

发布时间:2025-12-20 点击:2
html5第二阶段:移动互联网
随着chrome和safari的高歌猛进,以及ie+flash的衰落,html5告一段落,进入了下一个时代——移动互联网。html5的跨平台优势在移动互联网时代被进一步凸显。html5是唯一一个通吃pc、mac、iphone、ipad、android、windows phone等主流平台的跨平台语言。java和flash都曾梦想这个位置,但梦断于ios。此时人们纷纷开始研究基于html5开发跨平台手机应用。很多人当时认为,原生应用只是过渡,就像当年从c/s结构转变为b/s结构一样。而且学习objective-c和java很费劲,我既然会网页开发,为何不试试html5。
w3c此时成立了device api工作组,为html5扩展了camera、gps等手机特有的api,然而麻烦的是,移动互联网初期的迭代太快了,手机os在不停的扩展硬件api,陀螺仪、距离感应器、气压计。。。每年手机os都有大版本更新。而w3c作为一个数百家会员单位共同决策的组织,从标准草案的提出到达成一致是非常复杂的过程,跟不上移动互联网初期的快速迭代。
phonegap的出现,给开发者打开了一扇窗。很多人期待phonegap不停扩展api,来补充浏览器的不足。adobe看到phonegap仿佛看到了重振江湖地位的希望,但在adobe收购phonegap后,又发现这个东西可商用性不足,而且开源使得adobe无法像flash那样获取商业利益,于是就把phonegap捐给了apache,改名为cordova。
因为各种原因,cordova的定位最终没有成为浏览器的强化,而走向了混合式开发。基于当时的背景,他们认为原生是不可替代的,“原生+html5”的混合模式更有意义。所以现在cordova的使用模型是“原生工程师+html5工程师”一起协作完成app。
这时facebook加入了w3c,牵头成立了mobile web工作组。facebook是混web圈的,并且在手机os上没有自己的领地,他不喜欢被苹果和google掌控的原生应用生态系统。mobile web这个工作组的重要目标就是让html5开发的网页应用达到原生应用的体验。然而,事与愿违,它不努力也就算了,结果是努力了却失败了。2012年,facebook放弃了html5的新闻充斥了全世界的it媒体,html5瞬间被打入冷宫。
facebook为何放弃html5?核心是当时基于html5真的做不出好的移动app。对比twritter等竞争对手的原生app,facebook的html5版本实在无法让用户满意。比如push功能,到现在html5的推送和原生的推送体验差距依然巨大,更不用说html5应用的页面切换白屏、下拉刷新/侧滑菜单不流畅等众多问题。看着原生工程师轻松实现摇一摇、二维码、语音输入、分享到朋友圈等功能,更是让html5工程师感觉自己站错了队。
即使facebook不喜欢被控制,也不能拿被用户抛弃来冒险。而且facebook并没有掌握关键点—手机浏览器内核。如果浏览器不跟上,徒然定一堆标准草案落不了地。
而浏览器在手机上的表现是什么呢?先看google,chrome性能虽高,但android上的浏览器却并非chrome,而是webkit改出来的一个蹩脚的android浏览器;再看苹果,ios上不允许其他浏览器引擎上架app store,而且其他使用safari引擎的应用也无法调用苹果自己的javascript加速引擎nitro。结果是苹果和google不但不在浏览器上积极实现html5关于移动app所需的规范,反而对html5做出种种限制。
不管是当时硬件能力不足,还是手机os厂商的故意限制,总之结果就是:在移动互联网的初期,一定是原生应用生态系统的天下,ios和android首先自己的地盘稳固后,产业才会向下个阶段升级。
facebook也好,phonegap也好,想在移动互联网初期就分一杯羹是分不到的,但坚持下来,机会往往会出现。html5这回真的来了
终于,在2014年10月底,w3c宣布html5正式定稿。这个时间,不晚不早,硬件性能更强、手机os迭代速度下降。
随着html5标准定稿,一切纷争将告一段落,现在,属于html5的时代到来了。
有人说,光标准定稿没用啊,配套起来了吗?html5做的应用究竟能否匹敌原生app?答案是,html5不但可以匹敌原生app,甚至它天然的很多特性超越了原生app。
我们先谈谈html5原来不如原生应用的地方,业内俗称html5有“性工能”障碍。即html5性能不如原生、开发工具不如原生、能力调用不如原生。
这几个问题导致开发者无法使用html5做出与原生一样的app。然而,不管是硬件升级还是os厂商策略变化,以及相关软件技术的成熟,已解决了html5的“性工能”障碍。
1.硬件升级
2011年,iphone 4s的cpu是a5,现在iphone 6是a8,按苹果的历次发布会的说法,速度共提升了7.5倍。这3年间7.5倍的速度提升,抹平了太多html5的性能问题。
2.苹果、google的策略变化
google在2013年底发布的android 4.4,内置的webview不再是蹩脚的android webkit浏览器,而是chromium,性能大幅提升。从最新的android 5.0开始,webview可以通过google play store实时更新,和chrome的升级保持一致,用户就可以不刷机享受到最新的浏览器引擎;再看apple方面,2012年iphone 5发布后,html5在ios上的表现已令人满意,safari的javascript加速引擎nitro不再那么重要,不过在ios 8发布后,苹果还是很识趣地取消了三方程序调用nitro的限制,现在任意浏览器或应用调用ios的uiwebview都可以利用nitro加速,这样在前端使用js做大型运算也成为可能。两大手机操作系统霸主和浏览器巨头的态度发生了变化,使得html5在手机上的发展不再受限,而且这个变化不可逆只能继续向前,这种变化势必会产生深远的影响。
3.软件技术的成熟
phonegap的发展虽然放缓了,但其他产品技术却成熟了。2014年的iweb大会上,众多厂商的产品提供了面向开发者免费或开源的html5性工能障碍的解决方案。
(注:作者作为从业人员,也会在分析各种方案时提到我们公司的方案,但作者会客观不夸张的陈述方案,而且该方案是纯免费的,没有商业销售嫌疑。)
dcloud公司在iweb大会上发布了系统的html5“性工能缺失”的解决方案,包括:
a)性能:提升html5性能的手机端引擎,让侧滑菜单、下拉刷新等动态交互卡顿的问题得以解 决;
b)工具:html5开发ide产品hbuilder, 超快的编程利器;
c)能力:把40万原生api封装成javascript对象,以解决html5能力不足问题的native.js技术;
d)最接近原生体验的高性能框架:mui框架,体积只有几十k,加载、运行远快于一般框架。基于该方案开发的html5应用完全可以达到原生app的功能和体验。
使用hbuilder开发html5应用
英特尔公司发布了crosswalk引擎,可以让android 4.0 - 4.3的手机上的应用打包chromium引擎而不是android webkit。毕竟目前市场上存在大量android 4.0 - 4.3的手机,同时统一的webview也避免了兼容性的烦恼。
在专业方向上很多公司也做出了不错的成绩。触控的cocos2d-html5、egret runtime和ludei cocoonjs强化了canvas的表现,让html5游戏体验更好;uc、猎豹等手机浏览器都强化了音视频播放的表现。
不管是硬件升级、软件成熟,还是操作系统厂商策略变化,都在强力推动html5的爆发。
不过要注意,我说的html5爆发,不是指手机浏览器会替代桌面成为应用入口。有人说html5不好,因为用户讨厌打开浏览器输入url的过程。我想说这种想法是对html5的片面理解。html5!=传统浏览器,虽然编程语言还是html、javascript、css,但发行方式绝不是传统网站那么简单。html5应用的入口,反而很少是启动浏览器输入url,它可以是存在于手机桌面的图标、也可以来自超级app(如微信朋友圈)、以及搜索引擎、应用市场、广告联盟。。。到处都是它的入口。它的入口,比原生app更多。


如何利用搜索引擎营销做品牌推广?
网站建设:网站内容规划一定要做的有特点
重庆SEO人员必须要懂的搜索引擎优化工作原理,你知道几个?
企业网站制作转化率低是什么原因及如何解决?
快速学好SEO有哪些技巧?
网络公司对客户的经济效益的帮助
网站建设之电商网站建设方案
重庆互联网+时代的网站建设发展趋势是什么?