基于Android平台的智能导游系统设计方案
数据库从旧版本跟新到新版本; ③onOpen( ) : 打开数据库时的回调函数。通过在onOpen( ) 方法中调用数据库实例的execSQL( ) 方法,就可以在打开该数据库的时候执行一条SQL 语句,从而完成相应数据库操作功能。
游客信息数据库字段定义如表1 所示。
在数据库中对游客信息进行增加、修改、删除等操作的设计方案,通过采用事件监听模型来完成,从而使应用程序具有良好的交互性。笔者以查找功能的实现为例,来阐述智能导游系统对游客信息管理的查找事件处理的流程。
表1 游客信息数据库字段
查找事件处理过程的事件源为查找按钮findBut-ton.首先程序将监听器clickLiSTener 通过setOnClick-Listener( ) 方法注册到findButton.当外部动作触摸到findButton 的时候,系统产生click 事件,并将其传入到事件监听器clickListener.事件监听器调用事件处理器做出相应动作,即在onClick 方法中调用系统函数startActivity,启动一个intent( 意图) ,从而实现界面的跳转,再通过调用数据库的execSQL( ) 方法来实现数据库查找操作功能。
3. 2 多媒体应用模块
多媒体应用模块主要完成3 个功能: 景点音频解说、景点图片预览、景点视频播放。利用解说音频的播放可以有效降低导游的工作强度,而且通过景点图片和视频的预览,可以补充展现景点珍贵的历史图片和特定时间段的景色,从而更加展现出景点的魅力。
3. 2. 1 多媒体应用模块的主界面设计
本研究以景点为西湖十景为例,多媒体功能主界面如图5 所示。
图5 多媒体应用主界面。
多媒体应用模块的主界面采用组件ListView,以列表方式来展现。当开发人员进入多媒体应用模块的主界面后,在该界面的onCreate( ) 方法中,使用newListView( ) 语句新建一个ListView,通过setAdapter( )方法将其与数组适配器ArrayAdapter 进行绑定,从而在ListView 界面对数据进行显示。数组适配器Array-Adapter 将数组里定义的数据一一对应地显示在List-View 组件。
本研究在多媒体应用主界面需要实现在不同的选项选择,并进入相应的界面功能。通过创建并绑定一个选项选择监听器: itemSelectedListener,并通过setOnItemClickListener() 方法来将其绑定到Lisview.当选中相应的景点时,就可以进入对应的功能界面。
3. 2. 2 多媒体功能的实现
Andriod 系统提供了常见的媒体编码、解码机制,如MP3, JPG,MPEG4,h. 264 等编码格式,因此可以非常容易地集成音频、视频和图片等多媒体到应用程序中。播放音频功能的实现需要实例化一个MediaPlayer类,然后调用setDataSource( ) 方法来设置音频文件的路径,再调用start( ) 实现音频的播放。视频播放的实现方法类似于音频播放,借助VideoView 和Media-Controller 组件即可以实现。图片预览的实现采用网格视图GridView,本研究通过调用网格视图的setAdapter方法将待预览的图片的引用和该视图对象进行绑定,可以将很多图片以一定的大小同时显示出来,适合图片预览的应用。
3. 3 电子地图功能模块
该系统的电子地图功能借助Google maps 的API来进行编程实现。经过申请Google maps 的API key之后,本研究使用Android 系统提供的map 包( com.google. android. maps) ,从而在显示界面完成显示电子地图及其他应用的功能。
电子地图功能模块的框图设计如图6 所示:
图6 电子地图功能框图设计
视图模式功能模块根据选择来分别显示卫星图、街景图、交通图,并对地图进行放大和缩小操作。视图功能的实现通过采用MapView 类来实现。MapView类是一个展示地图的视图,它可以获取键盘事件( on-KeyDown 和onKeyUp) 来支持地图移动和缩放功能。
本研究通过使用mapView. toggleSatellite ( ) 和map-View. toggletraffic( ) 的两个方法可以分别选择显示卫星图或者路况图。电子地图的设置大小的功能通过MapController 的setZoom( ) 方法来实现。
地点查找功能通过输入目的地名称,调用get-FromLocationName( ) 方法来返回查询结果并在地图上显示,可以方便找到目的地的位置。目的地经、纬度借助LocationManager 的getLastKnownLocation 方法来得到: 通过getLastKnownLocation 方法得到一个新的Location对象,那么该点的经度和纬度分别由该类的get-Latitude( ) 和getLongitude( ) 方法来得到。
除此之外,景点周围信息查询功能模块通过预先存储的内容,为游客提供周围的交通和食宿信息。
4 结束语
Android 平台因其优异的性能和开放性,日益在智能手机、平板电脑、车载导航仪、数字电视等嵌入式终端系统获得广泛应用。本研究提出了一
系统 设计 方案 导游 智能 Android 平台 基于 相关文章:
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)