扫描二维码

订阅畅享网微信

Html5是否是移动开发万能膏药?

来源: 移动信息化   
2012/11/12 15:02:35
HTML5最近两年声誉鹊起,而基于HTML5技术的产品也风生水起

本文关键字: Html5 Android iOS

HTML5最近两年声誉鹊起,而基于HTML5技术的产品也风生水起。感觉现在你的产品要是不和HTML5沾点边,都不好意思和客户打招呼!移动应用开发中,HTML5更是不可或缺的角色,市面上不少移动应用中间件产品都号称支持HTML5,例如PhoneGap、JQueryMobile、Sencha Touc、ExMobi、APPCAN.但在支持的程度和方式上均各有不同。

近来移动应用开发公司Kendo最近进行了一次调查,该调查有4034位软件开发者参与,调查显示94%的软件开发者已经开始或者计划使用HTML5,其中高达63%的开发者已经使用HTML5,而只有6%的开发者称2013年前不会使用HTML5.移动开发者对于HTML5的热情依然不减,那么HTML5到底是否适合移动开发呢? 依笔者看来HTML5只是一项技术标准,就像爱情这东西,是个理想模式;真正做产品和项目才是真实的婚姻生活,合不合适到具体应用时才清楚。

“王子和公主最终过上了幸福的生活,可是幸福生活的第一天就要为谁做饭而吵架”.

在技术选择上,不可以过于盲目,特别是移动应用这块领域,HTML5有太多的特殊性。

我们选择HTML5相关的开发框架或产品,需要慎重选择。

引擎的可控性

目前,在手机上,基于HTML5的引擎,一般是操作系统提供商集成到ROM中,通过WebView组件来为开发者提供接口;Android中的WebView是Google提供,iOS中的UIWebView是苹果公司提供。

2011年,很多使用WebView开发的Android程序员突然发现,原来用的好好的WebView的addJavascriptInterface接口会导致程序崩溃,这可是基于HTML5开发的基础接口;PhoneGap等库也等莫名其妙崩溃了。

最终发现,原来是Google的WebKit引擎出现了重大BUG.

怎么办呢?只能等Google修复这个漏洞。Google是个特立独行的公司,修复这个漏洞到手机厂商更新也费了不少时间。这可把程序员们折腾了个够呛。

我们看市场上支持或基于HTML5的产品:那些老牌的浏览器厂商,例如腾讯的QQ浏览器、优视的UC浏览器、海豚浏览器都有自己的引擎,扩展了自己的特性;一些中间件厂商,例如烽火的ExMobi中间件,也实现了自己的解析和渲染引擎。

仅仅是因为这些厂商兵精粮足,技术雄厚吗?肯定不是,老板不会砸冤枉钱!

不受制于人,是一个很重要的原因。

自身没有引擎的一些产品,因为依赖于手机ROM中引擎的实现,不得不为了兼容性而左支右绌,不停折腾,影响产品自身的稳定性。

引擎在HTML5实现上的一致性

相信大部分Web程序员对历史悠久的IE6浏览器一定印象深刻,这是个特立独行的浏览器,对HTML5的支持极差,导致Web代码中充斥着一行行的垃圾。

在移动应用开发上,我们似乎可以高枕无忧了,因为无论是Android还是iOS的浏览器引擎,都是WebKit.

难道我们忘了Microsoft了吗?

没有策略的使用HTML5,到了WinPhone大行其道的时候,你的代码可能需要重新修补,这对程序员将是场恶梦!

那应用本身支持浏览器引擎,嵌入到应用中不就好了吗,这样就能实现一致性,为什么一定要用操作系统本身的呢?大哉问!

要知道标准的浏览器引擎通常非常庞大,例如WebKit就达到30M以上,用户不可能接受一个普通的应用非资源型的内容达到30M以上,例如AppStore上面有一个应用“十二星座老婆说明书”有70M,似乎就太大了。这就是为什么基于HTML5的中间件为什么通常只是用手机ROM中的浏览器引擎的原因。

另外,无论是移植引擎还是实现自有引擎,都是个技术活,不是每个公司都有实力去做这个事情。

 

责编:chrislee2012
vsharing微信扫一扫实时了解行业动态
portalart微信扫一扫分享本文给好友

著作权声明:畅享网文章著作权分属畅享网、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
畅享
首页
返回
顶部
×
    信息化规划
    IT总包
    供应商选型
    IT监理
    开发维护外包
    评估维权
客服电话
400-698-9918