Android―GPS定位与Google地图的总体设计

时间:2022-09-11 09:48:49

Android―GPS定位与Google地图的总体设计

【摘要】本文对整个系统功能通过数据存储模块、系统主模块、查询地址模块、路径规划模块、跟踪路径展示模块、新建跟踪模块模块以及远程跟踪模块来实现。

【关键词】android;导航;gps;Google;Maps

Android操作系统平台很容易跟Google其他应用如Google地图的整合。在Android应用中,如果能在其中加入Google地图,则会为你的应用增添强大的功能,目前不少LBS应用(基于地理位置的应用)就是充分将移动跟地图结合起来。本文将简要阐述Android-GPS定位系统的总体设计方案。

一、系统功能模块设计

系统设计了数据存储模块来管理跟踪数据,它负责创建和打开路径数据的存储系统,并向其它模块提供数据访问接口。该模块基于类Locationdata来实现。

系统模块是整个系统的入口。它实现的功能包括显示主界面、打开其它功能模块。该模块基于类MainActivity来实现。

图1 系统模块图

查询地址模块负责输入指定的经纬度,在地图上显示次位置,输入指定的名称,在地图上查找,并显示给用户。该模块基于类FindPlaceActivity来实现。

路径规划模块主要负责获取用户当前位置,用户手动输入要到达位置,有了这两个GeoPoint对象,在通过Intent的方式调用内置地图程序,显示规划路径在地图上。该模块基于DirectionRouteActivity来实现。

新建跟踪模块主要负责,用户输入此次跟踪的title,一段描述性的文字,来生成一个track。该模块基于类NewTrack-Activity来实现。

路径跟踪展示模块,主要负责启动Service,通过运行Service,时刻监听位置的变化,并将轨迹在地图上显示出来。这个模块主要由类ShowTrackActivity来实现。

远程跟踪模块,主要负责用户的远程跟踪,监视,手机端传递位置信息给服务器。这个模块主要由类ConnectService来实现。

二、系统架构设计

系统类似c/s架构模式,应用主要完成开发的是系统客户端的操作。手机客户基本可以实现已知经纬度的查询、指定地点的查询、跟踪轨迹的存储、规划导航路径、GPS更新频率设和地图等级设置、跟踪轨迹的展示和远程跟踪。结构如图2所示:

图2 结构图

1.已知经纬度的查询

此功能是针对第一需求设计,根据已知坐标(latitude,longitude),在地图上显示次位置。

2.指定地点的寻址

此功能针对第二需求设计,根据用户输入的地址名称,在地图上显示此位置。

3.规划导航路径

此功能针对第三需求设计,调用getLoca-tionProvider()取得现有的Location,以此取得目前所在位置的地理坐标(from GeoPoint),而在版型配居中提供一个EditText Widget来让用户输入要前往的地址,通过地址反查取得目的地的地理坐标(toGeoPoint),有了这两个GeoPoint的对象,再通过Intent的方式调用内置地图程序。

4.gps更新频率和地图等级设置

此功能针对第四需求设计,目的是设置整个跟踪过程的gps更新频率和地图等级设置。

5.跟踪轨迹的展示

此功能是针对第四需求设计,地图展示,记录经过每个纬度的信息,并在地图上划出所经过的位置,记录用户整个跟踪过程所经过的地方。

6.跟踪轨迹的存储

此功能是针对第四需求设计,使用android内嵌的Sqlite数据库,存储跟踪轨迹,方便用户查询以前的旅行记录。

7.远程跟踪

此功能针对第五需求设计,实现远程监控,实时查看用户手机位置。

三、用户界面设计

Android系统设计主要来源与界面的设计。一个Android的应用是由一个或多个Activity组成的。Activity是一个UI的容器,其本身并不在用户界面上显示出来。本文主要设计了7个操作界面来实现用户与系统的交流。

图3 操作界面

主操作界面是系统开启后的第一个用户界面。该界面展示了一个地图,下面有两个按钮负责地图等级的缩放。界面对应的系统菜单MENU内包括搜索、路径规划、新建跟踪、查询轨迹、地图模式、设置六个菜单选项,用户可以选择不通的菜单执行相应的系统功能。

已知经纬度查询界面该界面设计了EditText,分别用来输入要查询的经度和纬度。此外,界面还包括“查询”、“放大”、“缩小”三个按钮,点击查询按钮地图将显示出那个坐标的位置,并且标记为红色“I’m here”。

输入地址查询界面,该界面有一个Edit-Text,用来输入用户要查询的位置信息。此外此界面还包含三个按钮“查询”、“放大”、“缩小”,点击查询,地图显示以此地址为中心,并且要查位置名字显示在地图相应位置。

路径规划界面,该界面有一个Edit-Text,用来输入用户要到达的位置名称。此外此界面还有三个按钮“规划”“放大”“缩小”。点击规划,地图上就会显示相应的规划路径。

新建跟踪界面此界面设计了连个Edit-Text,一个用来输入跟踪名,一个用来输入跟踪描述。还用一个确定按钮,点击按钮进入地图展示界面。同时数据库写入一条记录。

归结列表界面此界面使用一个列表用来显示所有跟踪记录。对应系统菜单中有继续跟踪、编辑描述、返回。点击列表中的一条记录,进入地图展示界面。

地图展示界面,此界面描述了整个跟踪过程,轨迹被标注在地图上。此界面有八个按钮,分别负责地图的缩放和移动。还用地图模式的切换。

Gps跟新频率和地图等级设置界面,此界面使用两个Spinner,用来选择gps的更新和地图等级设置。点击保存,数据被保存在SharedPreferences中。用来设置跟踪时地图的设置。

四、总结

本文对系统的主要设计思路做了清晰的阐述。主要介绍了系统主要的模块构成,整个系统功能通过数据存储模块、系统主模块、查询地址模块、路径规划模块、跟踪路径展示模块、新建跟踪模块模块以及远程跟踪模块来实现。同时对系统结构进行了划分,实现已知经纬度的查询、指定地点的查询、跟踪轨迹的存储、规划导航路径、GPS更新频率设和地图等级设置、跟踪轨迹的展示和远程跟踪。最后介绍了系统的主要界面,主要设计了7个操作界面来实现用户与系统的交流。

作者简介:吴琼(1981―),女,山东临沂人,黑龙江建筑职业技术学院计算机与通信工程学院讲师,从事软件开发和二维动画教学。

上一篇:基于IR2166的色选机1.7米光源灯管镇流器设计 下一篇:事业单位内部控制制度探析