湖南大学毕业设计(论文) 第 17 页
用户要想使用百度地图Android SDK提供的丰富功能,需要获取百度地图移动版开发密钥。获取密钥方法如下所述:
1.创建应用:登录百度账号后即可访问API控制台,点击创建应用,进入创建AK页面,输入应用名称,将应用类型改为:“Android SDK”
2.获取安全码:安全码的组成规则为:Android签名证书的sha1值+“;”+packagename(即:数字签名+分号+包名)。在eclipse中查看windows -> preferance -> android -> build,其中“SHA1 fingerprint”值即为Android签名证书的sha1值,包名是Android应用程序本身在AndroidManifest.xml 中定义的名称,如本应用系统为com.example.mytracks。输入安全码后点击“确定”即可得到一个创建的Key。图3.1为本应用系统使用的API Key。
图3.1 百度地图API Key的申请
3.3.2 环境配置
获得密钥后还需进行环境配置才能真正在项目中使用百度地图[7]。步骤如下:
1.创建并配置工程
(1)在工程中新建libs文件夹,把开发包中的baidumapapi_vX_X_X.jar拷贝到libs文件夹根目录下,再把libBaiduMapSDK_vX_X_X.so拷贝到libs\\armeabi目录下,完成后的目录如图3.2所示。
图3.2 百度地图工程配置
(2)在属性->Java Build Path->Libraries中选择“Add External JARs”,选
湖南大学毕业设计(论文) 第 18 页
定baidumapapi_vX_X_X.jar,点击确定。
2.在AndroidManifest.xml中添加开发密钥、所需权限等信息。 (1)添加开发密钥,图3.3为本应用系统添加的密钥信息。
图3.3 添加密钥
(2)添加权限信息,图3.4为本应用系统添加的权限信息。
图3.4 添加权限
湖南大学毕业设计(论文) 第 19 页
4 轨迹追踪应用系统设计
4.1 可行性分析 4.1.1 经济可行性
本系统是面向个人用户而非企业的,因此不会产生企业级应用的成本预算,另外,本轨迹追踪系统借助了开源的Android开发平台和免费的百度地图接口,也使得系统开发的成本大幅度降低。开发过程中的代码编写全部在Eclipse环境中完成,且测试阶段只需要一部带有GPS定位模块的Android智能手机和PC机,本人已经拥有这些硬件设备,因此不会产生任何其他硬件设备费用。 4.1.2 技术可行性
目前来看,基于Android系统的手机应用软件开发的相关技术已经相对来说较为成熟,Android应用软件也被大众所熟悉。虽然本人没有Android开发经验,也没有接触过相关知识,但在具有一定Java编程能力的基础上,学习Android方面的编程并没有遇到重大难题。参考着Android开发相关书籍和网络教学资料,由浅入深地学习Android系统,能够在规定的时间内完成课题。 4.2 系统需求分析 4.2.1 用户需求
用户评价一个应用系统的好坏,取决于这个系统能否给用户带来良好的服务体验。本系统在满足用户对应用的基本功能需求前提下,可以采用文字、图片、地图等多种形式与用户交互,提供情景式服务,因此从用户的角度来说系统的设计需要满足一下几点:
1.界面简洁美观
本系统是直接面对用户的,所以界面的设计必须大方简洁,能够将系统功能通过界面清晰地传达给用户;同时界面的跳转需要连贯、有逻辑性,如按钮放置位置、点击按钮或者输入文字后系统的响应结果需符合手机用户的行为习惯和思维模式。
湖南大学毕业设计(论文) 第 20 页
2.系统可操作性强
系统的设计应该直观、易于操作,在设计过程中尽可能使用手机用户熟悉的术语和消息提示,避免生僻词语和专业性较强的词汇,文字的表达要清晰明了,这样可以缩短用户对系统的熟悉时间,使应用服务体验者能够快速上手。
3.快速响应
用户需要的软件是启动快、加载时间短的,所以在设计时要考虑这方面问题;另外,由于本系统需要实时记录用户轨迹,这同时要求系统的响应迅速,如地图界面的及时刷新与定位信息的及时更新,都应该给用户流畅的体验,不能出现界面卡顿或者无法响应用户操作等情况。 4.2.2 功能需求
本文设计的轨迹追踪系统的基本功能是能够实时记录用户的轨迹,并能保存查看已有轨迹记录的相关信息,同时还实现了网络地图的部分基本功能和用户的信息管理功能。总的功能需求为以下几点:
1.地图控制
能够实现地图展示和地图的基本操作,如能够将地图的移动、旋转、缩放和切换地图显示模式。用户可根据自己的实际需要来调整,比如想查看某城市的整体市容就可把地图切换为卫星模式显示,想查看某一地点或者此刻自己的的详细街道位置就可选择放大功能。
2.定位当前位置
当手机用户的位置变化时,轨迹追踪系统能够及时更新当前用户的位置信息,并能在地图界面上展现。系统需要用一个特殊的标识在百度地图上把此刻用户的地理位置标记出来,便于用户查看自己的位置。同时,系统需要获得地理坐标的详细信息(如经纬度)一并返回给用户。
3.绘制用户轨迹
本系统能够把用户某段时间内的移动轨迹用有色线条在百度地图上绘制出来,在实时记录的情况下,这种展示方式对用户来说是直观的;在地图界面查看轨迹时,已有轨迹的起点和终点能用不同的图标加以标示,清楚地呈现移动的方向性。
湖南大学毕业设计(论文) 第 21 页
4.管理轨迹记录
用户在移动的过程中,系统需要把其经过的所有点的地理信息记录在数据库中,这样在轨迹记录的列表界面上,通过对数据的提取用户可以对轨迹查看和删除。同时,轨迹的详细信息如记录时间、距离、时长和起始坐标的经纬度等能够在列表中显示。
5.编辑用户个人信息
在本系统注册过的用户登录系统后,能够查看和修改个人资料。此功能只有正确输入密码的用户才能使用,而匿名状态下不能查看用户的个人信息。 4.3 功能结构设计
本文所实现的是基于Android平台和百度地图下的轨迹追踪系统,根据对需求的研究与分析,将该系统划分为地图控制模块、记录控制模块、轨迹管理模块、信息管理模块、登录模块、注册模块和退出模块八个模块,其功能结构设计如图4.1。
图4.1 系统功能结构框图
各模块描述如下: 1.地图控制模块:
地图控制模块给用户提供可视化的地图界面和地图操作功能。该模块由四个