I
论文题目 基于 Android 的驴友导航系统设计与实现
专 业
年 级
学 号
姓 名
指导老师
目 录
1 绪论....................................................................................................................................1
1.1 课题背景..................................................................................................................1
II
1.2 课题内容..................................................................................................................1
1.3 课题目的及其意义..................................................................................................2
2 系统开发环境及相关技术................................................................................................2
2.1 Android 开发介绍与环境搭建 ................................................................................2
2.2 JSON 简介 ................................................................................................................3
2.3 Struts2 框架简介与环境搭建 ..................................................................................3
2.4 Baidu Maps API 简介...............................................................................................4
3 系统分析............................................................................................................................4
3.1 研究目标..................................................................................................................4
3.2 需求分析..................................................................................................................4
3.3 性能分析..................................................................................................................5
4 系统设计............................................................................................................................5
4.1 用户界面设计..........................................................................................................5
4.2 数据库设计..............................................................................................................6
4.3 程序模块设计..........................................................................................................8
5 系统功能模块设计............................................................................................................9
5.1 文件结构与用途......................................................................................................9
5.2 后台定位服务........................................................................................................11
5.3 MapApplication.java 类..........................................................................................13
5.4 登录模块................................................................................................................15
5.5 首页模块................................................................................................................15
5.6 导航模块................................................................................................................20
5.7 周边信息查询模块................................................................................................21
5.8 个人资料模块........................................................................................................23
6 系统测试..........................................................................................................................25
7 总结..................................................................................................................................26
参考文献..............................................................................................................................27
致 谢..................................................................................................................................28
基于 Android 的驴友导航系统设计与实现
1
基于 Android 的智能导游系统的设计与实
现
摘 要:本文首先分析讨论 Android 手机软件开发主要技术,以及国内景区导游
系统与智能导游的现状。然后讲述了基于百度地图 Android SDK 以及定位 SDK 技
术所设计的 Android 平台智能导游系统的实现。该系统设计实现了后台定位、景
点导航、景点信息浏览与下载、周边查询等实用功能,具有良好的通用性与灵活
性。
关键字:Android;智能导游;导航软件;移动开发;百度地图
1 绪论
1.1 课题背景
中国工业和信息部最新公布数据表明,中国智能手机的市场增长率不断攀升,
而且,随着移动 3G 和 Wifi 热点的不断覆盖,用户对手机的互动娱乐体验也提出
了更高要求,各种应用软件开始进入,手机日渐成为互动娱乐的焦点。
有关资料显示,我国的旅游业发展实力巨大。首先,是旅游收入增长迅速:
2013 年春节黄金周全国接待游客达到 2.03 亿人次,实现旅游收入 1170.6 亿元人
民币,同比增长达到 15.1%和 15.4%
[1]
;其次,固定资产投入力度的不断加大:
2009 年 12 月,《关于加快发展旅游业意见》首次提出“中国旅游日”的概念,
旅游业已经出现在了中国国家战略性产业中。
然而,国内旅游业的迅猛发展使得传统的人工导游方式不能满足新时代用户
的多元化需求。长期以来,游客在景点旅游时只能走马观花,对景点的多媒体信
息了解甚少,就本人经验来说,对于外来游客来说更会由于语言的障碍而使得游
览质量下降!于是,基于上述,手机终端的智能导游应用便应运而生。
1.2 课题内容
本课题结合现代景区的相关特性和用户需求,使用 JAVA 语言,应用百度地
图、百度定位(GPS+基站)、JSON 数据交换和无线通讯等技术,开发一个基于
2
Android 的 C/S 式智能导航软件系统。这软件使得用户可以利用无线网络以及手
机的便捷性无时无刻地享受到景点信息查询、自身位置查询、周边查询、导航等
功能所带来的畅快旅游体验。
1.3 课题目的及其意义
本课题的主要目的是将 Javaweb 后台服务端、百度地图、定位导航技术与景
区导游相结合,从而实现景区导游系统的真正智能化。智能导游系统可以储存大
量的景区景点信息,不仅可以广泛传播,而且科学环保、方便快捷。此外,系统
还提供了自定位、导航的实用功能,让用户可以彻底抛弃纸质地图,减少路痴的
认路障碍。这不仅能直接为游客带来更畅快的旅游体验,同时还完善了景区的旅
游管理体制。
2 系统开发环境及相关技术
2.1 Android 开发介绍与环境搭建
Android 是 Google 公司开发的基于 Linux 内核的开源操作系统。它包括:操
作系统、用户界面和应用程序,而且不存在任何以往阻碍移动产业创新的专有权
障碍
[2]
。
Android 系 统 提 供 了四大基本组件,包括:Activity 、 Contentprovide 、
Service、Intentreceiver,每个组件都是一个视图(view)。但上述四大组件对于一
个 Android 应用程序来说,却并不是必须的,可能只需要其中的几种酒可以满足
设计需求。Manifext.xml 配置文件时 Android 应用程序不可或缺的一个 XML 配
置文件,其中定义了程序所用到的组件、组件功能以及一些必要条件和权限。
Android 的上层应用程序一般是由 java 语言开发,所以首先应该有由 SUN
公司提供的 Java SDK(其中包括 JRE:Java Runtime Environment)以及 Java 主流
集成开发环境 Eclipse IDE。此外,还需要 Android 开发专用 Google 提供的
Android SDK 和安装在 Eclipse 的插件 Android ADT,为 Android 开发提供开发工
具的升级或者变更,是 Eclipse 下开发工具的升级下载的工具
[3]
。
Android 开发平台搭建步骤
[4]
:
(1)首先到 http://www.eclipse.org/downloads/下载 Eclipse 集成开发环境并且
解压,这里推荐下载 Java EE 集成版本,可以为平台的搭建省下不少工作。接着
再去 http://java.sun.com/javase/downloads/index.jsp 站点下载 SDK 后安装,下载
基于 Android 的驴友导航系统设计与实现
3
http://dl.google.com/android/android-sdk-windows-1.5_r1.zip,Android SDK1.5 后解
压。
(2)双击 Eclipse 解压后目录中的 eclipse.exe 然后启动,选择 Eclipse 菜单中的
Help-> Install New Software-> 选 项 卡 上 的 Available Software , 点 击 右 侧 的
“Add”输入 http://dl-ssl.google.com/android/eclipse/后确定,然后在“Work with”
下拉菜单中选择刚才输入的网址。过一会就会出现一个 Developer Tools 选项,
勾上以后点击 Next 以后 Eclipse 会自动网上查找 Android 开发工具插件,然后找
到 Android DDMS 和 Android Development Tools,选中这两个点击 Finish,Eclipse
就会自动下载并安装 Android 插件了,最后会提示重启 Eclipse。
(3)重启后选择 Eclipse 菜单中的 Windows-> Preferences 在左侧的 Android 项
目中 SDK Location 中填入 Android SDK 解压后的目录,然后点击 Apply。
(4)在 Windows7 的系统变量中的 path 变量中添加一个值,该值指向解压后
的 Android SDK 目录下的 tools 文件夹。
2.2 JSON 简介
JSON(javaScript Object Notation)是一种轻量级的数据交换格式,它基于
javascript 却采用了完全独立于语言的文本格式。JSON 基于“名称/值”对的集合
和值的有效序列表这两种格式,用 JSON 表示一组值时不但可以减少复杂性也能
提高可读性,是网络编程中数据交换的常用格式。
2.3 Struts2 框架简介与环境搭建
Struts 是采用 Java Servlet/JavaServer Pages 技术,开发 Web 应用程序的开放
源码的 Framework。采用 Struts 能开发出基于 MVC(Model-View-Controller)设计
模式的应用构架。而 Struts2 是在原有 Struts 和 Webwork 的技术基础上进行合并
的全新的框架,其体系结构而原有 Strcts 差异巨大。Structs2 是以 Webwork 为核
心,采用拦截器机制来处理用户请求,这样的设计也使得业务逻辑能够与 Servlet
API 完全分离,使应用结构更为合理。
Struts2 框架的开发需要使用 Myeclipse 集成开发环境。由于 Myeclipse 是
Eclipse 的一个插件,所以在这忽略 Eclipse 的安装。
Myeclipse 的安装:首先应该到 http://www.myeclipseide.com/index.php? name
=Downloads&req=viewsdownload&sid=15 下 载 文 件 MyEclipse_5.5.1GA_E3.2.2_
FullStackInstaller.exe 并安装。安装完毕后将其安装目录下的 feature 和 plugin 两
个目录覆盖到 Eclipse 的安装目录下,最后卸载刚才安装的 Myeclipse
[5]
。