版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
绪论1.1课题背景及目的现如今社会的我们在生活中已经离不开网络,智能手机让低头族的数量越来越多,似乎离开了手机我们就不能生存下去。根据数据显示,2016年全世界智能手机的使用者已经超过21亿人。手机网络服务在生活中已经无处不在,因此我们的生活习惯也发生了较大的改变,最主要的一点就是它能够定位追踪。根据数据可以看出,在2015年的时候,中国手机地图使用者达到6.05亿人,到2016年,手机地图使用者达到了6.52亿人。这充分表明了人们越来越离不开定位。定位追踪在生活中无处不在,我们出行打车、自驾,都用到了导航,平时网上购买的快递也是对于物件的定位追踪实现查看的。Android平台对于开发者来说,是一个非常便捷、开放的平台,它提供了其他平台所没有的环境,大大缓解了开发者们之前所存在的各种麻烦问题。此平台是谷歌公司在2007年推出的一个软件平台,一经推出,马上得到了众多开发者们的喜爱,随之而来的是各种软件在系统商店的上架。在美国,系统商店已经上架的软件达到了几十万款,带来了非常可观的收益。反观中国,因为中文版的软件占的比例非常少,所以Android端的软件在中国地区开发进度较为缓慢,开发出中国用户习惯的软件是目前比较关键的点。在中国,百度地图是中国人最能接受的地图,因为谷歌地图无论在是界面上还是在操作使用上全都是外文,国人操作起来就有一定的困难。当百度地图在2010年推出百度API后,开发者们就开始狂欢了。开发者们能够肆无忌惮的开发自己想开发的东西,既能省下大量成本,又能高效率的开发出有定位追踪的手机软件,最主要是得益于开放的安卓平台和免费的百度API。本次设计的目的是在低成本、高效率的条件下开发出一款Android平台手机软件,它并不适用商业性,只适用于一小部分群人在生活上提供一定的便利。它通过各种技术相结合,能在电子地图上实现注册登录、自我定位、轨迹跟踪、轨迹管理和好友增删等各种功能。1.2国内外研究现状1.2.1Android手机平台现状分析虽然这几年,苹果公司生产的苹果系统设备深受人们的追捧,但是不得不承认,目前全球覆盖范围最广,人们用量最大的依然是搭载Android操作系统的手机,相比较其他系统,Android系统更加实用,性价比更高。根据网上数据分析出,Android系统在市场的占有率近乎达到38%,先后超过微软系统以及苹果系统而成为巨头。Android不但是手机操作系统,而且是对于任何开发者开放的开发平台。它的开放性,自由性吸引了全世界的开发者,自身的发展自然而然就迅猛起来。在中国,因为用户量巨大,所以性价比往往是使用者考虑的最主要因素。Android手机在中国市场流行就是因为其性价比非常高,而性价比高得益于Android平台开发出的系统具有成本低,开放性强等特点。同时,简洁的操作界面,丰富的色彩元素也使Android手机收到平民的追捧。1.2.2位置信息服务系统研究现状它包括两层含义:最基础的是是锁定用户所在的位置;然后找出与位置相关的各种信息服务。比如先定位使用者当前的位置,然后在规定范围内寻找使用者想去的地方。所以此服务需要网络来实现定位和服务两大功能。因为国内外用户数量巨大,各个地图软件之间功能细分有所区别所以他们之间的竞争非常激烈。1.3主要研究内容本文充分利用了Android平台的优势和特点,主要运用GPS以及百度地图API库,开发出一个基于在线地图的轨迹跟踪系统,该系统能够实现注册登录、自我定位、轨迹追踪、历史轨迹管理、好友管理等核心功能。
2相关技术介绍2.1Android简介及发展历史现代生活高大上的事物越来越多,其主要核心就是智能。Android就是智能的一种。谷歌公司推出此平台目的是为了小型设备的应用。任何系统都是由部分组成,Android系统也一样。免费的Linux操作系统,Java语言开发出的应用程序和中间件一起构成了该平台。网络运营商、手机芯片制造商和手机制造商一起组建了一个联盟,此联盟一起开发源代码,一起发布新的APP,一起研发新系统,携手共进为开发者和使用者提供更舒适的环境。我们都知道消耗品的新陈代谢是非常快的,就连日常用品的更新都非常快。Android系统也是如此,隔一段时间就出新版本,每年因为版本太旧问题淘汰回收的手机数不胜数。从第一版本到最新的一代,逐步让界面更加简练,使用者用的更加;功能越来越齐全,使用者更加方便。随着需求不断扩大,Android系统的各个版本都在进步:1)Android1.0版本眼光是与时俱进的,在现在我们的严重来第一代肯定显的太简单,但是基本功能还算齐全,比如打电话、发短信、放无线网络、连接蓝牙以及同时处理各种进程,还能上网冲浪,在手机商店可以挑选自己喜欢的APP。2)Android1.5版本现在人们都喜欢拍照录像。1.5版本就多了这个功能,我们可以再生活中拍摄和录制自己喜欢的照片和视频,还可以上传至网络上与网民们分享。此版本对定位技术更加优化,性能更加强大。3)Android2.0版本此版本主要就是让运行速度提升,节省用户等待时间,同时分辨率更高。使用户使用更加舒适。4)Android4.0版本4.0版本是功能非常齐全,非常强大的一个版本。它优化了处理器,不仅可以显示用户的使用流量分布,还可以设置阈值,从而使用户对自己的流量有一定的计划。此外在界面上又有一定的改进。使用户有更多的体验。5)Android5.0版本网络世界中信息安全是极为重要的。5.0版本在功能上多了访客模式,使之更加安全。在面部解锁功能部分进一步完善,识别度进一步提高,降低识别难度。5.0版本在界面上是一次改革,界面更加简单、色彩更加多样。此外,5.0版本是目前最为普及的版本。2.2Android平台特征Android平台有非常多的特性:与人很相似,它可以把并不感冒的程序都抛之脑后,植入用户想使用的程序,达到自己想要的效果。在开发语言上,Java语言是最强大、最通用的,而Android中的应用都是用该语言来实现的。该平台支持日常生活中频繁用到的多媒体,如照片、视频、无线、定位等等。生活中,我们在智能设备玩的游戏基本都是二维和三维,而二维、三维图形库都是被Android系统所包含的。这对于现如今社会网络游戏盛行的时代,开发者们能够更好的去开发各种游戏。存储是任何只能设施都要具备的功能,而Android平台具有强大的存储功能,用户不需要不断的清除缓存之类的操作,给用户的使用带来极大的方便。2.3Android平台体系架构Android系统包括应用程序、应用程序框架、核心类库、Android运行环境和linux内核五个部分,如图2.1所示。图2.1Android平台架构1)Application(应用程序)Application是原生的应用程序:里面包含系统自带的应用程序如了原生的浏览器、手机的桌面,最基础的电话、短信等,还有用户们根据自己的喜好从商店下载的各种应用。2)ApplicationFramework(应用程序框架)由5个占据单独线程的服务组成,它们之间的交流只是靠通信机。提供核心开发API,包含了java代码,调用了底层c代码。框架层就相当于人都大脑,它支配着应用程序的全局,任何操作都要管理。无论是什么事件,都是需要各个服务支持的。3)Libraries(库)包含了c代码库;OpenGL:即图形快速显示,游戏开发;webkit:即浏览器内核。4)AndroidRuntime(Android运行时)DalvikVM:虚拟机,android代码运行在此虚拟机,运行时调用LibrariesC代码库。5)LinuxKemel(Linux内核)Linux内核包含了:安全性的管理、运行内存的处理、应用进程处理、电源管理、硬件的驱动等系统最为基础的管理。Linux的适应能力非常强大,可以在各种环境下运行。2.4Android的系统优势和特点2.4.1Android的系统优势1)开放性:Android系统是开源的,所有的移动手机制造厂商都可以免费的使用,厂商也可以根据自己的需求对系统进行优化,这使得软件开发者很是喜欢,他们可以根据自己对系统的理解去做一些大胆的尝试,极大地满足了用户对的需求。2)选择性强:大多数的厂商都会根据Android系统开发出格式各样的软件产品,但是这都不会使数据产生错乱,不会有软件对于硬件的兼容问题。这使得Android系统能够在不同的设备上进行开发。3)开发方便:谷歌公司把Android系统的源码给予公开,是开发者能够更好的交流,提供了更好的开发资源。2.4.2Android的系统特点1)传感器类型的多种支持Android系统的手机支持各种各样的传感器,这个使得手机具有强大的感应外界环境的能力。如加速度传感器、旋转向量传感器、重力传感器等,这些传感器的支持可以使手机对于速度方面的数据测量有了一定的可能。2)网络连接通信的多样性移动手机的通信功能是必须的,对于此功能的实现,谷歌工程师把通信的功能封装在了系统的底层。这样开发者就可以非常方便的去调用系统中的库方法来实现通信功能。同时,Android还提供了传统的通信模式HTTP和Socket通信方式。除此之外Android系统还支持蓝牙传输的功能。3)定位功能全面性对于定位的实现,Android系统提供了GPS定位和网络的定位。网络定位是通过手机连接网络去搜索周边的信息如基站、WiFi等信息通过服务器返回数据进行的定位。GPS定位是手机去接受卫星信号,进行室外定位的一种方式。这使得开发者对于手机的定位有了方便的选择。2.5Eclipse开发环境Eclipse就像开发者的一个生产工厂,它一开始有生产机械,车床,各种机器,就像工人会用工厂里的设备生产出新的设备,来扩充工厂的规模,开发者用Eclipse开发出新的工具,这些工具反回来可以扩充Eclipse的功能。这也是它的一个亮点。Eclipse平台由五种组件组成:平台核心(platformkernel)、工作台(workbench)、工作区(workspace)、团队组件(tramcomponent)以及说明组件(help)。Eclipse软件如图2.2所示。图2.2Eclipse界面图2.6Android应用程序开发环境搭建Android应用程序的开发必不可少的一步就是安装开发工具。所以我们先在电脑上安装各种开发需要的工具。我们需要搭建的有JDK、ADT等等。百度搜索JDK下载,找到需要的版本,然后下载下来安装。我的电脑系统是windows7,然后把JDK安装在E盘的Java文件夹下。然后是环境配置。JAVA_HOME值为:E:\ProgramFiles\Java\jdk1.8.0_31;如图2.3所示。图2.3JAVA_HOME值CLASSPATH值为:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar如图2.4所示。图2.4CLASSPATH值Path值:%JAVA_HOME%\bin;如图2.5所示。图2.5Path值安装完成后我们可以用命令查看。按wins+R打开运行窗口,输入cmd查看。如图2.6所示对话框。图2.6JDK配置成功后窗口显示2.7百度地图相关介绍2.7.1手机GPSGPS全球定位系统这种高科技技术最开始只是在军队使用,民间是使用不到的。随着信息科技的发展,GPS慢慢的融入社会广泛的领域中。我们经常可以看见美国的科幻大片中出现GPS跟踪匪徒,它的实现是通过卫星信号传输到地面获取信息,精度高,效率高使其成为我们生活中最常用的定位技术。2.7.2百度地图API及SDK百度地图移动版API(Android)是位Android系统所提供的一个服务接口。开发人员通过对接口的使用,很简单的就可以使用百度所提供的数据。百度地图移动版API对于地图的功能提供了很大帮助。开发者根据百度地图API的介绍,可以去使用定位,路线展示等功能。为了移动客户端开发者对百度地图的使用,百度公司提供了百度地图的SDK,使开发者对定位功能的进一步应用变的非常便捷。并且SDK数据包比较小,功能较多,接口十分友好。2.8Mysql数据库MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。由于MySQL是开放源代码的,因此任何人都可以在GeneralPublicLicense的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。2.9系统开发环境处理器:Intel(R)Core(TM)i5-3230MCPU@2.60GHz安装内存(RAM):6.00GB操作系统:Windows764位开发环境:JDK8.0、Tomcat7.67、Mysql5.5
3系统分析3.1可行性分析3.1.1经济可行性本次设计只是个人在小范围用的一款软件,并不会用到商业领域,所以在设计中高难度的功能是非常少的。另外因为Android开发平台的自由性,加上百度API也是不收费的,做次设计并不需要付出很多的成本,上网查阅的资料收费也比较低。至于设计完成后的最后测试条件,只用到了自己的一台索尼笔记本和一部安卓系统的手机,也大大节省了硬件费用。3.1.2技术可行性在大学期间,我所学的计算机方面的专业知识在开发此次系统方面比较少,此次的系统重点主要在地图这一块,我在这方便不是很懂,但是我学过Java编程,学习的过程中也并不感觉很困难。而且随着科技的发展,Android手机软件的开发技术是越来越成熟,网上的教程也是种类繁多。自己多上网查阅资料,学习相关知识,不懂的也可以请教指导老师,能够在这个几个月内完成此次毕业设计。3.2系统需求分析本文设计的轨迹跟踪服务的基本功能是用户的注册登录,自我定位,进行轨迹追踪,还有轨迹管理,好友增删等功能。总的功能需求为以下几点:1)用户注册、登录用户以手机号码作为用户名进行注册。注册成功后,用户输入正确的手机号码和密码进行登录操作,用户可以保存自己的用户名和密码,以方便下次登录。2)自我定位利用GPS获取的位置信息,确定用户目前所处的地理位置,将此位置用鲜明的绿色的点标记在百度地图上,同时显示出此位置的经纬度。当用户移动时,位置信息和定位点能够实时更新,同时地图也跟随用户的移动而移动来保证用户的定位点始终处于手机屏幕的中心位置。3)轨迹追踪需要保存轨迹前可以自定义该轨迹的名称,然后系统记录每次定位的坐标,自动画出路线轨迹,并保存在数据库中。4)轨迹管理在轨迹管理界面可以看到之前保存的各种历史轨迹,长按某条记录可以选择查看或者删除。5)好友管理好友管理模块包括好友的添加,好友的删除,好友的信息查看,好友的历史位置查看。其中好友的添加是用户通过搜索手机号码查找用户添加好友;好友的删除是对好友进行了删除操作;好友的信息查看使用户去查看某个好友的个人信息;好友的历史位置查看是用户对自己添加过的好友的历史位置进行查看。3.3数据流图3.3.1轨迹追踪系统的顶层数据流图图3.1系统顶层数据流图3.3.2轨迹追踪系统的0层数据流图图3.2系统0层数据流图3.3.3轨迹追踪系统各个模块的1层数据流图1)登录注册模块的1层数据流图图3.3登录注册模块1层数据流图2)定位模块的1层数据流图图3.4定位模块1层数据流图3)好友模块的1层数据流图图3.5好友模块1层数据流图4)历史轨迹模块1层数据流图图3.6历史轨迹模块1层数据流图3.4数据字典表3.1数据结构描述数据结构名称含义组成用户用户所有的相关信息用户id,手机号码,密码,姓名,性别,年龄好友用户所添加的好友,定义了好友的相关信息好友id,用户手机号码,姓名,好友手机号码历史位置用户所走过的历史位置,定义了历史位置的相关信息用户id,手机号,经度,纬度,时间 表3.2数据项描述数据项名称含义说明别名类型长度取值范围取值含义与其他数据项逻辑关系用户id唯一标识一名用户主键整型100-9自增无特殊含义手机号用户登录唯一标示用户名字符型110-9密码用户登录时验证密码字符型15用户自己设置字符用户账号的唯一确定性姓名用户名字名字字符型20年龄用户的年龄整型30-9性别用户性别字符型2男或女好友id用户所添加好友主键整型100-9一个用户可以有多个好友,是一对多的关系用户手机号用户所拥有的手机号字符型110-9姓名好友姓名字符20好友手机号好友的手机号码字符110-9历史位置id用户历史位置的主键整型100-9经度用户所在位置的经度坐标双精度型100.000000-9纬度用户所在位置的纬度坐标双精度型100.000000-9时间用户此时的时间字符型50表3.3数据流描述数据流说明数据流来源数据流去向组成用户个人信息用户注册时输入用户注册手机号,密码,姓名,性别,年龄注册反馈信息注册提示信息注册用户注册是否成功用户登录信息用户登录时输入信息用户登录手机号,密码登录反馈信息登录提示信息登录用户登录是否成功好友信息用户添加好友指定手机号用户好友添加好友手机号添加反馈信息添加之后提示信息好友添加用户添加是否成功好友信息查看用户查看好友时联好友信息用户好友信息好友的手机号,姓名,性别,年龄好友删除用户删除好友用户好友信息好友手机号好友删除反馈信息好友删除信息提示好友信息用户好友手机号历史位置查看查看历史位置信息历史位置记录表历史位置展示用户手机号,经纬度坐标,时期时间表3.4数据存储描述数据存储说明输入数据流输出数据流组成存取方式用户表存储用户信息用户个人信息用户个人信息id,手机号,密码,姓名,年龄,性别随机存储好友表存储用户所添加的好友好友记录好友记录id,用户手机号,姓名,好友人手机号随机存储历史位置记录表存储用户的历史位置历史位置记录信息历史位置记录信息id,用户手机号,经度,纬度,时间随机存储表3.5数据处理过程描述过程名输入数据流输出数据流处理过程简要说明登录用户登录输入的信息登录反馈信息用户登录输入正确的信息,登录成功之后进入主界面,失败提示输入信息不正确注册用户注册是输入个人信息注册反馈信息用户注册输入个人的信息,注册成功之后加入用户表,失败提示注册失败好友添加添加的好友信息添加好友反馈信息用户输入添加的手机号码,成功之后提示添加成功,失败说明不存在。好友删除删除的好友信息删除提示信息用户选择要删除的好友,然后提示删除信息。好友展示好友记录好友列表用户可以看到好友的各种信息定位用户位置信息地图显示位置用户定位完成后可以在地图上显示历史位置查看选择某个时间的历史位置信息进行查看地图显示位置信息用户选择某个时间的历史位置进行查看,然后地图上显示出来3.5功能结构设计轨迹跟踪系统主要功能有登录注册、自我定位、轨迹跟踪、轨迹管理以及好友管理等模块。如图3.6所示为轨迹跟踪系统的总体模块图:图3.6轨迹跟踪系统功能模块图1)登录注册模块功能用户能够注册,用手机号码作为用户名的注册方式。用户可以保存自己的用户名和密码,以方便下次登录。用户登录,需要用户输入正确的手机号码和密码进行登录操作。2)自我定位模块功能确定用户目前所处的地理位置,将此位置用鲜明的绿色的点标记在百度地图上,同时显示出此位置的经纬度。当用户移动时,位置信息和定位点能够实时更新。3)好友管理模块功能用户可以查看并修改自己的信息,添加删除好友,查看好友的信息并查看好友的地理位置。4)轨迹跟踪模块用户可以自定义轨迹的名称,根据起始点的定位系统会自动绘制出路线。5)轨迹管理模块用户可以长按某条历史轨迹,并选择查看或者选择删除该轨迹记录。3.6系统模块3.6.1登陆注册功能用户在使用轨迹追踪系统时,需要进行用户注册。在注册时用户需要输入自己的手机号,密码,姓名,性别,年龄,家庭住址。注册的时候,会检查所输入的手机号是否已经注册,如果已经注册的话,会提示用户当前手机号已经注册。如果未注册的手机号,注册成功之后就会跳转到登录界面。在登录界面输入注册的手机号码和密码。点击登录按钮之后服务器端会判断手机号和密码是否正确,正确之后进入到程序的主页面。用户在登录的时候还可以对自己的手机号和密码进行保存,方便下次登录使用。如图3.7所示为登录注册模块流程图:图3.7登录注册流程图3.6.2自我定位功能自我定位利用GPS获取的位置信息,确定用户目前所处的地理位置,将此位置用鲜明的绿色的点标记在百度地图上,并处于屏幕中心位置。自我定位流程图如图3.8所示。图3.8自我定位流程图3.6.3轨迹追踪功能需要保存轨迹前可以自定义该轨迹的名称,然后系统记录每次定位的坐标,自动画出路线轨迹,并保存在数据库中。流程图如图3.9所示。图3.9轨迹追踪流程图3.6.4轨迹管理功能在轨迹管理界面可以看到之前保存的各种历史轨迹,长按某条记录可以选择查看或者删除。流程图如图3.10所示。图3.10轨迹管理流程图3.6.5好友功能好友模块可以查看并修改用户的信息,可以通过输入正确的手机号来添加好友。添加完成之后用户可以在好友界面显示出来,同时用户也可删除不需要的好友。好友添加流程图如3.11所示。好友信息设置流程图3.12所示。 图3.11好友添加流程图图3.12好友信息设置流程图
4数据库设计4.1概念结构设计1)轨迹跟踪系统的数据库包含了多张表,表与表之间的关系如图4.1所示。图4.1数据库表关联图2)用户信息表记录了用户的个人信息。如图4.2所示。图4.2用户信息表E_R图3)好友表是为了保存用户所添加的好友。如图4.3所示。 图4.3好友表E_R图4)历史位置记录表对用户所走过的历史位置进行记录。如图4.4所示。图4.4历史位置记录表E_R图4.2逻辑结构设计 1)用户个人信息表用户个人信息表,用来存储用户的个人注册信息,在用户登录的时候调用相应的字段完成相应的流程。如表4.1所示。表4.1用户注册表字段名称字段类型长度约束说明idINT10主键自增列usernameVARCHAR20非空用户姓名passwordVARCHAR15非空密码phoneVARCHAR11非空电话号码sexVARCHAR2非空性别ageINT3非空年龄2)好友表好友表,主要是对应用中添加的好友信息进行存储,在需要调用相应功能时,会查询相应的字段数据,完成功能流程。如表4.2所示。表4.2好友表字段名称字段类型长度约束说明idINT10主键自增列myphoneVARCHAR11非空用户手机号phoneVARCHAR11非空好友手机号3)历史位置信息数据表历史位置信息表,应用记录用户的位置以经纬度的方式存储,并记录当前的时间,当查看历史位置时在图上定位到历史位置。如表4.3所示。表4.3历史位置记录表字段名称字段类型长度约束说明idINT10主键自增列myphoneVARCHAR11非空用户手机号longitudeDOUBLE10非空经度latitudeDOUBLE10非空纬度dateVARCHAR50非空日期时间
5系统功能的实现与测试5.1系统功能的实现5.1.1登录注册功能的实现用户在使用轨迹追踪系统的时候,第一个界面是登录界面,如图5.1所示的登录界面。如果用户已经注册过本应用软件,就可以直接登录使用。如果用户从来没有注册过,就需要去注册之后才能使用,在登录界面有“注册用户”的字样。用户点击该字样就可以跳转到注册界面。初测界面如图5.2所示。 图5.1登录界面 图5.2注册界面登录功能的具体实现:用户登录时输入手机号和密码,点击登录按钮,服务端会判断手机号码和密码是否匹配,如果匹配正确就进入主界面,否则提示手机号或密码不正确。注册功能的具体实现:用户点击“注册用户”的字样之后跳转到注册界面,用户需要输入手机号、密码、姓名、性别、年龄共五个信息。每个信息必须填写,不能为空,如果某一项为空的话就会提示用户请填写完整,不能为空。填写完整之后点击提交按钮,会把填写的信息发送到服务器进行判断,如果没有注册过,就注册成功,否则就会提示注册失败。5.1.2自我定位功能的实现轨迹跟踪系统实现定位和行程记录功能的过程中,使用的是百度地图定位SDK开发包。这是百度公司专门为移动端开发者所提供的服务接口。在使用百度定位SDK时,需要开发者去百度开放平台,根据开发者的工程文件名,去申请定位的KEY值,便可以根据百度所提供的接口,实现开发者所需要的功能。在申请KEY值得时候,开发者需要从签名文件中获取SHA1值。获取SHA1值首先进入本身电脑Android模拟器存储的目录,然后再次目录下打开命令窗口。打开是命令窗口之后,需要输入密码,一般为“.android”或者“android”,根据电脑会有所不同。密码正确之后就会出现所需要的SHA1值。然后在申请KEY值得平台上输入之后得到KEY值,然后在工程的清单文件里面配置一下即可完成。百度地图SDK提供了许多的功能,本系统主要是为了使用百度地图的定位功能。定位功能的实现是基于服务上面实现的,因此定位的实现是需要开发者在清单文件里面配置。定位环境配置完成之后,当用户在客户端开启应用时,应用会调用接口,发起定位请求。定位模块会利用网络采集位置信息,并将数据发送给百度服务器,对数据进行处理后,返回给客户端,客户端调用数据接口,得到返回的定位结果,最后实现客户端的定位,如图5.3所示。图5.3自我定位界面5.2.3好友管理模块的实现好友管理模块的功能设计主要有三个部分:好友的添加、查看和删除;查看个人信息;查看历史位置。1)好友添加用户在登录成功之后进入主界面,点击到我的好友界面,第一次进入是没有好友的,所以需要用户自己去添加好友。当添加过好友之后,界面就会显示添加的好友姓名和联系电话。用户添加好友要点击添加按钮跳转到添加好友的界面。如图5.4所示。添加好友首先是可以根据输入手机号码查找好友,然后跳转到查询结果页面,如果没有此好友存在就会提示用户好友不存在,存在好友就会出现好友的姓名和手机号。图5.4添加好友界面好友添加的具体实现:用户在添加好友界面输入需要添加的手机号码,点击查找,客户端会把输入的手机号码发送到服务端进行查询,如果没有该好友就会显示“不存在的好友”字样,否则就会把要查询的好友的信息显示到查询结果界面。然后用户点击添加,如果用户已经添加过该好友,那么就会提示用户已添加过的好友,否则就会提示添加成功。2)查看个人信息用户在我的好友界面点击左上角的人形头像就可以查看用户个人信息,也可以修改个人信息。查看个人信息具体实现:个人信息的获取是根据用户登录时的手机号码为标识,去获取服务器的个人信息显示到手机客户端。用户修改个人信息之后数据库的信息会立即修改。5.2.4轨迹跟踪模块用户如果需要记录轨迹,可输入自定义名称,并记录出行过程中的轨迹。如图5.5,5.6所示。图5.5轨迹追踪界面图5.6轨迹追踪定位界面5.2.5轨迹管理模块轨迹管理模块所实现的功能主要是用户能够管理自己的历史轨迹,其两个子功能分别为轨迹查看和轨迹删除。如图5.7所示。图5.7历史轨迹管理当用户查看历史轨迹时,系统会从轨迹记录列表界面跳转到地图界面,系统用轨迹绘制模块的功能向用户展示历史轨迹。同时可通过调节地图的缩放比例来查看轨迹。如图5.8所示。用户对已经保存的轨迹可以进行删除操作,通过点击相应的按钮可以将轨迹记录从记录列表中移除,同时删除数据库中该条轨迹的全部信息。图5.8历史轨迹查看轨迹中所记录的点都会有明显的绿色标记显示出来。如图5.9所示。图5.9历史轨迹标记图 5.2功能测试该轨迹追踪系统划分成用户登录、自我定位、轨迹追踪、轨迹管理、好友管理五大功能模块。在各个模块完成后,需要把整个系统进行检测,保证其功能可以正常运行。针对系统的特性,主要重以下几个方面进行测试:应用的功能是否满足需求;代码逻辑是否合理,是否存在bug。如表5.1,5.2,5.3,5.4,5.5所示。表5.1登录注册功能测试表测试模块轨迹追踪系统登录注册功能定义用户在使用系统时能够注册登录用例用户可以注册登录使用预期效果1、用户首次登录需要输入用户名密码2、用户第二次登录的时候如果密码被保存,不用输入用户名和密码实际效果与预期的效果一致结论功能测试通过 表5.2自我定位功能测试表测试模块轨迹追踪系统自我定位功能定义用户在使用系统时能自我定位用例用户可以自我定位预期效果能自动定位并显示在地图中心实际效果与预期的效果一致结论功能测试通过表5.3轨迹跟踪功能测试表测试模块轨迹追踪系统轨迹跟踪功能定义用户在使用系统时能实现历史轨迹保存用例用户可以记录经过的路线预期效果能把经过路线标记出来并保存实际效果与预期的效果一致结论功能测试通过表5.4轨迹管理功能测试表测试模块轨迹追踪系统轨迹管理功能定义用户在使用系统时能管理轨迹用例用户可以查看或删除记录预期效果长按可以出现查看或者删除选项卡进行选择实际效果与预期的效果一致结论功能测试通过表5.5好友功能测试表测试模块轨迹追踪系统好友功能定义实现类似QQ的通讯用例用户能够实现好友的添加删除,查看个人和好友信息,修改个人信息预期效果1、能够添加删除好友2、能够查看个人和好友信息3、能够修改个人信息实际效果与预期的效果一致结论功能测试通过本次测试依据现有的功能模块进行测试。通过测试结果可以看出:无论是在模拟器上还是在真机上,该系统各个功能都能完全实现,符合验收标准。
参考文献[1]李芙蓉.当前智能手机操作系统及其比较分析[J].甘肃科技纵横,2015,37(5).[2]RichardFerraro.LBS应用开发[M].北京:人民邮电出版社,2014.[3]马越.Android的架构与应用[D].中国地质大学(北京),2015.[4]杜传明.百度地图API在小型地理信息系统中的应用[J].测绘与空间地理信息,2015,34(2):152-153.[5]施连敏,盖之华.基于Android的百度地图应用的搭建[J].技术与市场,2016,21(12).[6]赵哲.基于Android平台的移动应用构建研究与设计[J].新型工业化,2013,(6).[7]刘雪.Android平台下移动轨迹定位信息系统的设计与实现[D].浙江:浙江师范大学,2013.[8]李海胜,姚存治.基于移动终端的GPS监控系统设计与实现[J].漯河职业技术学院学报,2014,(2):34-35.[9]刘胜前,陈立定,任志刚.基于Android移动平台和GPS应用服务研究[J].信息技术,2012,(1):82-85.[10]赵建勋.基于Android平台的移动位置服务的开发与实现[J].现代商贸工业,2013,22(20):271-272.[11]李铮.基于Android的位置跟踪系统设计与实现[J].承德石油高等专科学校学报,2013,15(5):33-36.[12]祝洪娇.基于Android平台的位置服务系统的设计与实现[D].北京:北京交通大学,2012.[13]曾宏远,崔荔蒙.从零开始学Android编程[M].北京:电子工业出版社,2012.[14]林志伟,杨昱昺.基于Android系统的电子地图运动轨迹绘制的研究与实现[J].科技创新与应用,2014,(17):20-21.[15]李瑞宣,王山东,徐志远,等.基于Android平台定位系统设计和实现[J].信息技术,2013,(12):187-190.[16]陈锁柱.基于GoogleAndroid平台移动轨迹记录系统的研究与应用[D].内蒙古大学,2014.
结束语经过了几个月的学习和设计,我终于完成了此次毕业设计与论文。从一开始的选到课题到最后的收工,我一直为此而忙碌着,每一步都是尝试与挑战。这段时间里,从一开始的基础知识不扎实,甚至有些都没学过,通过上网查阅大量资料文献,还有老师的指导,让自己的思路慢慢清晰,作品一步一步的完善。每一次修复BUG都给予我无限的动力,那种成就感是不能用言语来表达的。在此期间我不仅在学习上收获很多,更是学到了一些道理:与人相处要和善,会说话;对待自己的工作要有一颗敬业的心;对于困难要积极面对,自我突破,胜不骄败不馁。此外我也存在一些不足之处,如专业知识不是非常扎实,有点地方不够细心,明明在眼前却很久没发现等等。这次设计使我人生道路上又增加了一道色彩,在以后的学习中激励我进步,为以后步入社会工作累积了经验。
致谢本次毕业设计和论文是在我的导师徐晓君老师全程指导下完成的。徐老师多次询问毕业设计的进度,每当我在设计过程中遇到问题卡主的时候,她都会用那渊博的专业知识位我解惑,帮助我开阔研究思路,一步一步完成毕业设计。徐老师一丝不苟、精益求精、严谨求实的作风不仅在学习上指导了我,在生活上也帮助了许多,教我为人处事,使我终身受益。感谢学院所有给我上过课的老师,感谢他们在专业知识方便对我的教导,在生活上对我的关心。还要感谢同学,在我整个毕业设计过程中给我各种耐心的帮助和在生活上的鼓励,四年同窗,两不相忘。最后感谢我的家人,他们是我最坚强的后盾,他们的支持与情感是我一生的财富。谢谢!开题报告学院姓名班级学号指导教师毕业设计(论文)题目基于在线地图的轨迹跟踪服务题目类型□工程设计□技术开发□软件工程□理论研究和方法应用□管理模式设计□其他选题目的及意义随着移动通讯网络在全球覆盖范围的扩大,智能手机已经成为人们现代社会生活中获取信息的主要设备。目前全球智能手机用户为21亿人,较2014年增长了23%。手机移动网络服务给人们日常生活带来了翻天覆地的变化,而位置则是这场变革中的关键要素之一。调查显示,中国手机地图市场规模在2012年仅1.9亿元,到2014年这一规模增长至4.1亿元,同比增长了115.8%。可见,手机用户对地理空间位置信息的需求更加强烈。基于位置信息提供服务的轨迹追踪应用系统满足了手机用户们这方面的需求,在物流管理、旅游、客运公交和寻找走丢的家人等众多领域,这类软件都能够产生积极的影响。2010年4月23日,百度地图正式宣布开放地图API,满足了移动开发者对地图应用的开发需求。相比较多数Android应用中采用的GoogleMaps,在手机地图中接入百度地图更符合中国人对地理信息获取和查询的要求。因此,百度地图的免费性和Android平台的开源性,使得开发者能够在低成本高效率的情况下开发基于位置信息服务的Android手机软件。本应用设计在这样的技术背景下,旨在实现一款Android平台手机软件,它通过获取GPS定位数据,在百度地图上显示并记录用户的户外移动轨迹。该软件可陪伴用户跑步、骑车、散步,完整记录锻炼历程和所用的时间既能作为美好的回忆也可根据以往路线的对比来优化行程。设计(研究)现状和发展趋势国内外研究现状Android手机平台现状分析搭载Android操作系统的智能手机目前已经成为市场上最炙手可热的智能产品。来自美国市场研究机构Gartner的数据显示,Android操作系统所占的市场份额从2008年的0.5%急剧增长到2010年的22.7%,先后超过微软的WindowsMobile及苹果的iOS。近几年增长势头持续,截至2016年4月的三个月中,Android在美国市场上所占份额为67.6%,高于去年同期的62.4%。如此迅猛的发展得益于Android平台自身独特优势:它不仅仅是一款手机操作系统,更像是一个对任何开发人员开放的移动终端开发平台。所以一经推出便引起世界各地开源爱好者的关注。目前的Android系统,具有成本低廉、良好的用户体验、较强的开放性等特点,成本低廉使得Android手机在更注重性价比的中国市场中迅速占据一席之地,而开源性吸引了更多的开发商在Android平台不断推出各式各样的应用程序。另外,Android智能手机有Android
Market和众多第三方应用商店做后盾,其应用方面的资源非常丰富。同时,简单易懂的操作界面也使Android手机更受消费者的欢迎。位置信息服务系统研究现状LBS(LocationBasedService,基于位置的服务)最初只是移动运营商招徕顾客的一种手段,如今越来越多的消费者却希望能随时随地使用这项服务。LBS结合空间信息技术和无线通讯技术,实时获取移动终端用户的地理位置信息,能够在电子地图平台支持下为用户提供这种增值业务来辅助解决其他问题。比如信息查询、地图服务、手持终端的导航、弱势群体的跟踪等。目前市场中此类手机软件所依赖的网络地图服务不尽相同,常见的几种为GoogleMaps、高德地图、百度地图等。课题研究的主要内容在深入分析Android平台相关概念和技术的基础上,结合百度地图API库设计并实现了一个Android平台轨迹追踪系统,该系统能够实现自我定位、实时轨迹追踪、历史轨迹管理等核心功能。该系统不仅可用来记录平时运动的轨迹,用户当前的地理位置,在一些紧急情况,如老人或者儿童走失的情况下,在同是好友的基础上,用户可定位走失人员的位置,并显示出周边标志性建筑,能够及时的找到走失者。课题的工作方案第一步,查阅资料和相关的文档,确定所需要的功能如何实现。第二步,开发环境的搭建:包括Android环境变量设置,JDK,ADT的下载安装。第三步,进行系统的可行性分析,完成系统的需求分析。第四步,对系统进行概要设计,设计系统的结构图,确定各模块(页面)之间的调用关系,设计出结构良好的数据库。第五步,对系统进行详细设计,确定各模块,包括软件系统的欢迎界面,登陆界面,注册界面,地图界面,我的记录界面。第六步,进行软件编码,实现其各项基本功能。第七步,系统完成后进行真实的检测,确保数据的准确性。课题研究有无困难准备如何解决本课题研究方面的主要困难在于,系统如何定位跟踪及记录。解决方案:了解目前对于相关系统的研究,参考相关的文献和资料,了解其解决方案,学习其算法知识加以运用。主要参考文献[1]李芙蓉.当前智能手机操作系统及其比较分析[J].甘肃科技纵横,2008,37(5)[2]RichardFerraro.LBS应用开发[M].北京:人民邮电出版社,2012[3]马越.Android的架构与应用[D].中国地质大学(北京),2008.[4]杜传明.百度地图API在小型地理信息系统中的应用[J].测绘与空间地理信息,2011,34(2):152-153.[5]施连敏,盖之华.基于Android的百度地图应用的搭建[J].技术与市场,2014,21(12).[6]赵哲.基于Android平台的移动应用构建研究与设计[J].新型工业化,2013,(6).[7]刘雪.Android平台下移动轨迹定位信息系统的设计与实现[D].浙江:浙江师范大学,2013.[8]李海胜,姚存治.基于移动终端的GPS监控系统设计与实现[J].漯河职业技术学院学报,2014,(2):34-35.[9]刘胜前,陈立定,任志刚.基于Android移动平台和GPS应用服务研究[J].信息技术,2012,(1):82-85.[10]赵建勋.基于Android平台的移动位置服务的开发与实现[J].现代商贸工业,2010,22(20):271-272.[11]李铮.基于Android的位置跟踪系统设计与实现[J].承德石油高等专科学校学报,2013,15(5):33-36.[12]祝洪娇.基于Android平台的位置服务系统的设计与实现[D].北京:北京交通大学,2012.[13]曾宏远,崔荔蒙.从零开始学Android编程[M].北京:电子工业出版社,2012.[14]林志伟,杨昱昺.基于Android系统的电子地图运动轨迹绘制的研究与实现[J].科技创新与应用,2014,(17):20-21.[15]李瑞宣,王山东,徐志远,等.基于Android平台定位系统设计和实现[J].信息技术,2013,(12):187-190.[16]陈锁柱.基于GoogleAndroid平台移动轨迹记录系统的研究与应用[D].内蒙古大学,2011.计划进度2016.11.30-2016.12.10:查阅相关的文献资料,撰写开题报告,并提交报告。2016.12.11-2016.12.20:需求分析,确定设计方案。20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 师德师风警示教育活动总结6篇
- 工程信息管理体系
- 国开《可编程控制器应用》形考任务五实验1
- 2024年淮南联合大学高职单招职业适应性测试历年参考题库含答案解析
- 2022年6月7日陕西省省直事业单位广播电视局面试真题及答案
- 中国人民大学会计系列教材·第四版《成本会计学》课件-第六章
- 湿纸巾发展趋势分析报告
- 2024年陇西县第一人民医院高层次卫技人才招聘笔试历年参考题库频考点附带答案
- 如何提起证券交易代理合同纠纷诉讼培训讲学
- 2024年泰山护理职业学院高职单招职业适应性测试历年参考题库含答案解析
- JJG(交通) 171-2021 超声式成孔质量检测仪检定规程
- QCT457-2023救护车技术规范
- 气象卫星技术在军事中的应用
- 《中国大熊猫》课件大纲
- 新课标背景下的大单元教学研究:国内外大单元教学发展与演进综述
- (正式版)HGT 4339-2024 机械设备用涂料
- 2024年医疗器械销售总结
- 基于物联网的支护机械远程监控系统
- SLT278-2020水利水电工程水文计算规范
- 心灵养生的疗愈之道
- 建筑设计公司的商业计划书
评论
0/150
提交评论