为什么说HTML5适合进行移动webAPP开发?
第一特性:离线缓存
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为例):
- 保存数据:
localStorage.setItem(key, value); - 读取数据:
localStorage.getItem(key); - 删除单个数据:
localStorage.removeItem(key); - 删除所有数据:
localStorage.clear(); - 获取某个索引的key:
localStorage.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查看相关教程和案例。