APP下载

基于Android平台智能云导游系统的探索

2012-08-14曾连荪

电子设计工程 2012年12期
关键词:插件浏览器应用程序

王 亮,曾连荪

(上海海事大学 信息工程学院,上海 201306)

手机如今早已成为人们随身携带的最为便利的通讯工具,而智能手机的出现,更使它成为人们快速方便的获得信息的一种重要途径,凭借着其丰富多彩的应用,正迅速地扩展市场,成为通信设备领域中不可忽视的一股力量。操作系统是智能手机的灵魂,操作系统的功能直接决定智能手机的可扩展性,以 Google公司的 Android[1-2]、苹果公司的 IOS、微软公司的Windows phone等主流智能手机操作系统为平台的各种手机软件的出现及无线互联网等现代通信技术的发展,使得无论是在安防、交通、消费、旅游、还是医疗、家居等领域,都无时不刻的在改变着人们的生活。但是,由于手机硬件性能及其存储空间的限制,手机中存储的信息也受到了极大的限制,其应用范围也因此大打折扣,在某些领域的应用更显得力不从心。这样,另一种先进的互联网技术“云计算”在手机领域也得到了快速的推广与应用,使得我们的手机的应用服务更加的丰富多彩,人们的生活也更加的便利。

文中就是在Android操作系统下,脱离传统的C/S架构模式,采用B/S架构,结合先进的“云服务”技术,对当下较为热门的智慧旅游建设规划和智能导游服务,进行了深入的探索与研究,给出一套较为完善的基于“云服务”和Android操作系统平台的手机智能导游系统解决方案,希望能够帮助人们更方便的获得更佳的旅游生活体验。

1 Android操作系统

Android是Google于2007年11月推出的一款全新的智能手机平台,最初,Android的部署目标是移动电话领域,包括智能电话和更廉价的翻盖手机。但是,Android全面的计算服务和丰富的功能支持完全有能力扩展到移动电话市场以外。因此Android也可以用于其他的平台和应用程序,发展前景非常广阔。

Android系统采用了分层的结构,其软件平台从上到下主要由4个部分组成:应用程序层、应用程序框架层、Android运行库层以及Linux内核层。系统的最上层是应用程序层,Android会同一系列核心应用程序包一起发布,这些应用程序包括E-mail客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等,与系统紧密相连。所有的应用程序都是使用JAVA语言编写,本系统就是建立在应用程序框架上。

2 系统设计框架

2.1 系统概述

本系统主要采用B/S架构,以Android智能手机为手持终端,访问景区服务器,获得相应导游信息,景区内无线热点主要分成通信AP与定位AP两类,通信AP与服务器相连,定位AP则独立存在,具有特定的ID号,供手持终端进行扫描。这样景区内终端便可以通过WIFI无线网络连接至通信AP,实现与服务器之间的网络通信,传递相应的导游数据信息,游客所在位置则由各不同景点处所放定位AP所确定,如图1所示。这种将通信AP与定位AP分开布置的方式不但有效地提高了无线局域网网络布局的资源利用率,同时还提高了对游客定位的精确度。

图1 系统框架Fig.1 System framework

2.2 系统功能描述

图2展示了该智能导游系统的功能流程图,当游客进入景区,打开手机WIFI功能,连接至景区内无线通信AP,打开Android浏览器,输入景点所提供的网址,成功打开网页后,网页会提示自动加载并安装自助导游浏览器插件,同时显示整幅景区地图,标出给游客推荐的最佳游览路线,供游客参考,页面此时也会播报景区内游览时游客应该注意的相关事项以及如何理突发状况处等。随后游客便可选择是否开启智能导游功能。

图2 系统功能流程图Fig.2 Flow chart of system function

若游客未选择开启自动导游功能,则当游客每到达设有定位AP景点或区域时,页面会自动语音提示您的所在位置,而不会进入景点介绍页面。

若游客选择开启自动导游功能,每当游客到达某一景点或区域附近时,页面会自动跳转至该景点语音加文字介绍页面,播放相关语音及文字导游信息,使游客在倾听语音介绍的同时,也能看到文字描述[3],除此之外,页面还会有“视频介绍”和“图片集锦”两个选项供游客选择,点击后可进入相应的页面提供视频和图片导游服务,当然游客也可以选择返回查看景区地图。

3 系统设计与实现

3.1 浏览器工作原理

Android浏览器支持插件(Plug-in)。浏览器插件,是一种嵌入在网页中的应用程序,作为浏览器的扩展,向用户提供更为丰富的网页应用。

基于Webkit内核的Android浏览器,其插件接口标准是NPAPI(Netscape Plug-in API)。 NPAPI的接口分为两组[4-5],浏览器侧的NPN接口和插件侧的NPP接口:NPN接口是浏览器侧实现,供插件调用的一系列功能接口;NPP接口是插件侧实现,供浏览器获取信息或进行控制操作的接口。浏览器插件的核心,就是一个实现了NPP接口,并使用浏览器提供的NPN APIs进行对外操作的动态库。

考虑到 Android系统在架构上的特殊性,Google的工程师对Android浏览器的NPAPI接口作了一些修改,添加了一个Android浏览器插件特有的结构:插件的Java层。这样,浏览器插件就可以作为一个Android应用,通过常规途径安装到Android设备中。图3描述了浏览器与插件之间的关系[6]。

在本系统中所加载的插件的功能是扫描周围所有AP获得其 SSID、BSSID、Level、Frequency 等参数, 并将 SSID、Level这两个重要参数传至服务器,与数据库中预设值进行比较,触发相应的页面和数据传输,Android中WIFI操作所使用到的部分权限和方法类如下:

图3 浏览器与插件间关系Fig.3 Relationship between plugin and browser

XML/HTML代码:

3.2 数据库设计

本系统中采用MySQL作为后台数据库,MySQL是一个开放源码的小型关联式数据库管理系统,目前被广泛地应用在Internet上的中小型网站中,其体积小、速度快、总体拥有成本低、开放源码等特点,等到了更多的认可和推广,图4是本系统中定位AP的数据库设计,其中在表positionap中,ap_ssid列储存的是布置在各个不同景点或区域的定位AP所设定的SSID,ap_level列储存的是预设的信号强度值,当所在区域手机扫描到的定位AP的信号强度大于等于预设值时,则服务器发出相应的网页信息,提供导游服务。此处各定位AP信号强度的预设值并非理论值或固定不变,其数据均来自实地测试获得的最佳阈值,同样,若景区网络布局稍有变动或设备更换,也可更改其Level预设值。

3.3 网页地图缩放

本系统要求在网页打开后所显示的景区地图可以自由缩放,以便游客能够更好的对景区内景点位置有更清晰的了解,故需对制作的地图实现简易三级缩放的功能:

图4 定位AP数据库Fig.4 Database design of position AP

3.4 网页多媒体播放

在游客利用手机实施智能导游的过程中,当服务器检测到游客已进入该景点区域时,需要立刻自动从服务器上发送音频或视频文件在网页上进行播放,部分实现代码如下:

4 结束语

文中在研究了导游行业需求以及其他智能导游系统的基础上,提出了一套基于Android平台的智能云导游系统解决方案。该系统采用B/S架构,完全依靠浏览器来实现智能导游功能,消除了传统智能导游系统下载安装手机软件的复杂程序,采用通信AP与定位AP独立布置,不但提高了无线网络的布局效率,同时也增加了实际导游过程中的定位精度,使得该系统方案具有很强的实际应用价值,值得进一步推广。

[1]郭宏志.Android应用开发详解[M].北京:电子工业出版社,2010.

[2]汪永松.Android平台开发之旅[M].北京:机械工业出版社,2010.

[3]Oliphant Z.Programming Nestscape Plug-ins[M].Net publishing:Sams,1996.

[4]张国生,高薄,姚慧敏.重视非IE用户:用NPAPI开发跨浏览器的插件[J].测绘科学技术报,2007,6(24):68.ZHANG Guo-sheng,GAO Bo,YAO Hui-min.Pay attention to non-IE users:use NPAPI to develop the plug-in of cross-brower[J].Surveying and Charting for Science and Technology Journal,2007,6(24):68.

[5]汪诗林,吴泉源.WWW浏览器插件开发技术[J].计算机应用研究,2000,(4):55-57.WANG Shi-lin,WU Quan-yuan.WWW browser plug-in developmenttechnology[J].ApplicationResearchofComputers,2000,(4):55-57.

[6]李增辉.Android浏览器应用开发平台的研究[D].北京:北京邮电大学,2011.

猜你喜欢

插件浏览器应用程序
自编插件完善App Inventor与乐高机器人通信
删除Win10中自带的应用程序
反浏览器指纹追踪
谷歌禁止加密货币应用程序
基于jQUerY的自定义插件开发
环球浏览器
MapWindowGIS插件机制及应用
基于Revit MEP的插件制作探讨
三星电子将开设应用程序下载商店
微软软件商店开始接受应用程序