全解HTML 5在移动Web应用的优劣势

移动开发
Android和iOS手机的兴起,加速了HTML5在移动设备的普及。移动浏览器的不断升级,给HTML5在移动Web方向的发展提供源源不断的动力。也随着设备性能的不断提高,移动Web应用的能力也渐渐逼近客户端应用。

关于HTML5

  HTML5具有[[19783]]语义学、[[19784]]本地存储、[[19785]]设备访问、[[19786]]连接性、[[19787]]多媒体、[[19788]]平面和三维效果、[[19789]]性能和集成和[[19790]]CSS3八大技术特征。让Web应用进入无插件时代,在功能和性能上逼近桌面应用。促使应用Web化,实现跨平台。

  HTML5规范草案将于2012年发布候选推荐版,2022年发布计划推荐版。规范的实现似乎还在遥远的未来,其实不然!当前很多浏览器已经部分支持HTML5,caniuse.com提供了详尽的浏览器支持情况。HTML5规范本身并不多,很多相关规范都被独立出来,由浏览器各自实现。

HTML5规范草案

移动Web应用方向

  手机上网已经成为最重要的上网方式之一,手机网民已达3亿。移动互联网时代已经开启,发展势头迅猛,成为互联网行业的新战场。

手机上网已经成为最重要的上网方式之一

  Android和iOS手机的兴起,加速了HTML5在移动设备的普及。与桌面浏览器不同的是,移动操作系统和浏览器随着手机的换代而不断升级。移动浏览器的不断升级,给HTML5在移动Web方向的发展提供源源不断的动力。也随着设备性能的不断提高,移动Web应用的能力也渐渐逼近客户端应用。

 2010中国智能手机市场不同操作系统产品的关注比例

 中国IT网民未来更换/购买智能手机时操作系统选择比例

移动Web应用对比客户端应用的优势:

  1. 更多开发人员有丰富的Web开发经验和工具积累,也形成了成熟的开发社区
  2. 迭代更敏捷,实现持续更新
  3. 跨平台,开发成本比客户端的较低

Web应用宿主选择

  Web都有宿主,宿主是运行程序所需要的环境。Web常见的宿主有IE、FF、Chrome这些浏览器。Javascript也运行在服务器端宿主,如node.js。在移动设备,移动Web可以运行在移动浏览器上,也可以运行在PhoneGap或Titanium等框架宿主上。当然我们也可以根据跨平台需要编写自己框架宿主。

框架宿主优势:

  1. 已形成成熟的社区,便于解决问题
  2. 如PhoneGap等,比浏览器拥有更高权限。可以访问联系人、文件、摄像头、录音等设备
  3. 可以通过模拟器进行测试,减少跨浏览器测试成本

框架宿主劣势

  1. 以客户端形式发布,版本更新难度大,动态发布需要额外代码支持
  2. 系统有可能只支持单进程
  3. 产品之间无法跳转,不容易衔接

                        PhoneGap兼容性


移动浏览器是系统附带的,不需要发布,随着系统升级而更新。在没有权限要求和高端目标设备的情况下,浏览器宿主作为移动Web应用宿主更为适合。

  Android浏览器   Mobile Safari

浏览器宿主优势:

  1. 无需发布,浏览器一般还支持桌面快捷方式
  2. 产品更新维护方便,可以实现持续更新
  3. 移植性高(相对框架宿主的一些自定义接口)

浏览器宿主劣势:

  1. 浏览器兼容不高,对HTML5支持有差异
  2. 性能差异大,必须考虑设备间处理能力的差异
  3. 测试成本大(特别是Android系统设备),无法覆盖所有机型

移动Javascript框架

  在HTML5的支持下,交互集成取代Javascript浏览器兼容性成了移动Javascript框架的发展方向。其中jQuery Mobile和Sencha Touch最受追捧。

他们主要解决:

  1. 交互(包括UI设计、控件交互、页面切换等)集成
  2. Touch手势

      [[19796]]

交互集成框架优势:

  1. 交互都符合设备交互特点和设计规范(Android和iOS)
  2. 开发门槛低,适合快速开发
  3. 开发社区已经有丰富的跨平台经验和较全面的测试结果

交互集成框架劣势:

  1. 文件体积较大,效率往往不如原生HTML5
  2. 交互模式固定,难以摆脱
  3. 没有完善的业务框架,还需要自己实现基础业务框架(代码更新、业务模块重用等)

                            jQuery Mobile 兼容性

除了交互集成框架,我们还可以考虑使用原生HTML5开发自己的移动Javascript框架。自己开发更有针对性和目的性,适合业务扩展和性能优化,可以弥补集成框架的缺陷。

原生HTML5框架优势:

  1. 最适合长期业务扩展
  2. 开发灵活度更高
  3. 可针对目标设备的性能优化

原生HTML5框架劣势:

  1. 暂时只能兼容高端设备(Android2.0+、iOS3.2+性能较佳)
  2. 跨平台测试成本比较高
  3. 框架开发门槛比较高,需要一段时间发展

【编辑推荐】

  1. SPIL Games公司CEO谈HTML5手机游戏前景
  2. 开发者传授打造iPhone手机游戏项目攻略
  3. 独立手机游戏开发者的未来走向
  4. Windows Phone 7 免费线下培训火热报名中
责任编辑:佚名 来源: gzterrytan博客
相关推荐

2023-03-06 16:29:56

2015-08-17 14:48:38

LiFiLiFi网络优劣势解析

2015-10-13 09:48:22

GCE网络应用云应用部署

2013-10-15 10:45:26

VDIBYOD

2023-06-27 13:51:07

FPGA数据中心程序

2018-08-29 15:23:18

数据库NoSQLMongoDB

2011-08-03 14:49:57

框架

2023-04-12 09:23:24

汽车自动驾驶

2010-03-23 14:32:11

混合虚拟化

2018-10-31 12:51:04

2022-08-10 07:05:35

vscodePyCharm开发工具

2011-10-31 13:06:10

2015-07-08 09:19:56

HaaSHadoop即服务云端Hadoop

2011-06-16 11:46:25

投影机技巧

2022-08-10 14:03:01

MySQL数据库存储

2019-04-11 10:26:15

架构运维技术

2013-08-26 10:21:31

Android制造商分析

2011-09-22 09:55:40

投影仪评测

2015-05-26 09:15:14

开源PaaS 云平台Cloud Found

2018-12-14 15:24:01

虚拟化基础架构
点赞
收藏

51CTO技术栈公众号