全解HTML 5在移动Web应用的优劣势
来源:互联网 发布:mac待机耗电很快 编辑:程序博客网 时间:2024/06/07 03:22
Android和iOS手机的兴起,加速了HTML5在移动设备的普及。移动浏览器的不断升级,给HTML5在移动Web方向的发展提供源源不断的动力。也随着设备性能的不断提高,移动Web应用的能力也渐渐逼近客户端应用。
AD:2014WOT全球软件技术峰会北京站 课程视频发布
关于HTML5
HTML5具有语义学、本地存储、设备访问、连接性、多媒体、平面和三维效果、性能和集成和CSS3八大技术特征。让Web应用进入无插件时代,在功能和性能上逼近桌面应用。促使应用Web化,实现跨平台。
HTML5规范草案将于2012年发布候选推荐版,2022年发布计划推荐版。规范的实现似乎还在遥远的未来,其实不然!当前很多浏览器已经部分支持HTML5,caniuse.com提供了详尽的浏览器支持情况。HTML5规范本身并不多,很多相关规范都被独立出来,由浏览器各自实现。
移动Web应用方向
手机上网已经成为最重要的上网方式之一,手机网民已达3亿。移动互联网时代已经开启,发展势头迅猛,成为互联网行业的新战场。
Android和iOS手机的兴起,加速了HTML5在移动设备的普及。与桌面浏览器不同的是,移动操作系统和浏览器随着手机的换代而不断升级。移动浏览器的不断升级,给HTML5在移动Web方向的发展提供源源不断的动力。也随着设备性能的不断提高,移动Web应用的能力也渐渐逼近客户端应用。
移动Web应用对比客户端应用的优势:
- 更多开发人员有丰富的Web开发经验和工具积累,也形成了成熟的开发社区
- 迭代更敏捷,实现持续更新
- 跨平台,开发成本比客户端的较低
Web应用宿主选择
Web都有宿主,宿主是运行程序所需要的环境。Web常见的宿主有IE、FF、Chrome这些浏览器。Javascript也运行在服务器端宿主,如node.js。在移动设备,移动Web可以运行在移动浏览器上,也可以运行在PhoneGap或Titanium等框架宿主上。当然我们也可以根据跨平台需要编写自己框架宿主。
框架宿主优势:
- 已形成成熟的社区,便于解决问题
- 如PhoneGap等,比浏览器拥有更高权限。可以访问联系人、文件、摄像头、录音等设备
- 可以通过模拟器进行测试,减少跨浏览器测试成本
框架宿主劣势:
- 以客户端形式发布,版本更新难度大,动态发布需要额外代码支持
- 系统有可能只支持单进程
- 产品之间无法跳转,不容易衔接
PhoneGap兼容性
移动浏览器是系统附带的,不需要发布,随着系统升级而更新。在没有权限要求和高端目标设备的情况下,浏览器宿主作为移动Web应用宿主更为适合。
Android浏览器 Mobile Safari
浏览器宿主优势:
- 无需发布,浏览器一般还支持桌面快捷方式
- 产品更新维护方便,可以实现持续更新
- 移植性高(相对框架宿主的一些自定义接口)
浏览器宿主劣势:
- 浏览器兼容不高,对HTML5支持有差异
- 性能差异大,必须考虑设备间处理能力的差异
- 测试成本大(特别是Android系统设备),无法覆盖所有机型
移动Javascript框架
在HTML5的支持下,交互集成取代Javascript浏览器兼容性成了移动Javascript框架的发展方向。其中jQuery Mobile和Sencha Touch最受追捧。
他们主要解决:
- 交互(包括UI设计、控件交互、页面切换等)集成
- Touch手势
交互集成框架优势:
- 交互都符合设备交互特点和设计规范(Android和iOS)
- 开发门槛低,适合快速开发
- 开发社区已经有丰富的跨平台经验和较全面的测试结果
交互集成框架劣势:
- 文件体积较大,效率往往不如原生HTML5
- 交互模式固定,难以摆脱
- 没有完善的业务框架,还需要自己实现基础业务框架(代码更新、业务模块重用等)
jQuery Mobile 兼容性
除了交互集成框架,我们还可以考虑使用原生HTML5开发自己的移动Javascript框架。自己开发更有针对性和目的性,适合业务扩展和性能优化,可以弥补集成框架的缺陷。
原生HTML5框架优势:
- 最适合长期业务扩展
- 开发灵活度更高
- 可针对目标设备的性能优化
原生HTML5框架劣势:
- 暂时只能兼容高端设备(Android2.0+、iOS3.2+性能较佳)
- 跨平台测试成本比较高
- 框架开发门槛比较高,需要一段时间发展
【编辑推荐】
- SPIL Games公司CEO谈HTML5手机游戏前景
- 开发者传授打造iPhone手机游戏项目攻略
- 独立手机游戏开发者的未来走向
- Windows Phone 7 免费线下培训火热报名中
- 全解HTML 5在移动Web应用的优劣势
- 浅谈移动开发中Web应用和Native应用优劣(PhoneGap——Web工程师开发移动Native应用的福音)
- Appeon Web应用嵌入在HTML页面的例子
- Appeon Web应用嵌入在HTML页面的例子
- Appeon Web应用嵌入在HTML页面的例子
- Appeon Web应用嵌入在HTML页面的例子
- Appeon Web应用嵌入在HTML页面的例子
- 移动应用的Web化
- 使用 HTML 5 开启移动 Web 应用程序的本地存储
- 在Ubuntu Touch上创建一个HTML 5 Web应用
- 流行移动应用自动化测试开源框架/工具之优劣势比较
- 移动设备web开发:html的head
- 对比多个手机Web应用开发框架搭建和开发流程的优劣
- VFP的优劣势
- html移动Web开发
- 移动Web应用常用的Meta标签
- 全是干货!移动HTML 5前端性能优化指南
- 2015最全的移动web开发框架介绍
- Linux/Ubuntu学习笔记(七)--MySQL安装
- poj1837 balance
- C++实现:双输入单输出系统:建立一个 感知器网络,实现上述样本的分类。计算出相应的网络权值矩阵w。
- 快速掌握C++要点(待续)
- 封装,多态,继承
- 全解HTML 5在移动Web应用的优劣势
- Cryengine渲染引擎剖析
- Android内存性能优化
- 第十三章 拷贝控制实例
- 我的Qt笔记(四)
- 如何调用已有的SO文件来生成供Android使用的SO文件
- Unity3D基础知识方法重载
- 总结在js中插入HTML的方法
- 大话设计模式(二)