。
3.可移植性和软件兼容性俱佳,拓宽了软硬件的选择范围。
4.给第三方开发商提供了一个十分宽泛、自由的开发环境,有利于应用的
拓展。
5.与google应用无缝结合,充分利用网络资源。
作为一款新型的移动平台,Android还有待进一步发展和完善,目前它正在
从手机运营商、手机厂商、开发者和消费者那里获得大力支持。GPS领域大厂SiRF公司宣布,他们己经收到了Google Android手机平台的SDK软件开发包[12] ,会立即开始Android手机GPS功能模块的开发。2008年9月22日,美国运营商T-Mobile USA在纽约正式发布第一款Google手机——T-Mobile-G1。该款手机为宏达制造,是世界上第一部使用Android操作系统的手机,它支持WCDMA/HSPA网络,理论下载速率为7.2Mbps,并支持Wi-Fi[24]。
Android平台具有很大的市场潜力,应用开发前景广阔。
2.4 本章小结
本章主要分析了手机导航发展的现状,并对导航手机的未来有了个总体的描述。同时针对现有技术进行分析。对Google Maps技术进行分析和研究,与现有其他技术进行比较,为什么要使用这门技术,以及这门技术的优势。对Android平台系统进行了初步的了解,与现有同类手机操作系统之间进行了对比,得出了Android优越性在哪里。同时把Google Maps和Android结合的优势进行分析和总结,以及阐述了巨大的商业价值。
第三章 需求分析
3.1 功能性需求分析
本文的目标结合Google Maps 位置服务针对手机实时定位,指定地点的寻址,规划导航路径,个人位置跟踪、监视、展示等方面来设计基于Android平台的GPS导航系统。
系统设计主要围绕下列几项用户需求展开:
3.1.1 地图管理
1.在线地图
2.离线地图(SQLite 数据库存储)
3.任意界面的地图缩放
4.随时定位个人位置
5.调整地图偏移
6.保持跟踪,随时显示
地图管理是本系统的基本功能。相似与所有传统导航系统,其中包括在线地图的应用。单纯定位不需要网络支持,但是如果将个人位置清晰的显示在地图上,一定需要网络支持。Google地图提供了这方面的帮助[13] 。离线地图相对于在线地图,有其自身的优点,离线地图不需要网络支持,指示把地图存储在SQLite数据库中,对于手机的流量是很大的节省。不过随着3g时代的到来,手机网络已不再是问题,速度和效率方面都可以很好的保障。缺点就是占用了大量的存储空间。针对这方面,用户可以根据当地的出行的计划,实时更新自己需要的地图存入数据库。保持跟踪,是导航系统的基本功能,我们可以根据手机提供的位置信息,以用户当前所在位置为中心,实时显示在地图上。随时定位,是指打开系统以后,任何时候都可以直接点击定位,显示用户当前所在的位置。地图缩放方便用户使用,便于查找的方便。如图3-1(a).
图3-1 (a) 地图管理
3.1.2轨迹管理
1. 记录跟踪轨迹,存储数据
2. 导入导出数据文件
3. 读取轨迹记录,并显示在地图上
4. 显示各个轨迹的时间、距离、平均速度等信息
5. 查看以往所有轨迹
轨迹管理提供了一个区别于其他导航的特俗模块。主要是针对记录旅途过程,便于回忆旅途心情的很人性化的功能,也可以防止我们迷失自己的方向,在一个圈圈上打转。系统提供了SQLite数据存储[25],方便用户查看,导出数据。同时系统还提供了地图展示的功能,就是将我们所有的轨迹显示在地图上,清晰一目了然。而且数据中记录了时间、距离、平均速度等字段。方便用户清晰的了解自己的个人信息。
同时系统为数据提供了导入导出文件的功能,因为数据不可能长期存储在手机上,所以可以以.gps文件方式存储在电脑或其他地方。如图3-1(b)。
图3-1(b) 轨迹管理
3.1.3规划导航路径
1. 已知经纬度查询
2. 输入地址的反查
3. 调用手机内置地图规划导航路径
在正式版本的Android SDK中[26],删除了原有M5版本里的Driving- Direction package,所以无法通过程序来规划导航路线,虽然无法自行设计导航路线,但却可以调用手机内置的地图程序来传递导航坐标规划路径。如图3-1(d)。
图3-1(d) 规划导航路径
3.1.4远程跟踪监视
1. 连接服务器
2. 传递位置信息到服务器
3. 关闭连接
这个功能总体上是扩展整个系统的功能,现在的版本是用Socket实现连接,传递信息至服务器,然后存如MySql数据库中。服务器是使用java语言编写[27]。
如图3-1(e)。
图3-1 (e) 远程跟踪监视
3.2界面需求分析
主操作界面
主操作界面是系统开启后的第一个用户界面。该界面展示了一个地图,下面有两个按钮负责地图等级的缩放。界面对应的系统菜单MENU内包括搜索、路径规划、新建跟踪、查询轨迹、地图模式、设置六个菜单选项,用户可以选择不通的菜单执行相应的系统功能。
已知经纬度查询界面
该界面设计了EditText,分别用来输入要查询的经度和纬度。此外,界面还包括“查询”、“放大”、“缩小”三个按钮,点击查询按钮地图将显示出那个坐标的位置,并且标记为红色“I’m here”。
输入地址查询界面
该界面有一个EditText,用来输入用户要查询的位置信息。此外此界面还包含三个按钮“查询”、“放大”、“缩小”,点击查询,地图显示以此地址为中心,并且要查位置名字显示在地图相应位置。
路径规划界面
该界面有一个EditText,用来输入用户要到达的位置名称。此外此界面还有三个按钮“规划”“放大”“缩小”。点击规划,地图上就会显示相应的规划路径。
新建跟踪界面
此界面设计了连个EditText,一个用来输入跟踪名,一个用来输入跟踪描述。还用一个确定按钮,点击按钮进入地图展示界面。同时数据库写入一条记录。
归结列表界面
此界面使用一个列表用来显示所有跟踪记录。对应系统菜单中有继续跟踪、编辑描述、返回。点击列表中的一条记录,进入地图展示界面。
地图展示界面
此界面描述了整个跟踪过程,轨迹被标注在地图上。此界面有八个按钮,分别负责地图的缩放和移动。还用地图模式的切换。
Gps跟新频率和地图等级设置界面
此界面使用两个Spinner,用来选择gps的更新和地图等级设置。点击保存,数据被保存在SharedPreferences中。用来设置跟踪时地图的设置。
3.3数据存储需求
数据存储方式有几种,分别是可以数据存储在文件系统中,或者数据库中。为了以后扩展方便,这里选择数据库存储方式。在Android上,可以非常方便的使用Sqlite数据存储[28] 。
这个程序需要保存3类数据,一类是跟踪名称,另外一类是每次跟踪过程中读取的位置信息,还有一类是应用配置信息。配置信息指的是一些可以配置的选项,如多久跟新一次gps信息,地图默认级别等。前面两种数据会随着使用时间越来越多,这里设计将其存在数据库中;而配置信息比较少,且不是经常改变的,设计将其存储在SharePreference中。
3.4 环境需求
开发Android应用所需的开发环境:
操作系统:
Windows xp或 Vista Mac OS X10.4.8 + Linux Ubuntu Drapper
软件开发包:
Android SDK + Google Maps开发包
IDE :
Eclipse IDE + ADT
本系统使用的是Windows XP操作系统。软件开发包,考虑以前用户的需求,可以使用1.6版本的。另外因为是java语言编写,所以
上一篇:
基于Android平台的天气软件论文
下一篇:
试论APP广告在手机中的应用