因为各种原因,Cordova 的定位最终没有成为浏览器的强化,而走向了混合式开发。基于当时的背景,他们认为原生是不可替代的,「原生+HTML5」的混合模式更有意义。
这时Facebook加入了W3C,牵头成立了Mobile Web工作组。Facebook是混Web圈的,并且在手机OS上没有自己的领地,他不喜欢被苹果和 Google掌控的原生应用生态系统。Mobile Web这个工作组的重要目标就是让HTML5开发的网页应用达到原生应用的体验。然而,事与愿违,结果是努力了却失败了。2012 年,Facebook放弃了HTML5的新闻充斥了全世界的IT媒体,HTML5瞬间被打入冷宫。
Facebook为何放弃HTML5?这一事件,甚至让别有用心的人经常拿来唱衰HTML5以及Web App。
核心原因是当时基于HTML5真的做不出好的移动App。对比Twitter等竞争对手的原生App,Facebook的HTML5版本实在无法让用户满意。比如Push功能,到现在HTML5的推送和原生的推送体验差距依然巨大,更不用说HTML5应用的页面切换白屏、下拉刷新/侧滑菜单不流畅等众多问题。看着原生工程师轻松实现摇一摇、二维码、语音输入、分享到朋友圈等功能,更是让HTML5工程师感觉自己站错了队。
即使Facebook不喜欢被控制,也不能拿被用户抛弃来冒险。而且Facebook并没有掌握关键点—手机浏览器内核。如果浏览器不跟上,徒然定一堆标准草案落不了地。
Facebook也好,PhoneGap也好,想在移动互联网初期就分一杯羹是分不到的,但坚持下来,机会往往会出现。
终于,在2014年10月底,W3C宣布HTML5正式定稿。这个时间,不晚不早,硬件性能更强、手机OS迭代速度下降。HTML5的定稿的预示着新时代的起航。
对于移动设备来说,硬件性能的提升移动程度上抹平了HTML的不足,同时补充了流媒体和游戏能力。行业支持上从最新的Android5.0开始,Webview可以通过Google Play Store实时更新,和Chrome的升级保持一致,用户就可以不刷机享受到最新的浏览器引擎;iOS 8发布后,苹果还是很识趣地取消了三方程序调用 Nitro 的限制,现在任意浏览器或应用调用iOS的UIWebview都可以利用Nitro加速。
Google在2013年底发布的Android 4.4内置的Webview不再是蹩脚的Android WebKit浏览器,而是Chromium,性能大幅提升。从最新的Android 5.0开始,Webview可以通过Google Play Store实时更新,和Chrome的升级保持一致,用户就可以不刷机享受到最新的浏览器引擎;再看Apple方面,2012年iPhone 5发布后,HTML5在iOS上的表现已令人满意,Safari独家的Java加速引擎Nitro不再那么重要,不过在iOS 8发布后,苹果还是很识趣地取消了三方程序调用Nitro的限制,现在任意浏览器或应用调用iOS的UIWebview都可以利用Nitro加速,这样在前端使用JS做大型运算也成为可能。
两大手机操作系统霸主和浏览器巨头的态度发生了变化,使得HTML5在手机上的发展不再受限,而且这个变化不可逆只能继续向前,这种变化势必会产生深远的影响。
了解更多游戏相关资讯,敬请关注伍游网(tongji.5you.cc)。