当前位置:天海范文网 > 范文大全 > 演讲稿 >

演讲稿安卓远程定位系统

时间:2022-06-18 18:56:02 来源:网友投稿

  本科生毕业论文

 题目 :

  基于安卓的远程定位系统

  学

 院: :

 计算机科学与技术学院 专

 业: :

  学

 号: :

  学生姓名: :

  指导教师: :

  日

 期: :

 二○一六年六月

  最新

 摘

 要

 随着智能手机走进普通人的生活,它将成为人们获取信息的主要设备。智能移动终端所具有的通讯服务、定位服务和摄像功能为及时获取照片信息带来了极大的方便。Android 平台支持各种应用的开发,它是目前最流行的开源智能手机操作系统。因此,Android 手机的应用服务将会有很大的发展空间,手机 GPS 远程定位及运行轨迹管理系统服务就是其中的一项。

 远程定位是指通过特定的定位技术来获取移动手机或终端用户的位置信息(经纬度坐标),在电子地图上标出被定位对象的位置的技术或服务。定位技术有两种,一种是基于 GPS 的定位,一种是基于移动运营网的基站的定位。基于 GPS 的定位方式是利用手机上的 GPS 定位模块将自己的位置信号发送到定位后台来实现移动定位的。所以本系统采用前者来开发远程定位系统。

 本文采用 java 语言和 Eclipse 平台,开发了一个安卓远程定位系统,本系统的主要模块:客户端登录模块为用户提供登录,登录方式分为管理员登录和普通用户登录。客户端注册模块进行用户的注册。客户端主界面模块定位用户所在位置,更改定位的刷新时间,管理员可以查看普通用户的轨迹。服务器端登录模块为管理员提供登录。服务器端用户管理模块对用户进行增删改查。服务器端远程定位模块查询用户的位置信息。服务器端轨迹回放查询用户的轨迹。

 关键词:Java;Eclipse;安卓;远程定位

 武汉科技大学本科生毕业论文

  优选课件 Abstract

 As smart phones into the life of the ordinary people, it will become the main equipment of access to information. Therefore, the application of mobile phone service will have very big development space, mobile phone GPS positioning and orbit service management system is one of them. Android platform to support the development of a variety of applications, it is by far the most popular open source smartphone operating system, the latest version is android4.0, provides a convenient and flexible development interface.

  Mobile positioning refers to the fixed by a specific technology for mobile phones or end user"s location information (latitude and longitude coordinates), was located in the electronic map object location technology or service. Positioning technology, there are two, one is based on GPS, a positioning is based on mobile operation network base station. Based on GPS positioning way is to use a mobile phone GPS module will send signals to its own position background to realize the mobile location. Base station positioning is the use of measuring distance to determine the distance of the base station for mobile phone location. The latter do not need to mobile phones with GPS capabilities, but the precision is largely dependent on the distribution of base station and the size of the coverage, sometimes error more than a kilometer. The former location accuracy is higher. In addition to use Wifi positioning on a small scale. This procedure has the very good portability and inheritance, developers can in its foundation. Intelligent mobile terminal of communication services, location-based services, and camera for photo information brought great convenience in a timely manner. This subject requires students based on the Android mobile intelligent terminal to develop a GPS positioning system, management system and the orbit including photography, upload, pictures, etc. This information need by intelligent terminal positioning function, at the same time should be running in the background copy information transmission.

 Keywords:

 Java, Eclipse, Android, DistanceLocation

 目录

 武汉科技大学本科生毕业论文

  优选课件

 1

 绪论 ..................................................................................................................................... 1

 1.1

 项目研究背景 ............................................................................................................ 1

 1.2

 项目研究意义 ............................................................................................................ 2

 1.3

 论文的组织结构 ........................................................................................................ 2

 2

 需求分析 .............................................................................................................................. 3

 2.1

 软件目标 .................................................................................................................... 3

 2.2

 功能分析 .................................................................................................................... 3

 2.3

 开发工具 .................................................................................................................... 3

 2.3.1

 Eclipse .............................................................................................................. 3

 2.3.2

 Android ADT .................................................................................................... 4

 2.3.3

 Android SDK .................................................................................................... 4

 2.3.4

 Genymotion ...................................................................................................... 4

 2.4

 数据存储 .................................................................................................................... 4

 2.5

 运行环境 .................................................................................................................... 5

 2.6

 本章小结 .................................................................................................................... 5

 3

 系统分析与设计 .................................................................................................................. 6

 3.1

 可行性分析 ................................................................................................................ 6

 3.2

 系统设计原理 ............................................................................................................ 6

 3.2.1

 Android 系统结构 ............................................................................................ 6

 3.2.2

 Broadcast 工作原理 ......................................................................................... 8

 3.3

 系统组成模块 ............................................................................................................ 9

 3.4

 系统流程图 .............................................................................................................. 10

 3.5

 系统用列图 .............................................................................................................. 10

 3.6

 本章小结 .................................................................................................................. 11

 4

 系统编码实现 .................................................................................................................... 12

 4.1

 安卓的工程 .............................................................................................................. 12

 4.1.1

 安卓工程程序结构 ........................................................................................ 12

 4.1.2

 系统权限 ........................................................................................................ 13

 武汉科技大学本科生毕业论文

  优选课件 4.1.3

 数据库技术 .................................................................................................... 14

 4.2

 客户端模块 .............................................................................................................. 15

 4.2.1

 登录模块 ........................................................................................................ 15

 4.2.2

 注册模块 ........................................................................................................ 16

 4.2.3

 主界面模块 .................................................................................................... 17

 4.3

 服务器模块 .............................................................................................................. 18

 4.3.1

 登录模块 ........................................................................................................ 18

 4.3.2

 用户管理模块 ................................................................................................ 19

 4.3.3

 远程定位模块 ................................................................................................ 20

 4.3.4

 轨迹回放模块 ................................................................................................ 20

 4.4

 本章小结 .................................................................................................................. 21

 5

 总结 .................................................................................................................................... 22

 参考文献 .................................................................................................................................. 23

 致

 谢 ...................................................................................................................................... 24

  最新 1 绪论 1.1

 项目研究背景 Android 是一款基于 Linux 的自由及开放源代码的操作系统,主要使用于智能手机和平板电脑等移动设备。谷歌公司和开放手机联盟合作开发了 Android,这个联盟是由全球顶尖的手机制造商、软件开发商、电信运营商和芯片制造商总共 65 家一同创组。Google 公司在 2007 年 11 月 5 日第一次发表了 Android 操作系统,Android 本意指“机器人”,最初由 Andy Rubin 开发设计的。谷歌于 2005 年 8 月收购注资,开发运营 Android操作系统。在 Android 发布不久后,就大受欢迎,它的市场增长速度是惊人的,总的来说导致 Android 系统风靡的原因主要靠它的各方面的优势。

 Android 是一个真正意义上的开放性移动设备综合平台。它包括操作系统、用户界面和应用程序-移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌与开放手机联盟合作开发了 Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达和 T-Mobile 在内的 30 多家技术和无线应用的领军企业组成。通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,来建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统,这样应用之间的通用性和互联性将在最大程度上得到保持。

 Android 在国内社区十分红火,这些社区为 Android 在中国的普及做了很好的推广作用,同时也为 Android 相关产品的消费提供了市场。国内厂商和运营商也纷纷加入了Android 阵营,包括中国移动,中国联通,华为通讯,联想等大企业。

 手机定位是指通过无线终端和无线网络的配合,确定移动用户的实际位置信息,经纬度坐标数据,包括三维数据,通过短消息服务、多媒体消息、语音发给用户或以此为基础提供某种增值服务。

 手机定位类型:根据定位方法和定位过程的不同,手机定位主要有以下几种类型, 起源蜂窝定位 到达时间定位 到达角度定位 到达时间差定位 手机定位基本原理:手机定位是利用 GSM 移动通信网的蜂窝技术来实现位置信息的查询,GSM 无线通信网是由许多像蜜蜂蜂窝一样的小区构建而成的,每个小区都有自己的编号,通过手机所在小区的识别号就可以知道手机所在区域。

 手机定位技术种类:GSM手机定位方式通常可分为基于网络方式和基于终端方式两种。从技术上可分为到达时间、增强测量时间差和 GPS 辅助 3 种方式。

 利用手机平台和 web 后台结合,变可达到事半功倍的效果,使用户节省时间、方便操作,增加效率。

 武汉科技大学本科生毕业论文

  优选课件 1.2

 项目研究意义 随着我国经济的高速发展,人们的生活节奏越来越快,活动的范围越来越大,人员和物品的流动率越来越高。实时了解远程目标的情况,已经成为人们的一项重要的管理或生活需求。利用远程定位技术,可以使人们获取远程目标实时反馈的定位信息,人们也能很方便地利用这些定位信息对管理或生活进行规划调整 近些年来,随着城镇化和现代化进程的推进,城市人口呈跳跃式增长,在城市中出现了大量的车辆。国内很多城市的道路都处于不断的规划调整过程中,这也使得交通状况越复杂,因此对车辆管理已经成为一个难题。在当今这个信息时代,交通运输对信息化的要求逐渐强烈起来,针对车辆的信息化服务越来越普及。车辆管理者希望对车辆的位置所了解,从而进行调度和管理。

 在物流行业,利用远程定位可以使物流企业管理这更有效地监控货物的运输状况,并根据具体的交通状况对运输进行调度,极大程度地避免了货物遗失、被盗或寄送错误等情况,客户也可以利用远程定位查询货物的配送状况。在驾校培训和出租车行业中,利用远程定位 可以使管理者了解车辆的位置状况。在公交公司的车辆上安装 GPS 定位器,公交公司的管理者就可以实时的了解公交车辆的位置状况,从而对公交系统的运行进行调度,候车的乘客可以根据公交车辆的位置合理安排候车时间。此外,远程定位还可以用于儿童和老人的行踪掌控、公路巡检、贵重货物跟踪、个人财务跟踪、宠物跟踪、野生动物追踪、汽车防盗、银行运钞车监管和公务车辆管理等。

 1.3

 论文的组织结构 本论文分五个章节,具体章节安排如下:

  第 1 章 绪论,主要介绍项目研究的背景和意义,针对 Android 的远程定位的背景分析以及论述了该应用开发的实际意义。

  第 2 章 需求分析,分析此项目究竟要做什么,要完成哪些功能,讨论在实际使用中需要注意的问题。

 第 3 章 系统分析与设计,阐述了此项目的层次架构,各功能模块之间的调用关系,具体分析功能的可行性和如何实现的问题。给出系统的流程图和系统功能模块图,明确设计了系统各个功能的实现方法。

 第 4 章 系统实现,详细讲述了按照系统设计的功能,实现系统的各个模块功能的过程,编写了系统的所涉及到的大部分界面和最核心的代码。

 第 5 章 总结与展望,对本项目进行一个全面的总结,回顾整个项目的完成过程,并展望该项目的后期发展

 武汉科技大学本科生毕业论文

  优选课件 2

 需求分析 2.1

 软件目标 本系统是 GPS 远程定位及运行轨迹管理系统系统系统。可以方便用户平时对 GPS远程定位及运行轨迹管理系统系统的统计。本系统应达到以下目标:

 (1)软件采用人机交互的方式,界面美观友好,操作灵活、方便、富有个性化。

 (2)能够对 GPS 远程定位及运行轨迹管理系统系统的操作。

 (3)系统应最大限度地实现易维护性和易操作性。

 2.2

 功能分析 基于安卓的远程定位系统作为第三方应用程序开发,对界面美观程度,操作的友好性,良好的用户体验,功能是否明确,安全性等方面有着较高的要求。为此,软件设计的原则考虑了以下四个方面:

 1. 易操作性:此软件的操作设计要直白简单,让用户能够轻松的熟练掌握改软件的操作,快速的掌握该软件的使用。

 2. 友好性:软件设计界面美观简洁,没有太多冗余的元素来充斥界面;软件对开启和关闭远程定位服务操作给予用户友好的提示信息,让用户感觉操作便捷舒适。

 3. 实用性:软件完成了基本定位功能,包扩轨迹回放,能像百度地图等其它定位程序一样正常投入使用,具有实际使用价值。

 4. 安全性:远程定位的设计,着重考虑了安全性,通过屏蔽 HOME 键、BACK 键及状态栏下拉,防止恶意程序越过锁屏程序直接进入手机主页,保证了系统的安全性。

 2.3

 开发工具 2.3.1

 Eclipse Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。Eclipse 只是一个框架和一组服务,用于通过插件组件构建开发环境。Eclipse 附带了一个标准的插件集,包括 Java 开发工具。Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境,2001 年 11 月贡献给开源社区,现在它由非营利软件供应商联盟 Eclipse 基金会(Eclipse Foundation)管理,在 2015 年 6 月项目发布代号为 Mars 的 4.5 版。

 Eclipse 主要由 Eclipse 项目、Eclipse 工具项目和 Eclipse 技术项目三个项目组成,具体包括四个部分组成——Eclipse Platform、JDT、CDT 和 PDE.JDT 支持 Java 开发、CDT支持 C 开发、PDE 用来支持插件开发,Eclipse Platform 则是一个开放的可扩展 IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。Eclipse Platform 允许工具建造者独立开发与他人工具无缝集成的工具。

 武汉科技大学本科生毕业论文

  优选课件 Eclipse SDK(软件开发者包)是 Eclipse Platform、JDT 和 PDE 所生产的组件合并,它们可以一次下载。这些部分在一起提供了一个具有丰富特性的开发环境,允许开发者有效地建造可以无缝集成到 Eclipse Platform 中的工具。Eclipse SDK 由 Eclipse 项目生产的工具和来自其它开放源代码的第三方软件组合而成。Eclipse 项目生产的软件以 CPL发布,第三方组件有各自自身的许可协议。

 2.3.2

 Android ADT ADT 是英文 Android Development Tools 的简称,即 Android 开发工具包。ADT 是Eclipse 中构建 Android 应用程序 IDE 插件,ADT 扩展了 Eclipse 的功能,让您快速建立新的 Android 项目、创建应用程序的用户界面。ADT 可以帮助 Eclipse 找到 Android sdk,再加上 Android 框架的 API 组件调试使用 Android SDK 工具,以便 APK 分发给应用程序。ADT 大大减轻 Android 应用程序的开发工作量,工具集成 XML 编辑器,将给开发人员一个令人难以置信的开发 Android 应用环境。

 2.3.3

 Android SDK Android SDK 全名为 Android software development kit,即 Android 软件开发工具包,被软件开发工程师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。其工具包中提供了 Android 开发的各类文档资料以及 Android 提供的库文件。Android SDK 使用 Java 语言,在官方网站下载后不用安装直接进行解压,然后解压后的压缩包放到指定位置。

 2.3.4

 Genymotion Genymotion 是一套完整的工具,提供了 Android 虚拟环境,能够支持 Windows、iOS、Linux 等操作系统。Genymotion 不是普通的模拟器,而是虚拟机,是目前用户体验最好,响应速度最快的虚拟设备。

 2.4

 数据存储 SQLite,是一款轻型的数据库,是遵守 ACID 的关系型数据库管理系统,它包含在一个相对小的 C 库中。它是 D.RichardHipp 建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百 K 的内存就够了。

 SQLite 第一个 Alpha 版本诞生于 2000 年 5 月。

 至 2015 年已经有 15 个年头,SQLite也迎来了一个版本 SQLite 3 已经发布。不像常见的客户-服务器范例,SQLite 引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接 API 调用。这在消耗总量、延迟时间和整体简单性上有积极的作用。整个数据库(定义、表、索引和数据本身)都在宿主主机上存储在一个单一的

 武汉科技大学本科生毕业论文

  优选课件 文件中。它的简单的设计是通过在开始一个事务的时候锁定整个数据文件而完成的。

 MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 旗下公司。MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL是最好的 RDBMS,关系数据库管理系统应用软件之一。

 MySQL 关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

 2.5

 运行环境 本程序的运行环境:

 设备:PC 机一台(CPU Intel 奔腾 2.9GHz;内存 8GB;硬盘 100GB),Android 手机 软件:Windows 7 或 Windows XP 操作系统,Android 手机模拟器 2.6

 本章小结 本章主要对项目进行需求分析,介绍了项目开发所需的开发工具 Eclipseh、Android SDK、Android ADT、Genymotion、安卓中数据存储 SQLite、运行环境以及安卓远程定位项目所需实现的功能。

 武汉科技大学本科生毕业论文

  优选课件 3

 系统分析与设计 3.1

 可行性分析 随着各大移动终端生产商大力开发和生产基于安卓上的移动智能手机设备, Android 飞速的得到了很多业界和使用者的认可,并很快成为整个手机这个产业的上的热点话题,在 Android 这个强力的平台的成为了大家的焦点。

 而且 这个 Android 是一个 open 的系统,不管是企业还是个人都可以参与来表达自己的创意和想法。Google 发起了围绕 Android 的组织——开放手机联盟, 其英文全称为 “Open Handset Alliance”。

 它采用了软件堆层(software stack,又名以软件叠层)

 的架构,主要分为三部分。底层 Linux 内核只提供基本功能;其他的应用软件则 由各公司自行开发,部分程序以 Java 编写。本系统采用 Android 框架,可以在 eclipse 中安装 Android 开发插件,使用 Android模拟器也可以使用任意 Android 终端。模拟器和真正的 Android 手机没有太大区别,人们对手机操作早已熟悉。

 安卓远程定位系统运行在普通的 Android 系统的手机上,对用户来说,操作简单明了。所有的操作通过界面上的提示,用户就能直接使用。因此,在操作上,是十分可行的,易于使用户接受使用。由于安卓远程定位系统是作为第三方软件开发的,未对系统程序造成攻击,也未抄袭他人劳动成果,程序本身也是按照正常的开发流程,所以不存在任何法律问题,在法律上是完全可行的。

 综合以上该系统具有很高的开发可行性,无论是从技术上经济上还是操作上。

 3.2

 系统设计原理 3.2.1

 Android 系统结构 在开发 Android 操作系统上的应用程序过程中,许多问题需要先去理解才能想办法解决,例如:程序的运行顺序,这时候可能是由于对 Android 系统结构不太了解,不清楚程序运行的流程,不了解 Android 的内部运行的机制,所以学习 Android 系统结构是非常有必要的。

 Android 的系统架构采用了分层架构的思想,从上到下共包括四层,分别是应用程序层、应用框架层、系统库和 Android 运行时和 Linux 内核。Android 的系统架构采用分层架构的思想,架构清晰,层次分明,各层之间协同工作。

 Android 的系统层次架构图,如图 3.1 所示。

 武汉科技大学本科生毕业论文

  优选课件

 图 3. 1

 安卓系统层次架构

  在 Android 操作系统的整个组织架构图中分了四个层次,其中第三层包含两大块,下面分别对其分析:

 第一层:Application,应用程序层。

 应用程序层 Application 是程序员使用 Android SDK 开发出来的软件。在本层,Android 配备了最为核心和精简的应用程序设置,例如电子邮件客户端、通讯录、地图、浏览器等,这些程序均用 Java 语言编写。这里的应用程序不同于手机操作系统内固化在系统内部的系统软件,开发人员可以用其他应用程序替换这些应用程序,使其更加灵活和个性化。

 第二层:Application Framework,应用程序框架层。

 通过开放平台,Android 为开发人员提供了丰富创新的应用。开发人员可以完全访问同一框架应用程序接口,它们会被应用的内核所调用。这种应用程序结构设计的目的是使组件的重用变得简单,这样的机制使得用户可以自己编写组件予以替代。

 第三层:Libraries、Android Runtime,库文件、Android 运行时。

 Android 包括一套 C/C++的库文件,它们会被 Android 系统的各种组件所调用,这些所实现的功能通过 Android 的应用框架可以被开发者所使用。

 武汉科技大学本科生毕业论文

  优选课件 Android Runtime,Android 运行环境。Android 包括一组核心库,它们可以提供大多数可以在 Java 核心库中可以用的函数。每个 Android 应用都运行在它自己的进程中,凭借自己的 Dalvik 虚拟机进行实例化。Android Runtime 机制和 Dalvik 不同,在 Dalvik 下,应用每次运行时,利用即时编译器将字节码装换成机器码,这样严重的降低了系统运行的效率;应用只会在第一次安装时,就将字节码预编译成机器码。可以成为真正的本地应用。在 Android Runtime 环境下,。由于 Dalvik 是被写入的,因而一个设备可以高效地打开多个虚拟机,Dalvik 虚拟机执行在.dex 格式的文件中,这种文件已经被最小内存占用优化过。虚拟机是基于寄存器的,并且用 Java 编译器执行类文件,这种类文件已经被虚拟机转化工具转化为.dex 的格式了,Dalvik 虚拟机进行线程的操作和硬件级的内存管理是通过调用 Linux 的内核来实现的。

 第四层:Linux Kernel,Linux 内核。

 Android 操作系统中类似于安全机制,内存管理,进程调度管理,网络堆栈,硬件驱动等模块都是基于 Linux version2.6 而开发的。Linux 内核中的“内核”指的是一个系统软件,这个系统软件的功能是控制磁盘及文件系统、提供硬件抽象层、处理多任务等。Android 操作系统上的 Linux 内核是在硬件层和其它软件堆栈层之间扮演着抽象层地角色。

 3.2.2

 Broadcast 工作原理 Broadcast 译为 Android 中的广播机制,在 Android 中,某些操作完成以后,会发送系统广播,然后触发相应的操作。Android 远程定位系统设计中需要监听屏幕开启广播和开机启动广播,由于有序广播的优先级问题,类似于屏幕开启和关闭广播在静态注册时,系统的优先级大于普通的应用,并且系统会阻止广播的向下传播,所以这类广播必须在配置文件中静态注册。静态注册是当程序关闭后,如果有广播发过来,还能启动程序动态注册的生命周期跟程序的生命周期是一样的,程序关闭后动态注册的广播是不能在接收到广播的,而在开机启动之前,程序肯定是关闭的,所以开机启动广播只能使用静态注册方式。

 Android 广播机制的三要素:

 1. 广播(Broadcast):用于发送广播,是一种广泛应用的在应用间传输信息的机制,一般分为有序广播(Ordered Broadcasts)和普通广播(Normal Broadcasts)。

  2. 广播接收器(BroadcastReceiver):用于接收广播,是对发出来的 Broadcast 进行过滤接受并响应的组件。

 3. 意图内容(Intent):用于保存广播相关信息的媒介,实现组件之间的通信。

 武汉科技大学本科生毕业论文

  优选课件 3.3 系统组成模块 系统模块在程序设计中,为完成某一功能所需的一段程序或子程序;或指能由编译程序、装配程序等处理的独立程序单位;或指大型软件系统的一部分。模块,又称构件,是能够单独命名并独立地完成一定功能的程序语句的集合。它具有两个基本的特征:外部特征和内部特征。外部特征是指模块跟外部环境联系的接口和模块的功能;内部特征是指模块的内部环境具有的特点。

 为了将安卓远程定位项目的编码工作明确化,项目按照功能划分了七个模块。这六个模块分别是:客户端登录、客户端注册、客户端主界面、服务器端登录、服务器端用户管理、服务器端远程定位、服务器端轨迹回放。其中客户端主界面模块包含定位和轨迹回放功能,以及更改刷新时间。

 根据每个模块的功能进行代码的编写工作,按照需求自顶向下分析实现每一个功能模块所要实现的功能,每一模块只留出和外部之间传递消息的接口。采用模块化的管理方式可以使软件结构更加清晰,方便之后的维护管理,容易理解和使用。每个模块完成以后,根据总体框架将各个模块结合起来,保证功能的完善性。

 对安卓远程定位项目,按照系统所需完成功能,我们将其划分为以下七个模块,如图 3.2 所示。

  图 3.2

 系统功能模块

 武汉科技大学本科生毕业论文

  优选课件 3.4

 系统流程图

 System Flowchart 又叫系统里的流程图,是在计算机事务处理应用进行系统分析时常用的一种描述方法(另一个是数据流图),它描述了计算机事务处理中从数据输入开始到获得输出为止,各个处理工序的逻辑过程。制作系统流程图的过程是系统分析员全面了解系统业务处理概况的过程,它是系统分析员做进一步分析的依据。它的最根本的思想就是用图形和符号以黑盒子方式去描绘该系统里面的所有部件,然后表达出相应的信息在每个部件所流动的状况,GPS 远程定位及运行轨迹管理系统的流程图如图 3.3 所示。

  图 3.3 系统流程图 3.5

 系统用列图 用例图定义:由参与者(Actor)、用例(Use Case)以及它们一起的关系构成的系统功能的所有的静态视图一起称为系统用例图。

 下面为系统用例图。

 武汉科技大学本科生毕业论文

  优选课件

  图 3.4 用户用例图

  图 3.5 管理员用例图

 3.6

 本章小结 本章对安卓远程定位做了系统的分析,介绍了系统设计原理、各个功能模块、设计模块的实现方法,绘制了系统的流程图,为安卓远程定位系统的实现提供了明确的设计流程和方法。

 武汉科技大学本科生毕业论文

  优选课件 4

 系统编码实现 4.1

 安卓的工程 4.1.1

 安卓工程程序结构 Android 工程基本结构目录包括以下几个:

 src 目录:该目录中存放的是该项目的源代码,本系统把源码分成五个包。form 包功能是客服端和服务器端进行数据传输,gap 包是 MainActivity 的界面和手机地图以及定位功能,plugs 包功能是客户端链接到服务器,tool 包获取正在使用数据库的路径。util包字节输入和输出工具。

 gen 目录:该目录下的文件全部都是 ADT 自动生成的,一般并不需要去修改,实际上该目录下只定义了一个 R.java 文件,该文件相当于项目的字典,为项目中用户界面、字符串、图片等资源都会在该类中创建其惟一的 ID,当项目中使用这些资源时,会通过该 ID 得到资源的引用。

 Res 目录:该目录用于存放应用程序中经常使用的资源文件,其中包括图片、声音、布局文件以及参数描述文件等。

 assets 目录:资源路径,不会在 R 文件注册。该目录用于存放项目相关的资源文件,例如文本文件等,在程序中可以使用 “getResources.getAssets().open("text.txt")”得到资源文件的输入流 InputStream 对象。

 bin 目录:二进制文件,包括 class、资源文件、dex、apk 等。

 res 目录:该目录用于存放应用程序中经常使用的资源文件,其中包括图片、声音、布局文件以及参数描述文件等,远程定位程序结构如图 4.1 所示。

 图 4.1 远程定位程序图

 武汉科技大学本科生毕业论文

  优选课件 AndroidMainfes.xml 是四大组件的驱动配置文件,有它的存在,Android 程序的四大组件才可以正常的跳转。Android 资源的类型和布局如表 4.1 所示 表 4.1 资源的类型和布局

 4.1.2

 系统权限 Android 系统的任何一个程序启动都需要 AndroidManifest.xml 来启动程序,任何一个新建的工程目录都会自动生成一个 AndroidManifest.xml 文件,此配置文件是整个程序能够正常运行的核心,它里面包含了 Android SDK 的版本,程序运行的默认 Activity,当程序中的任何一个组件触发事件后,系统都会自动的去 AndroidManifest.xml 中寻找标识来作出相应的操作。

 Android 系统有一个编码的规定,支持的编码是"utf-8",当程序中出现乱码是,我们须将其编码格式转化为"utf-8".在 AndroidManifest.xml 中会在第一行声明一句:<?xml version="1.0" encoding="utf-8"?>。它是该系统支持的版本和编码。

 xmlns(XML namespace)是一个命名空间,它就像一条河的源头一样能让我们找到系统架构,每一个配置文件必须有这个 xmlns,否则程序中的所使用的所有资源将无法找到。

 AndroidManifest.xml 配置文件的根元素,必须包含一个元素并且指定 xlmns:android和 package 属性。xlmns:android 指定了 Android 的命名空间,默认情况下是“http://schemas.android.com/apk/res/android”;而 package 是标准的应用包名,也是一个应用进程的默认名称,为了避免命名空间的冲突,一般会以应用的域名来作为包名。当然还有一些其他常用的属性需要注意一下,比如 android:versionCode 是给设备程序识别版本用的,必须是一个整数值代表 app 更新过多少次;而 android:versionName 则是给用户查看版本用的,需要具备一定的可读性,比如“1.0.0”这样的。

 武汉科技大学本科生毕业论文

  优选课件 为了保证 Android 应用的安全性,应用框架制定了比较严格的权限系统,一个应用必须声明了正确的权限才可以使用相应的功能,例如我们需要让应用能够访问网络就需要配置“android.permission.INTERNET”,而如果要使用设备的相机功能,则需要设置“android.permission.CAMERA”等。基于安卓的远程定位系统中所需要的一些权限如下表。

 表 4.2 系统权限表 权限 作用 ACCESS_WIFI_STATE 允许程序访问 Wi-Fi 网络状态信息 ACCESS_FINE_LOCATION 通过 GPS 芯片接收卫星的定位信息

 ACCESS_LOCATION_EXTRA_COMMANDS 允许程序访问额外的定位提供者指令 ACCESS_MOCK_LOCATION 获取模拟定位信息 CHANGE_WIFI_STATE 允许程序改变 Wi-Fi 连接状态 CHANGE_CONFIGURATION 允许当前应用改变配置 INTERNET 访问网络连接 READ_SYNC_STATS 允许程序读取同步状态

 4.1.3 数据库技术 本系统采用 mysql 数据库,下面为各个实现的表。

 表 4.3 经纬度 t_info 表 序号 字段名称 字段类型 大小 允许为空 最大长度 备注 1 id Int 4 自增编号 10

  2 imei VarChar 255 是 255

  3 phoneNm Text 16 是 255

  4 jingdu VarChar 50 是 255

  5 weidu VarChar 50 是 255

  6 img VarChar 50 是 255

  7 username VarChar 8 是 23

  表 4.4 用户信息 t_user 表

 武汉科技大学本科生毕业论文

  优选课件 序号 字段名称 字段类型 大小 允许为空 最大长度 备注 1 ID Int 4 自增编号 10

  2 username VarChar 50 是 255

  3 passwd VarChar 50 是 255

  4 roletype VarChar 50 是 255

  5 roletypecn DateTime 8 是 23

  6 tel VarChar 50 是 255

  4.2

 客户端模块 4.2.1

 登录模块 登录界面使用<div>元素布局分为三个区域,分别是标题栏、表单区、button 按钮区。标题“请登录”使用<h1>最大标题。中间使用的是表单<form>,表单中有用户名和密码使用的是 label 标签,其对应的输入框的类型分别是 text 和 password,其值都先设为空。管理员和普通用户用的是 select 样式默认选中管理员。第三块区域使用的是两个 button按钮,分别是登录和注册并且添加 onclick 事件,html 界面设计如图 4.2,实际效果如图4.3。

  图 4.2 登录模块设计图

  图 4.3 登录实际效果图

 武汉科技大学本科生毕业论文

  优选课件 4.2.2

 注册模块 注册界面使用<div>元素布局也分为三个区域,分别是标题栏、表单区、button 按钮区。标题“用户注册”使用<h1>最大标题。中间使用的是表单<form>,表单中有用户名、密码还有电话使用的是 label 标签,用户名和密码输入框的类型分别是 text 和 password,电话的输入框类型是 number,其值都先设为空。第三块区域使用了一个 button 按钮,并且添加 onclick 事件,html 界面设计如图 4.4,实际效果如图 4.5。

 图 4.4 注册模块设计

 图 4.5 注册实际效果图

 武汉科技大学本科生毕业论文

  优选课件 4.2.3

 主界面模块 主界面分为标题栏和<div>元素区,标题"定位"使用最大标题<h1>。使用属性data-iconpos="left" 把"选项 "嵌入在标题栏的左边,并且自定义一个超链接 <a href="#popupMenu">。同样的把"我的位置"嵌入在标题栏右边。div 中使用有序列表<ul>每个列表项始于 <li> 标签并且用 listview 设置样式,把"查询轨迹"、"我的轨迹"、"5 秒刷新"、"10 秒刷新"、"30 秒刷新"、"退出"分别加入标签中,并把每一个都自定义一个标签,主界面设计如图 4.6,实际效果如图 4.8。

 图 4.6

 主界面模块图

  图 4.7

 主界面

 武汉科技大学本科生毕业论文

  优选课件 4.3

 服务器模块 4.3.1

 登录模块 在进入后台管理之前先要启动电脑中的 mysql 数据库和 XMAPP 中的 apache 服务器,后台管理只能管理员登录,用户名和密码正确就会提示登录成功,非管理员登录会提示用户或密码不正确用户需要重新输入再进行登录。登录成功会跳到用户管理界面,点击用户列表会显示所有的用户信息。效果如下图。

 图 4.8 后台登录图

 图 4.9 用户列表图

 武汉科技大学本科生毕业论文

  优选课件 4.3.2

 用户管理模块 管理员可以对用户进行增删改查。增加需要输入用户名、电话、密码还要设置权限,点击保存成功后会提示操作成功。删除之前先选中需要删除的用户然后在点击删除,系统会提示是否确认删除点击确定进行删除。修改会弹出用户的所有信息,进行修改后点击保存即可。查询输入需要查询的用户名点击查询,在用户列表里只会显示查询的用户。

 图 4.10 添加用户图 图 4.11 删除用户图

 武汉科技大学本科生毕业论文

  优选课件

 图 4.12 修改用户图 图 4.13 查询用户图

 4.3.3

 远程定位模块 用户登录客户端后系统会记录用户的位置信息,客户端系统把数据传输到后台服务器把数据添加到数据库中,在位置信息中管理员可以查看用户的经纬度信息,地图上可以显示用户的所在位置,定位效果如图 4.14 所示。

 4.3.4

 轨迹回放模块 客户端每个一段时间就会在地图上记录一次用户的位置信息,在地图上打出不同的点把这些点连接起来就形成轨迹,定位刷新时间越短轨迹越精确。管理员在位置地图信息中输出需要查询的用户,点击查询轨迹即可查看用户的轨迹,轨迹回放效果如图 4.15所示。

 武汉科技大学本科生毕业论文

  优选课件

 图 4.14 定位图

 图 4.15 轨迹回放图 4.4

 本章小结 本章主要介绍了安卓远程定位系统具体编码实现,将项目开发的环境配置,数据库的实现,手机端界面,后台管理系统都进行了详细的论述及代码实现,并展示了项目各个功能模块的效果图。

 武汉科技大学本科生毕业论文

  优选课件 5

 总结 在这几个个月的时间里,我们已基本完成了毕业设计。在编程的过程中,我们学到了很多知识,不仅是编程开发方面的专业技能,更锻炼了自己的毅力和耐性。

 经过一段时间的设计和开发,安卓远程定位系统基本开发完毕,系统功能基本符合远程定位的需求,由于时间比较紧迫,该系统还有些不足之处,比如有些界面做的不够漂亮,不够人性化,有的操作有点繁琐,这些都是后续工作可以更好完善的。因为对远程定位调研不够精确,所以有些问题没有考虑到,导致有些实现的功能不够周全,还需要进一步的完善。对于一些复杂的代码还需要进一步的修改,使之更加简捷易懂。

  在开发安卓远程定位系统的过程中,出现了很多问题,如当调试时,出现,程序加载不进去,以前我们只知道单一的调试方法,即点击调试按钮,不知道代码出错信息在哪里,很难调试成功,后来经过到网上搜索信息,以及请教老师和同学,渐渐的懂得了如何调试程序,这需要在相应的函数添加断点,按 F10,分段调试,一点一点调试,就能可找出错误出现在哪个地方,然后再不断的调试。

  在创建数据库时,会出现,主键和外键的先后创建问题,以及当创建了表和字段的主外键和关系后,需要修改数据库时,会出现主外键的问题,这时就要考虑修改数据表的先后问题了。在创建登录界面的功能时,刚开始理解的有点错误,导致后来登录界面没有更实际的功能,经过一段时间的修改,终于修改成功了,编程并不是最难的,修改程序,调试程序往往是最繁琐,最耗时间的,但是通常,只有耐心的,一点一点的调试,才能发现系统的不足,才能让系统的功能更好更全面的实现。

  在做毕业设计的过程中,经常会遇到问题,有些问题自己解决不了,很是苦恼,就向同学和老师请教,他们总会很耐心的给以帮助。老师在检查程序时,总是耐心地指出程序中明显的不足,使我明白怎样去改正,完善系统的功能。老师在给我检查毕业论文时,批注写的很仔细,写明了需要修改的地方,和仔细的指导,使我更加方便地对论文进行改正。老师那温和的态度和深厚的学术修养使我终身难忘,真的很感谢老师耐心的指导和同学热心的帮助。

 以上是我在本次毕业设计中的过程与体会,当然我知道我作的还是不够的,在以后的日子中,我还要再提高我的实际操作能力。

 武汉科技大学本科生毕业论文

  优选课件 参考文献

 [1] 浩明. 基于安卓系统的...

推荐访问:演讲稿 定位系统

版权所有:天海范文网 2010-2024 未经授权禁止复制或建立镜像[天海范文网]所有资源完全免费共享

Powered by 天海范文网 © All Rights Reserved.。鲁ICP备10209932号