HTML5无所不能之设计移动APP

极客

系列进度:设计网站√ 设计Web APP√ 设计移动APP√ 设计广告

想玩移动APP,一定需要下载安装吗?NO!HTML5设计的移动APP一定会改变这种落后的思想。省去下载安装麻烦,直接玩移动APP才是王道!

08-f11-1.jpg

秀野堂主,高级网页设计师,HTML5研究小组成员(http://www.mhtml5.com),中国传媒大学动画与数字艺术学院兼职讲师。他写的《论道HTML5》广受好评,他的HTML5教学视频得到行业的推荐。

邮箱:admin@xiuyetang.com

个人网站:www.xiuyetang.com

新浪微博:http://weibo.com/xiuyetang

现在绝大多数移动APP都是用传统技术设计的,它们都有平台局限性,而要跨平台,就必须开发多个版本,这样一来就耗费很大精力,因为不同平台用到的SDK不一样,开发语言不一样(J2ME、Java、Objective-C等),这就要求开发者具备较全的开发技术,提高了开发门槛。

而用HTML5设计移动APP,有一个好处,那就是不需要SDK,也不需要掌握多种开发语言,学会HTML5编程就足够开发适应四大平台的移动APP了。换句话说,开发精力减少了、开发门槛也降低了。这就是HTML5被移动开发者看好的重要原因。

HTML5能胜任移动APP开发吗?众所周知,在移动设备上,通常都有摄像头、加速度传感器、指南针、GPS等相关电子元器件,以前的网页开发技术是不能调用这些设备的,HTML5是不是可以突破传统的网页技术,操纵这些特殊的电子元器件呢?答案是肯定的!

考虑到手机操作系统较多,不能一一介绍,本文我们以Android手机为例来进行说明,且在欧朋H5浏览器中进行体验,安装该浏览器后首页中就有很多独特的APP应用(http://m.oupeng.com/h5)。

10-e12-2.jpg

调动摄像头

长期以来,在网页上直接拍照片,通过几行代码就可以调动硬件摄像头,在以前是不可想象的。而HTML5却把这个梦想般的功能变成了现实——使用HTML5 中的 getUserMedia API就可以达到目的。关键代码如下:

function not_supported(){//检测到浏览器不支持摄像头读取后的处理函数

var message = docu

ment.querySelector('#message');

message.innerHTML = "

此浏览器不支持读取摄像头

";

调用加速度传感器

加速度传感器是移动APP开发中非常重要的一个设备,它的主要用途是判断设备的当前朝向角度、水平状态、重力加速度等,因此被很多应用程序使用,例如模拟F18飞行的控制游戏、微信中的摇一摇找朋友等 。在HTML5中通过DeviceAPI可以调用加速度传感器。关键代码如下:

windows.addEvent

Listener("deviceorienta

tion", function(event) {

//返回值event.alpha、event.beta、event.gamma

}, true);

调用指南针

在讲解指南针的时候,我们需要搞清楚两个概念:一个是地理北极,一个是地磁北极。地理北极,是我们传统的纸质地图上的概念,所谓:上北下南,左西右东。地磁的南北极,是地球磁场最强的两个地方,而地磁的南极在地理北极附近,地磁的北极在地理南极附近。

请注意:地磁南北极是会变动的,因此,每过一阵时间,或者每换了一个城市,都需要通过校正软件(或接口)来校正电子罗盘与地磁的匹配,以防止指向不准确。HTML5提供了一个Web校正的compass API,关键代码如下:

windows.addEvent

Listener("compassneed

scalibration", function(event) {

alert('你的指南针需要校正!举着你的设备,面对着天空画横8字型。正反各三次。');

event.preventDefault();

}, true);

调用GPS

GPS是手机用户很喜欢的一个程序,利用HTML5也可以开发GPS程序。这就需要用到Geolocation API。关键代码如下:

alert("北纬:"+position.coords.latitude+",东经:"+position.coords.longitude);//弹出当前的经纬度坐标

showmap();//展示地图

10-e12-3.jpg
10-e12-4.jpg

开发者看HTML5

磊友科技

以前,光是做一个指南针的应用,就需要对不同的手机品牌和操作系统进行调整,十分费事,而现在,在一个支持HTML5的浏览器中,使用HTML5就可以实现对这些硬件的操作,而这一切,就像做网页一样简单,根本不需要懂得太多的Java或者Objective-C知识。另外,由于浏览器本身有强大的兼容性,任何操作系统都有浏览器,因此,HTML5制作的APP就具有天生的跨平台能力!这就是我们公司选择HTML5开发APP的原因。

灵动快拍

我们灵动快拍是一家专注条码识别技术的物联网企业,很早就对HTML5在APP领域的发展处于高度关注的状态。

3月中旬,我们会将公测应用HTML5技术的快拍二维码2.0版本(二维码的内容展示页面用了一些CSS3的特殊效果)。

在我们看来,HTML5对手机云应用的发展有很好的支持作用,用户不需要下载工具就可以享受各种应用服务。

因此,我们快拍的发展方向也已经确定:从手机工具应用软件向二维码云服务平台转型,努力打造快拍二维码云服务平台。

此外,HTML5对二维码应用的加速普及起到了积极的推动作用,随时随地让用户方便、快捷地获取二维码信息。我们预计,二维码的用户人数会大幅增长。