为什么说HTML5适合进行移动webAPP开发?

2015年03月23日 14:06 0 点赞 0 评论 更新于 2025-11-21 18:16

第一特性:离线缓存

HTML5的Web Storage API可视为加强版的cookie,它不受数据大小限制,具备更好的弹性与架构。该API能够将数据写入本机的ROM中,即便关闭浏览器后再次打开,数据也可恢复,从而有效减少网络流量。

Web Storage是HTML5引入的一项重要功能,它可以在客户端本地存储数据,类似于HTML4的cookie,但功能远比cookie强大。cookie的大小被限制在4KB,而Web Storage官方建议每个网站可使用5MB的存储空间。

Web Storage又分为sessionStorage和localStorage两种:

  • sessionStorage:将数据保存在会话(session)中,当浏览器关闭时,数据随之消失。
  • localStorage:会一直将数据保存在客户端本地。

不管是sessionStorage还是localStorage,可使用的API都相同,常用的API如下(以localStorage为例):

  1. 保存数据localStorage.setItem(key, value);
  2. 读取数据localStorage.getItem(key);
  3. 删除单个数据localStorage.removeItem(key);
  4. 删除所有数据localStorage.clear();
  5. 获取某个索引的keylocalStorage.key(index);

移动APP设计师需要了解何时让用户下载离线缓存,同时要注意在线和离线app的区别。具体关于webAPP本地存储的案例教程可参考:http://blog.csdn.net/hbcui1984/article/details/8466743

第二特性:音频视频自由嵌入,多媒体形式更为灵活

原生开发方式在处理文字和音视频混排的多媒体内容时相对繁琐,需要将文字、图片、音频、视频拆分,解析对应的URL并采用不同的方式分别处理。而HTML5在这方面没有限制,能够将这些元素放在一起进行处理。

对于移动APP设计师而言,如果能在新闻类、微博类、社交类应用的信息呈现中实现文字与多媒体混排,且无需专门嵌入webview,那将是非常理想的。目前,原生方式实现这一功能仍存在困难。

第三特性:地理定位

地理定位功能使定位和导航不再是导航软件的专属。通过HTML5,地图无需下载庞大的地图包,可利用缓存机制,实现到哪儿下哪儿,使用起来更加灵活。

如今,嵌入LBS功能的应用越来越多,这也是移动设备相较于台式PC的最大优势之一。HTML5能够进一步扩大这一优势,移动APP设计师可思考如何在自己设计的应用中运用该功能。

第四特性:Canvas绘图,提升移动平台的绘图能力

使用Canvas API可以轻松绘制热点图以收集用户体验资料,同时支持图片的移动、旋转、缩放等常规编辑操作,并且还支持2D和3D绘图。

第五特性:丰富的交互方式

HTML5能够提升互动能力,支持拖拽、撤销历史操作、文本选择等交互方式。例如:

  • Transition:实现组件的移动效果
  • Transform:实现组件的变形效果
  • Animation:为移动和变形加入动画支持

再结合js的动画效果,HTML5提供了丰富多样的交互方式。移动APP设计师可充分发挥想象,利用这些交互特性。

第六特性:开发及维护成本低(相对于原生APP开发)

与原生APP开发相比,HTML5开发及维护成本更低。它能使页面体积更小,减少用户不必要的支出;性能更好,耗电量更低;方便升级,用户打开应用即可使用最新版本,无需重新下载升级包,在使用过程中可直接更新离线缓存。

第七特性:CSS3——视觉设计师的辅助利器

CSS3支持字体嵌入、版面排版以及令人印象深刻的动画功能,具体包括:

  • Selector:更具弹性的选择器
  • Webfonts:嵌入式字体
  • Layout:多样化的排版选择
  • Stlying radius gradient shadow:圆角、渐变、阴影效果
  • Border background:边框的背景支持

使用CSS3完成部分视觉工作,载入速度快,可节省代码和图片,为用户节约带宽。这些效果用HTML5实现十分方便,而原生开发则可能让客户端开发人员感到棘手。

第八特性:html5调用手机摄像头、相册、通讯录等功能

有兴趣了解具体案例的小伙伴,可前往http://www.gbtags.com/gb/share/93.htm查看相关教程和案例。

作者信息

feifeila

feifeila

共发布了 3994 篇文章