摘要:为了提高旅游业信息化水平,提出了一种基于android 平台的智能导游系统的设计与实现方案。首先介绍了android 系统的层次框架并研究了智能导游系统的硬件平台,给出了系统整体硬件平台框架和模块设计。在此基础上,基于android sdk2. 1 开发了该系统的应用软件。该软件功能模块主要分为游客信息管理、多媒体应用、电子地图,并对各个模块的功能和界面的实现进行了详细地分析和设计。测试结果表明该系统操作简便,界面友好,并具有良好的可扩展性和维护性。
0 引言
随着全面建设小康社会的推进和人民生活水平的不断提高,旅游业成为一项极富发展潜力的产业。然而我国旅游业现阶段信息化水平低,旅游产品开发水平低,导游对旅游团游客的管理还停留在依靠团旗和喊话器来带领旅游团员,景点旅游团交叉重叠,环境嘈杂。在智能嵌入式系统得到广泛应用的背景下,开发具有良好用户体验、方便文件管理并且支持各种多媒体功能和网络应用的智能导游系统成为现实,并且国外出现了与人工智能技术结合,基于地理位置自动播放多媒体的导游系统。
现有的智能导游系统平台多种多样,主要有wince 和linux.wince 的使用需要微软公司授权,实现成本很高; android 系统本身是开源项目,源代码可以免费获取,比起wince,选用android 平台来实现智能导游系统可以大大降低系统成本。另外android操作系统基于linux2. 6 内核,具备高稳定性和良好的移植性。应用程序开发语言为java,具备良好的可扩展性,便于软件升级和维护,加之系统本身提供了非常丰富的ui 组件,故可以设计出交互性好的系统应用。此外,google 公司提供了google api 来支持android系统运行如google maps 等应用,极大地方便了应用程序开发。
本研究提出一种基于android 平台的智能导游系统。
1 android 操作系统简介
android 操作系统在2007 年由google 公司发布,是一款专门面向移动平台的智能操作系统。android系统软件层次结构包括操作系统、中间件、用户界面和应用程序,其层次结构框图如图1 所示。
图1 android 软件层次结构
最底层为linux2. 6 内核,android 系统依赖其提供核心服务,如: 进程管理、内存管理、网络协议栈实现、硬件驱动和安全服务等。
库和运行环境包含一些c /c + + 库,这些库能被android 系统中不同的组件使用。核心库有: 系统c库、媒体库、图形库( sgl,3d libraries ) 、数据库( sqlite) 。核心库都针对嵌入式应用进行了优化。
应用层框架提供了各种视图组件、内容提供器、资源管理器、活动管理器等一系列的系统服务,方便开发交互性好的应用程序。
2 智能导游系统平台框架设计
该系统硬件平台选用arm 平台,cpu 选用三星公司的s3c6410a.s3c6410a 为arm11 内核,具备智能能量管理器,功耗低并且采用arm jazelle( r) 技术用以有效支持嵌入式java 执行。此外,s3c6410a主频为533 mhz,可以流畅地运行android 系统。
液晶触摸显示屏采用nec 公司的4. 3′的触摸液晶屏,分辨率为480 × 272,完全满足导游系统要求。
系统移植的android 内核版本为android2. 1.
图2 智能导游系统平台框架设计。
智能导游系统通过wifi 方式接入互联网,通过google maps 提供的数据实现电子地图的功能。wifi模块采用marvell 8686,通过sdio 接口与s3c6410 连接使用。
3 智能导游系统应用功能模块设计
智能导游系统的应用程序通过android 2. 1 sdk来开发,数据存储采用嵌入式数据库sqlite.智能导游系统具有游客信息管理、多媒体应用、电子地图功能。智能导游系统功能模块框架设计如图3 所示。
图3 智能导游系统应用功能模块设计
3. 1 游客信息管理模块
游客信息管理模块负责对团队游客的信息进行管理,支持数据存储、查询、修改等功能,以随时记录游客信息,方便对旅游团队进行管理。
android 系统中可供选择的存储方式有如下几种:
sharedpreferences、文件存储、sqlite 数据库存储、内容提供器( content provider) 和网络存储。在该系统中,游客信息数据存储采用sqlite 数据库进行存储。
sqlite 是android 系统所带的一个轻量级嵌入式数据库,支持sql 语句,实现了事务的原子性、一致性、独立性及持久性( acid) ,最大支持2 tb 的数据存储。
sqlite 存储数据实现方式: 首先实例化一个sqlitedatabase 类,即得到一个sqlite 数据库。sqlite数据库对象有3 个方法: ①oncreat( ) : 在数据库第一次生成的时候,系统调用这个方法用来生成数据库表;②onupgrade( ) : 当数据库更新的时候,系统会调用这个方法将数据库从旧版本跟新到新版本; ③onopen( ) : 打开数据库时的回调函数。通过在onopen( ) 方法中调用数据库实例的execsql( ) 方法,就可以在打开该数据库的时候执行一条sql 语句,从而完成相应数据库操作功能。
游客信息数据库字段定义如表1 所示。
在数据库中对游客信息进行增加、修改、删除等操作的设计方案,通过采用事件监听模型来完成,从而使应用程序具有良好的交互性。笔者以查找功能的实现为例,来阐述智能导游系统对游客信息管理的查找事件处理的流程。
表1 游客信息数据库字段
查找事件处理过程的事件源为查找按钮findbut-ton.首先程序将监听器clicklistener 通过setonclick-listener( ) 方法注册到findbutton.当外部动作触摸到findbutton 的时候,系统产生click 事件,并将其传入到事件监听器clicklistener.事件监听器调用事件处理器做出相应动作,即在onclick 方法中调用系统函数startactivity,启动一个intent( 意图) ,从而实现界面的跳转,再通过调用数据库的execsql( ) 方法来实现数据库查找操作功能。
变压器风冷智能控制柜的用途,及使用注意事项
一篇文章让你认识常见LED显示屏拼接/处理器接口
Marvell联手MSi和3M,助其制造面向零售市场的LED系列产品
三千元买什么相机好?盘点送女友最佳的三千元相机
基于紫光展锐春藤510的CPE及模组将于2019年底上市
基于Android平台的智能导游系统设计方案
一种基于NiosⅡ的可重构DSP系统设计
功耗锐降80% TI推出业界最低功耗的智能旁路二极管
PCB敷铜处理经验分享,PCB layout experience
关于清漆划痕检测仪的产品简介
什么是全息投影技术_全息投影技术原理是什么
安全隔离变压器有什么作用?
PLC电梯控制
KT148A语音芯片一线串口的控制时序起始脉宽的长度说明
碳膜电阻如何识别_金属膜电阻器和碳膜电阻器的识别方法
量子计算机真的要出现了?英特尔已研发出量子计算芯片?
【NK-IOT-M487试用】WIFI模块ESP8266驱动
芯片在技术上遭到美国卡脖子,继而引发国内对面板行业的担忧
洛马公司将为U-2高空侦察机更换全新的航空电子设备
电压基准电路的工作原理和参数计算