APP下载

基于PhoneGap的校园移动应用的设计与实现

2014-10-20周帆凌力

微型电脑应用 2014年9期
关键词:应用层二维码个性化

周帆,凌力

0 引言

随着智能手机的逐渐普及,越来越多的开发者加入到移动应用开发的队伍当中。但开发者想要自己的移动应用适用于多种手机平台的话,就需要掌握多种开发语言及环境,这无疑增加了跨平台软件开发的困难。为了简化移动应用的编程,制作出能在各种手机平台上运行的应用,Nitobi公司推出了移动应用解决方案PhoneGap。

PhoneGap是一款开源的开发框架,旨在让开发者使用HTML、CSS、JavaScript等WEB APIs开发跨平台的移动应用程序,如图1所示:

图1 PhoneGap框架图解

通过PhoneGap框架提供的接口,开发者可以以非常简单的方式调用移动设备的核心功能,包括地理位置、摄像头、加速器、通讯录、多媒体、文件和网络等功能。借助PhoneGap,开发者完全可以使用熟悉的Web开发技术写出移动Native App,并发布到Apple Store、Google Play等各平台应用商店中[1]。目前,PhoneGap已实现对 iPhone/iPad、Android、Symbian、WP7、Blackberry、Palm各版本绝大部分功能的支持。此外,PhoneGap拥有丰富的插件,可以以此扩展无限的功能。

本文阐述了一个基于PhoneGap的校园移动应用的基本构成,实现了软件和硬件上的设计,并对其结构和性能进行了详细的分析。

1 系统综述

移动互联网(MobileInternet,简称MI),是一种通过智能移动终端,采用移动无线通信方式获取业务和服务的新兴业态,包含终端、软件和应用3个层面。终端层包括智能手机、平板电脑、电子书、MID等;软件层包括操作系统、中间件、数据库和安全软件等;应用层包括休闲娱乐类、工具媒体类、商务财经类等不同应用与服务。随着技术和产业的发展,未来LTE和NFC等网络传输层关键技术也将被纳入移动互联网的范畴之内。

随着宽带无线接入技术和移动终端技术的飞速发展,人们迫切希望能够随时随地乃至在移动过程中都能方便地从互联网获取信息和服务,移动互联网应运而生并迅猛发展。然而,移动互联网在移动终端、接入网络、应用服务、安全和隐私保护等方便还面临着一系列的挑战。其基础理论和关键技术的研究,对于国家信息产业整体发展具有重要的现实意义[2]。

本文所描述的项目,正是在这样一个背景下开发的一个基于PhoneGap的校园移动应用,以该技术为基础对所有分散的信息进行归纳和个性化处理,最终为广大的师生群体甚至于游客提供最便捷的服务。

2 系统设计

移动互联网有以下几个特点:

盈利策略不可急功近利。用户可能只用过手机的简单功能,盈利模式的策略上,需要企业性化和简单易懂的指引,移动互联网的强大平台,已经成为全方位、立体式。

找到业务核心竞争力。在产业链竞争中处于相对被动的情况下,握在你手中最大的砝码就是市场占有率和业务创新能力,市场占有率让你有更大的话语权和议价资格,业务创新能力则决定了自己的卖点。

用户体验至上。如果一个商品或一项服务想要成功在移动互联网时代,其对消费者需求的了解程度,将决定其爆炸能量的大小,用户体验必须放到最重要的位置上。对用户需求的分析可以从几个方面入手如图2所示:

图2 用户需求分析

把握移动营销新模型。移动互联网的一个品牌文化,移动互联网的营销模型与传统营销最大的不同,通过口碑传播吸引更多的客户,随之让参与互动,移动互联网的营销模型与传统营销最大的不同,就是直接让正确的客户为企业说正确的话,冷冰冰的广告式营销终将在这个时代里慢慢衰退。

整合产业链之外的资源:只要能把握移动互联网的前提,抓住行业强势资源,相关节点进行有效的整合产业的资源。

参考以上特点,本系统架构设计如图3所示:

图3 系统架构

图3的结构可以划分为3层:应用层、中间网络层、基础设施层[3]。

应用层包含各种应用服务,体现为本系统实现的各种功能以及用户感知到的前端界面。这一层根据每个用户的独特性和用户提出的需求,通过Web Service向后端发出请求,集中地体现了移动应用的优势所在:便捷性和实时性。

中间网络层是应用层和数据库交流的桥梁,也是大量分散信息的汇聚和筛选必不可少的一步。针对应用层所要实现的所有需求,都会封装好对应的接口,双方只要约定好接口格式及参数格式,就可以按照预期获取自己想要的数据。

基础设施层主要设施为数据库。信息从数据库中读取出来之后,会根据用户的个性化需求做进一步筛选和简化,最终呈现在用户面前。当然用户也可以随时随地修改自己的信息。

2.1 应用层的设计

一般来说,应用层是整个系统的核心所在。在本项目中,创新地将这一部分集成为基于云计算概念的管理平台。关于云计算系统,可以简单地理解为按需即取得计算方式。用户不需要理解云内部的细节,也不需要具有云内部的专业知识或者直接控制基础设施,只需要关注自己需要什么样的资源以及如何通过网络来得到相应的服务。

应用层的结构是根据一个个子功能来设计的,每个子功能对应一个特定的需求。我们为用户提供了多种服务,其中包括用户登录安全认证、个性化私有信息、非个性化公有信息、校园媒体信息、二维码相关功能等。主要功能实现如下:

2.1.1 用户登录及安全认证

应用中大多数功能都是对校内师生开放的,如个性化信息中的一卡通信息、图书馆信息等,考虑到为参观的游客提供一些便利,应用中也提供了一些不需登录即可使用的功能,如校内一些有纪念意义的建筑上会贴上二维码,扫码即可获取介绍信息。

正常师生登录时,移动应用会通过OAuth2.0授权框架,获取第三方应用授权的权限,然后通过用户名密码登录应用。登陆成功后,应用中会记录用户的私有信息,如院系、专业、年级等,以便学校或老师有一些通知时可以快速推送给特定学生。

2.1.2 个性化私有信息

个性化私有信息主要是针对师生提供一些私人信息的查询等服务,如一卡通信息、图书馆信息、个人日程等。

一卡通毫无疑问是师生校园生活中使用最多的物品。但是现在我们并不能随时随地知道当前余额和近期消费情况,充值也必须在特定的时间到特定的食堂窗口才可以,十分不方便。因此,应用中提供实时的余额及近期所有消费记录的查询功能,而且用户可以随时随地通过应用中的支付接口为一卡通进行充值。

图书馆信息主要是为师生提供图书馆中所有图书的预约及查询功能,在一些没带电脑的时候也可以很方便地查询自己需要的图书。

个人日程主要是展示学生的日常课表以及其他自定义日程,会提前半个小时对学生进行提醒以免误点。

2.1.3 非个性化公有信息

与个性化私有信息相对,非个性化公有信息主要是提供一些与个人非绑定的公有服务,如班车查询、空教室查询、讲座信息等,由于这些信息都是可以公开的,因此,在获取时,也不需要对用户身份进行验证。

现有的班车信息表都是贴在班车发车地点处,而且也只有某两个特定校区之间的班车信息,太过零散。班车查询功能汇总了所有校区两两之间所有班车列次时间表,而且在用户查询时进行了智能过滤,优先显示当前时刻接下来的最近几班班车信息,已满足用户需要。

空教室查询是为方便学生自修提供的功能。学生可以随时查询某个教室当前是否有课,是否有活动占据等。甚至如果有硬件支持,可以精确到某个教室左右空闲座位的分布情况,更加准确地帮助学生找到合适的自修环境。

现有的讲座信息一般都是通过传单或院系网站等方式扩散给学生,并没有很好的效果,也没有很好地进行信息分类。应用中会对所有讲座信息进行分类,然后更清晰地展示给用户。

2.1.4 校园媒体信息

发布一些校园实时的热点新闻或视频等多媒体消息,让学生可以及时了解校园中发生的一些重要事件,增强学生的归属感。

2.1.5 二维码相关功能

二维码相关功能主要分为两种。第一种是之前提到的为游客提供的导览功能,在一些标志性建筑上贴上二维码,用户扫码即可获得相关介绍。第二种则是对其他服务的优化,比如教室预定,在教室中每一个座位上都贴上二维码,用户可以扫码来预定该座位的某一时间段。其他服务类似如图4所示:

图4 二维码功能示意图

2.2 中间网络层及基础设施层

这两层主要提供信息的来源及封装,并对上层应用发出的不同需求进行响应。中间网络层与应用层之间会约定好交互的接口数据格式及可能出现的错误码,然后根据接口类型、数据参数在数据库中查询得到相应信息,封装成约定格式返回给应用层[4]。

3 总结

本文对基于PhoneGap的移动应用进行了研究和结构分析,并将其与校园生活紧密结合起来,为广大师生提供随时随地的便捷服务。通过实验验证,该应用可以有效地满足大家在日常生活中会遇到的一些问题。另外,相比以前用户只能自己通过各种渠道询问,应用会根据用户身份个性化推送一些通知和推荐信息,这些都是业务智能化和自动化的体现。

当然,由于条件有限,应用可以扩展的地方还有很多。比如可以接入学邮系统,或者增加 SNS网络元素,为师生之间的交流提供便利,甚至可以加入位置信息来认识同一个教室身边的同学。开发者可以根据自身需要自行延伸。

[1]武晶晶.跨平台的 PhoneGap研究[J].信息安全与技术,2012(12).

[2]罗军舟,吴文甲,杨明.移动互联网:终端、网络与服务[J].计算机学报,2011(11).

[3]刘领兵,陈洁.基于SOA/Web Service体系的移动应用系统开发框架[J].计算机应用与软件,2010(02).

[4]白文江.基于Android平台的移动应用开发研究[J].太原大学学报,2011(03).

猜你喜欢

应用层二维码个性化
二维码
小康二维码
坚持个性化的写作
新闻的个性化写作
让严肃的二维码呆萌起来
基于分级保护的OA系统应用层访问控制研究
上汽大通:C2B个性化定制未来
新一代双向互动电力线通信技术的应用层协议研究
二维码,别想一扫了之
物联网技术在信息机房制冷系统中的应用