毕业设计(论文)-基于在线地图的轨迹跟踪服务.docx_第1页
毕业设计(论文)-基于在线地图的轨迹跟踪服务.docx_第2页
毕业设计(论文)-基于在线地图的轨迹跟踪服务.docx_第3页
毕业设计(论文)-基于在线地图的轨迹跟踪服务.docx_第4页
毕业设计(论文)-基于在线地图的轨迹跟踪服务.docx_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

宁夏理工学院毕业设计摘要现如今智能手机已经离不开我们的生活,而位置更是出行必不可少的因素。本文深入分析了目前全球主流手机操作系统Android平台的优势特点和体系架构,详尽介绍了应用程序的开发流程。然后,通过对手机网络地图现状的分析,选择了结合百度地图与其API库设计出一款基于在线地图的轨迹追踪服务。本文设计的轨迹跟踪服务的基本功能是能够根据用户GPS定位信息实时监控,实时知道自己地理位置;进行轨迹追踪,使其展现在地图上;对轨迹进行查看和删除和好友管理管理等功能。在设计完成之后实现了系统的各个模块,通过PC端和真机测试,已经达到了系统最初的设计目标。该系统在日常生活出行中能够体现一定的价值。关键词:移动定位;Android平台;轨迹记录;百度地图全套设计加扣 3012250582AbstractNow the smart phone has been inseparable from our lives, and the location is essential to travel factors. This paper analyzes the advantages and architecture of the current mainstream mobile phone operating system - Android platform, and introduces the key concepts and application development process of Android application development in detail. Then, through the analysis of the status quo of mobile phone network map, we choose to combine Baidu map and its API library to design a trajectory tracking service based on online map. The basic function of the trajectory tracking service designed in this paper is to be able to self-position, to know their own geographical location in real time; to track the track to show it on the map, and to manage and delete the trajectory.After the completion of the design to achieve the system of the various modules, through the PC and the real machine test, has reached the systems initial design goals. The system can achieve self-positioning, trajectory tracking and management trajectory and other functions.Key words:Move positioning;Android platform;Track record;Baidu map目录摘要IAbstractII目录III1 绪论11.1 课题背景及目的11.2 国内外研究现状11.2.1 Android手机平台现状分析11.2.2 位置信息服务系统研究现状21.3 主要研究内容22 相关技术介绍32.1 Android简介及发展历史32.2 Android平台特征42.3 Android平台体系架构42.4 Android的系统优势和特点62.4.1 Android的系统优势62.4.2 Android的系统特点62.5 Eclipse开发环境62.6 Android应用程序开发环境搭建72.7百度地图相关介绍92.7.1 手机GPS92.7.2百度地图 API及SDK92.8 Mysql数据库92.9 系统开发环境93 系统分析103.1 可行性分析103.1.1经济可行性103.1.2技术可行性103.2 系统需求分析103.3 数据流图113.3.1 轨迹追踪系统的顶层数据流图113.3.2 轨迹追踪系统的0层数据流图113.3.3 轨迹追踪系统各个模块的1层数据流图123.4 数据字典133.5 功能结构设计153.6 系统模块173.6.1 登陆注册功能173.6.2 自我定位功能183.6.3 轨迹追踪功能193.6.4 轨迹管理功能203.6.5 好友功能204 数据库设计234.1 概念结构设计234.2 逻辑结构设计245 系统功能的实现与测试265.1 系统功能的实现265.1.1 登录注册功能的实现265.1.2自我定位功能的实现275.2.3好友管理模块的实现295.2.4 轨迹跟踪模块305.2.5 轨迹管理模块315.2 功能测试34参考文献36结束语37致谢38IV1 绪论1.1 课题背景及目的现如今社会的我们在生活中已经离不开网络,智能手机让低头族的数量越来越多,似乎离开了手机我们就不能生存下去。根据数据显示,2016年全世界智能手机的使用者已经超过21亿人。手机网络服务在生活中已经无处不在,因此我们的生活习惯也发生了较大的改变,最主要的一点就是它能够定位追踪。根据数据可以看出,在2015年的时候,中国手机地图使用者达到6.05亿人,到2016年,手机地图使用者达到了6.52亿人。这充分表明了人们越来越离不开定位。定位追踪在生活中无处不在,我们出行打车、自驾,都用到了导航,平时网上购买的快递也是对于物件的定位追踪实现查看的。Android平台对于开发者来说,是一个非常便捷、开放的平台,它提供了其他平台所没有的环境,大大缓解了开发者们之前所存在的各种麻烦问题。此平台是谷歌公司在2007年推出的一个软件平台,一经推出,马上得到了众多开发者们的喜爱,随之而来的是各种软件在系统商店的上架。在美国,系统商店已经上架的软件达到了几十万款,带来了非常可观的收益。反观中国,因为中文版的软件占的比例非常少,所以Android端的软件在中国地区开发进度较为缓慢,开发出中国用户习惯的软件是目前比较关键的点。在中国,百度地图是中国人最能接受的地图,因为谷歌地图无论在是界面上还是在操作使用上全都是外文,国人操作起来就有一定的困难。当百度地图在2010年推出百度API后,开发者们就开始狂欢了。开发者们能够肆无忌惮的开发自己想开发的东西,既能省下大量成本,又能高效率的开发出有定位追踪的手机软件,最主要是得益于开放的安卓平台和免费的百度API。本次设计的目的是在低成本、高效率的条件下开发出一款Android平台手机软件,它并不适用商业性,只适用于一小部分群人在生活上提供一定的便利。它通过各种技术相结合,能在电子地图上实现注册登录、自我定位、轨迹跟踪、轨迹管理和好友增删等各种功能。1.2 国内外研究现状1.2.1 Android手机平台现状分析虽然这几年,苹果公司生产的苹果系统设备深受人们的追捧,但是不得不承认,目前全球覆盖范围最广,人们用量最大的依然是搭载Android操作系统的手机,相比较其他系统,Android系统更加实用,性价比更高。根据网上数据分析出,Android系统在市场的占有率近乎达到38%,先后超过微软系统以及苹果系统而成为巨头。Android不但是手机操作系统,而且是对于任何开发者开放的开发平台。它的开放性,自由性吸引了全世界的开发者,自身的发展自然而然就迅猛起来。在中国,因为用户量巨大,所以性价比往往是使用者考虑的最主要因素。Android手机在中国市场流行就是因为其性价比非常高,而性价比高得益于Android平台开发出的系统具有成本低,开放性强等特点。同时,简洁的操作界面,丰富的色彩元素也使Android手机收到平民的追捧。1.2.2 位置信息服务系统研究现状它包括两层含义:最基础的是是锁定用户所在的位置;然后找出与位置相关的各种信息服务。比如先定位使用者当前的位置,然后在规定范围内寻找使用者想去的地方。所以此服务需要网络来实现定位和服务两大功能。因为国内外用户数量巨大,各个地图软件之间功能细分有所区别所以他们之间的竞争非常激烈。1.3 主要研究内容本文充分利用了Android平台的优势和特点,主要运用GPS以及百度地图API库,开发出一个基于在线地图的轨迹跟踪系统,该系统能够实现注册登录、自我定位、轨迹追踪、历史轨迹管理、好友管理等核心功能。2 相关技术介绍2.1 Android简介及发展历史现代生活高大上的事物越来越多,其主要核心就是智能。Android就是智能的一种。谷歌公司推出此平台目的是为了小型设备的应用。任何系统都是由部分组成,Android系统也一样。免费的Linux操作系统,Java语言开发出的应用程序和中间件一起构成了该平台。网络运营商、手机芯片制造商和手机制造商一起组建了一个联盟,此联盟一起开发源代码,一起发布新的APP,一起研发新系统,携手共进为开发者和使用者提供更舒适的环境。我们都知道消耗品的新陈代谢是非常快的,就连日常用品的更新都非常快。Android系统也是如此,隔一段时间就出新版本,每年因为版本太旧问题淘汰回收的手机数不胜数。从第一版本到最新的一代,逐步让界面更加简练,使用者用的更加;功能越来越齐全,使用者更加方便。随着需求不断扩大,Android系统的各个版本都在进步:1)Android 1.0版本眼光是与时俱进的,在现在我们的严重来第一代肯定显的太简单,但是基本功能还算齐全,比如打电话、发短信、放无线网络、连接蓝牙以及同时处理各种进程,还能上网冲浪,在手机商店可以挑选自己喜欢的APP。2)Android 1.5版本现在人们都喜欢拍照录像。1.5版本就多了这个功能,我们可以再生活中拍摄和录制自己喜欢的照片和视频,还可以上传至网络上与网民们分享。此版本对定位技术更加优化,性能更加强大。3)Android 2.0版本此版本主要就是让运行速度提升,节省用户等待时间,同时分辨率更高。使用户使用更加舒适。4)Android 4.0版本4.0版本是功能非常齐全,非常强大的一个版本。它优化了处理器,不仅可以显示用户的使用流量分布,还可以设置阈值,从而使用户对自己的流量有一定的计划。此外在界面上又有一定的改进。使用户有更多的体验。5)Android 5.0版本网络世界中信息安全是极为重要的。5.0版本在功能上多了访客模式,使之更加安全。在面部解锁功能部分进一步完善,识别度进一步提高,降低识别难度。5.0版本在界面上是一次改革,界面更加简单、色彩更加多样。此外,5.0版本是目前最为普及的版本。2.2 Android平台特征Android平台有非常多的特性:与人很相似,它可以把并不感冒的程序都抛之脑后,植入用户想使用的程序,达到自己想要的效果。在开发语言上,Java语言是最强大、最通用的,而Android中的应用都是用该语言来实现的。该平台支持日常生活中频繁用到的多媒体,如照片、视频、无线、定位等等。生活中,我们在智能设备玩的游戏基本都是二维和三维,而二维、三维图形库都是被Android系统所包含的。这对于现如今社会网络游戏盛行的时代,开发者们能够更好的去开发各种游戏。存储是任何只能设施都要具备的功能,而Android平台具有强大的存储功能,用户不需要不断的清除缓存之类的操作,给用户的使用带来极大的方便。2.3 Android平台体系架构Android系统包括应用程序、应用程序框架、核心类库、Android运行环境和linux内核五个部分,如图2.1所示。图2.1 Android平台架构1) Application(应用程序)Application是原生的应用程序:里面包含系统自带的应用程序如了原生的浏览器、手机的桌面,最基础的电话、短信等,还有用户们根据自己的喜好从商店下载的各种应用。2) Application Framework(应用程序框架)由5个占据单独线程的服务组成,它们之间的交流只是靠通信机。提供核心开发API,包含了java代码,调用了底层c代码。框架层就相当于人都大脑,它支配着应用程序的全局,任何操作都要管理。无论是什么事件,都是需要各个服务支持的。3)Libraries(库)包含了c代码库; OpenGL:即图形快速显示,游戏开发;webkit:即浏览器内核。4) Android Runtime(Android运行时)Dalvik VM:虚拟机,android代码运行在此虚拟机,运行时调用Libraries C代码库。5) Linux Kemel(Linux内核)Linux内核包含了:安全性的管理、运行内存的处理、应用进程处理、电源管理、硬件的驱动等系统最为基础的管理。Linux的适应能力非常强大,可以在各种环境下运行。2.4 Android的系统优势和特点2.4.1 Android的系统优势1)开放性:Android系统是开源的,所有的移动手机制造厂商都可以免费的使用,厂商也可以根据自己的需求对系统进行优化,这使得软件开发者很是喜欢,他们可以根据自己对系统的理解去做一些大胆的尝试,极大地满足了用户对的需求。2)选择性强:大多数的厂商都会根据Android系统开发出格式各样的软件产品,但是这都不会使数据产生错乱,不会有软件对于硬件的兼容问题。这使得Android系统能够在不同的设备上进行开发。3)开发方便:谷歌公司把Android系统的源码给予公开,是开发者能够更好的交流,提供了更好的开发资源。2.4.2 Android的系统特点1)传感器类型的多种支持Android系统的手机支持各种各样的传感器,这个使得手机具有强大的感应外界环境的能力。如加速度传感器、旋转向量传感器、重力传感器等,这些传感器的支持可以使手机对于速度方面的数据测量有了一定的可能。2)网络连接通信的多样性移动手机的通信功能是必须的,对于此功能的实现,谷歌工程师把通信的功能封装在了系统的底层。这样开发者就可以非常方便的去调用系统中的库方法来实现通信功能。同时,Android还提供了传统的通信模式HTTP和Socket通信方式。除此之外Android系统还支持蓝牙传输的功能。3)定位功能全面性对于定位的实现,Android系统提供了GPS定位和网络的定位。网络定位是通过手机连接网络去搜索周边的信息如基站、WiFi等信息通过服务器返回数据进行的定位。GPS定位是手机去接受卫星信号,进行室外定位的一种方式。这使得开发者对于手机的定位有了方便的选择。2.5 Eclipse开发环境Eclipse就像开发者的一个生产工厂,它一开始有生产机械,车床,各种机器,就像工人会用工厂里的设备生产出新的设备,来扩充工厂的规模,开发者用Eclipse开发出新的工具,这些工具反回来可以扩充Eclipse的功能。这也是它的一个亮点。Eclipse平台由五种组件组成:平台核心(platform kernel)、工作台(workbench)、工作区(workspace)、团队组件(tram component)以及说明组件(help)。Eclipse软件如图2.2所示。图2.2 Eclipse界面图2.6 Android应用程序开发环境搭建Android应用程序的开发必不可少的一步就是安装开发工具。所以我们先在电脑上安装各种开发需要的工具。我们需要搭建的有JDK、ADT等等。百度搜索JDK下载,找到需要的版本,然后下载下来安装。我的电脑系统是windows7,然后把JDK安装在E盘的Java文件夹下。然后是环境配置。JAVA_HOME值为:E:Program FilesJavajdk1.8.0_31; 如图2.3所示。图2.3 JAVA_HOME值CLASSPATH值为: .;%JAVA_HOME%lib;%JAVA_HOME%libtools.jar如图2.4所示。图2.4 CLASSPATH值Path值:%JAVA_HOME%bin;如图2.5所示。图2.5 Path值安装完成后我们可以用命令查看。按wins+R打开运行窗口,输入cmd查看。如图2.6所示对话框。图2.6 JDK配置成功后窗口显示2.7百度地图相关介绍2.7.1 手机GPSGPS全球定位系统这种高科技技术最开始只是在军队使用,民间是使用不到的。随着信息科技的发展,GPS慢慢的融入社会广泛的领域中。我们经常可以看见美国的科幻大片中出现GPS跟踪匪徒,它的实现是通过卫星信号传输到地面获取信息,精度高,效率高使其成为我们生活中最常用的定位技术。2.7.2百度地图 API及SDK百度地图移动版API(Android)是位Android系统所提供的一个服务接口。开发人员通过对接口的使用,很简单的就可以使用百度所提供的数据。百度地图移动版API对于地图的功能提供了很大帮助。开发者根据百度地图API的介绍,可以去使用定位,路线展示等功能。为了移动客户端开发者对百度地图的使用,百度公司提供了百度地图的SDK,使开发者对定位功能的进一步应用变的非常便捷。并且SDK数据包比较小,功能较多,接口十分友好。2.8 Mysql数据库MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言-结构化查询语言(SQL)进行数据库管理。由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。2.9 系统开发环境处理器:Intel(R) Core(TM) i5-3230M CPU 2.60GHz安装内存(RAM):6.00GB操作系统:Windows7 64位开发环境:JDK8.0、Tomcat7.67、Mysql5.53 系统分析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、能够添

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论