基于Android的在线移动电子导航系统的研究与实现(论文+源码)_kaic

简介: 基于Android的在线移动电子导航系统的研究与实现(论文+源码)_kaic

摘 要

随着智能手机在人们的生活中的日益普及,手机软件的多样化日渐成为了一个 重要的课题。为人们的日常生活进行导航的软件也逐渐占据了越来越重要的地位, 智能手机平台下电子导航软件的开发成为了越来越多的厂家关注的焦点。本文在当 前各类多种多样的手机平台中,经过横纵向的比较,最终选择了谷歌的Android这 个开源的平台。本文利用了谷歌提供的地图接口和地理信息技术,采用了 Android 应用框架架构和SQLite数据库,实现了一个基于Android平台开发的电子移动导航 系统。此系统应用于拥有Android操作系统的手机之上,提供了 GPS定位,搜索地 点,导航路线,线路追踪等功能。因此,系统的研究和开发具有重要实际意义。

本文研究了 Android平台的框架和应用开发等相关技术,介绍了谷歌的开 放接口 Google Maps API和地理信息系统,并分析了国内外手机导航系统研究 的现状。在经过系统的设计与实现之后,得出Android平台下基于Google Maps 的移动导航系统的应用是貝有可行性的,并且是1E常有而景的。

本文完成了在线移动电子导航系统的设计与实现。首先,本文对移动电子 导航系统的功能需求和业务流程进行了分析,完成了系统的总体设计和模块划 分,并设计了数据库表。其次,以路线导航功能等为例,结合Google MapsAPL 给出了系统部分主要功能的具体设计和实现过程。最后给出了系统一些功能的 截图。

关键词:移动导航系统;Android; Google Maps API; GPS

Abstract

With the growing popularity of the smart phone, diversification of mobile phone software is becoming an important issue. The navigation software for daily life also gradually has played an increasingly important role* The development of navigation software in the smart phone platform becomes the focus of attention of more and more manufacturers. Based on the variety of all kinds of mobile phone platform, this paper chooses the open source Android platform finally after a complicated comparison. This paper uses the interface provided by Google and geographic information technology andSQLite database to complete an electronic mobile navigation system based on Android platform. This system used in mobile phones with the Android operating system, provides GPS positioning, search locations, navigation routes. Therefore, the system of research and development has an important practical significance.

This paper researches the framework of the Android platform and application development and other related technologies, introduces Google Maps API and geographic information systems, and analyzes the research status of domestic and foreign mobile phone navigation system. At last this paper gets the conclusion that the mobile navigation system applications based on Google Maps in the Android platform is feasible, and is very promising.

This paper completed the design and realization of mobile electronic navigation system. First, this paper analyzed the functional requirements of mobile electronic navigation systems and business processes, completed the overall system design and module division and designed database tables. Then, this paper takes the route navigation functions for example, combines it with Google Maps API, and gives the system some key features of the design and implementation process. Finally, the screenshots of some of the important features of the system are given.

Keywords: Mobile navigation system, Android, Google Maps API, GPS

目录

摘 要

Abstract

目录

第1章绪论

1.1研究背景及意义

1.2国内外研究现状分析

1.3论文的主要工作

1.4论文的结构安排

第2章相关技术研究

2.1Android平台简介

2.1.1Android 概述

2.1.2Android平台的架构

2.1.3Android平台的优势

2.1.4Android平台的本机库

2.2Android应用主要组件

2.3Android 应用开发的环境搭建

2.4地理信息系统和Google Maps简介

2.4.1地理信息系统简介

2.4.2 Google Maps 简介

2.5本章小结

第3章系统需求分析和总体设计

3.1系统设计日标和原则

3.1.1系统设计的冃标

3.1.2系统设计的原则

3.2需求分析

3.3系统总体设计

3.4系统功能模块设计

3.4.1系统功能模块设计

3.4.2核心功能模块设计

3.5系统界面设计

3.5.1Android 系统布局设计

3.5.2Android 系统布局工具

3.5.3本系统界面UI设计

3.5 本章小结

第4章 系统详细设计与实现

4.1系统开发工具相关介绍

4.2数据库设计

4.2.1数据存储方式

4.2.2数据库设计原则

4.2.3系统数据表及关键表结构

4.3系统实现前的准备

4.4系统基木配置文件

4.5系统主要功能实现

4.5.1 GPS定位的实现

4.5.2导航功能的实现

4.5.3线路追踪功能的实现

4.5.4地点搜索均能的实现

4.6系统主要界面实现

4.6.1系统主界面

4.6.2搜索位置界面

4.6.3导航路线界面

4.6.4路线追踪界面

4.7本章小结

第5章总结与展望

5.1总结

5.2展望

参考文献

致 谢

第1章绪论

1.1研究背景及意义

Android是Google于2007年11月05日宣布的基于Linux平台的开源手机操作 系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成。它釆用软件 堆层(Software Stack,又名软件叠层)的架构,主要分为三部分⑴。底层以Linux 内核工作为基础,由C语言开发,只提供基本功能;中间层包括函数库Library和 虚 拟机Virtual Machine,由C++开发。最上层是各种应用软件,包括通话程序,短信 程序等,应用软件则由各公司自行开发,以Java作为编写程序的一部分。不存在任 何以往阻碍移动产业创新的专有权障碍,号称是首个为移动终端打造的真正开放和 完整的移动软件。

Google通过与软、硬件开发商、设备制造商、电信运营商等其他有关各方结 成深层次的合作伙伴关系,希望借助建立标准化、开放式的移动电话软件平台,在 移动产业内形成一个开放式的生态系统冯。Android作为Google企业战略的重要 组成部分,将进一步推进“随时随地为每个人提供信息”这一企业目标的实现。全球 为数众多的移动电话用户正在使用各种基于Android的电话。谷歌的目标是让(移 动通讯)不依赖于设备甚至平台。出于这个目的,Android将补充,而不会替代谷 歌长期以来奉行的移动发展战略:通过与全球各地的手机制造商和移动运营商结成 合作伙伴,开发既有用又有吸引力的移动服务,并推广这些产品。

近些年来,随着移动技术的发展,GPS卫星定位技术的普及,其使用门槛逐渐 的降低,各种形式的GPS卫星定位产品已经走入低端市场,走入大众的生活。将手 机移动与GPS卫星定位相结合已成为一种趋势,它集GPS卫星定位的便捷与手机 的低成本等诸多优点于一身,受到普通用户人群,尤其是年轻人的追捧,有着不错 的市场前景。Google推出的Android系统逐渐的普及起来,Android是一种开源的 手机系统,这使得它的开发成本更低,在智能手机市场占有越来越多的份额。此外, Android作为一种新型的智能手机操作系统,其应用覆盖程度并不饱和,应用市场 也有很大的增长空间。所以,基于Android的导航应用系统拥有较多的用户群和不 错的市场空间。

本文探讨如何在Android平台上利用谷歌提供的Google MapsAPL实现在线地 图查询,起点到终点的路线导航,多种路线及方式的查询,具体也点查询,语音提 示导航,从而实现了移动导航,为人们外出旅行带来方便。

1.2国内外研究现状分析

随着技术的快速发展,电子导航系统已经越来越深入到人们的日常生活中,国 内外也有许多十分优秀的基于android平台的系统。

国内方面,老虎地图和高德地图是两家做得非常不错的电子地图公司,主要致 力于掌上电子导航的实现。另外百度,腾讯,搜狗等公司旗下分别有自己的手机地 图导航系统服务,这些公司的系统多基于在线方式的卫星或者基站定位,查找等方 式为客户导航。而地图方面有的采取的是在线的方式查看地图,有的则是有着自己 绘制的地图库。

国外的手机地图导航定位研究相对于国内起步更早,技术更成熟,主要有谷歌 地图服务,Yahoo! Local地图及微软Virtual Earth服务。

2005年4月,Google正式推出Google Maps,它以矢量地图、卫星地图、混合 地图等3种服务模式提供地图搜索等功能的地图服务,让地图服务模式进入了一个 新的时代。谷歌为了使Google地图服务的应用更加广泛,2005年6月29日,Google 为全世界开发者提供了便于二次开发的开放式地图服务应用程序接口 Google Maps APL让全世界对Google Maps有兴趣的编程者可以独立开发Google Maps服务团。 2006年,Google再次发布了基于移动平台的地图系统,手机平台以无线的方式直 接接受地图数据,用户只需要上网就能随时随地获得地图服务。Google地图服务以 其极早的进入导航系统领域而使其在此占据了先机。

在Google进入地图服务领域不久,Yahoo!公司也看到了这个领域的商机,打 算抓住这个机会与Google ―•分高下。与Google公司的简洁风格不同,Yahoo 1采 取他们自己的华丽风格,整个系统都是由Flash实现,尽管系统如此庞大而又华丽, 但是操作的流畅程度与良好的用户体验却丝毫不减,查询速度也是非常迅速円。并 且Yahoo!也作出了自己的创新,提出交通信息等服务,并将其实现。同样的,Yahoo! 也提供给开发者关于Yahoo!地图开发的API,使其与Google地图在市场上拥有相 同的竞争力。

Virtual Earth是微软推出的一款地图软件[5L Microsoft推岀Virtual Earth基于地 图的搜索工具,该服务集航拍照片、地图、黄页数据于一体。它有一个用于保存搜 索资料的便笺本和能够利用Wi-Fi访问节点、IP地址确定用户位置的“定位”功能。 在Virtual Earth 3D中,就象在大型3D游戏的虚拟现实环境中一样,用户可以在城 市之间、建筑物之间“飞来飞去”。除了真实地“再现”城市的地形外,Virtual Earth 3D 中也包含一些现实世界中不存在的东西。Virtual Earth 3D不要求用户在硬盘上下载 应用软件,而是直接在浏览器中运行。同样微软提供API供开发者探讨研究。

1.3论文的主要工作

本文的目的是开发出一套基于android平台的,应用于智能手机上的在线电 子移动导航系统。

本文主要完成的工作:

(1)对GPS定位系统进行研究

利用卫星,在全球范围内实时进行定位、导航的系统,称为全球定位系统,简 称GPS。在科技高速发展的今天,导航系统已经在人们的日常生活中有了越来越重 要的地位。本文对最热门的GPS导航及地理信息系统进行了研究。

⑵对Android系统进行研究

Android系统自从走进人们的生活以后,便扮演着越来越重要的角色。从逐年 上升的市场占有率就足以证明,未来的移动平台,Android必然占有一席之地,并 且可以占到市场的很大份额。从前NOKIA独占智能手机大部分江山的局面将不复 存在,取而代之的是Android, IOS以及Windows Phone平台的群雄逐鹿局面。因 此本文对Android平台的应用程序开发进行了较细致的研究。

(2)充分调研并总体规划在线移动电子导航系统的功能

对移动电子导航系统的工作流程进行充分调研,分析系统应该具有的各项 功能,进而对系统的各项功能进行模块化的划分,目的是让系统更加的方便, 更加的人性化,更加好的为使用者提供导航及其他功能。

(3)在线移动电了导航系统的设计与开发

这是本课题的主要研究内容,具体工作包括:完成系统的总体设计和功能 模块设计,并探讨系统界面以及数据库的设计,最后对系统进行了实现。

(4)开发工具与数据库技术

开发工具采用Eclipse及ADT插件等。根据Android平台的特点,采用Sqlite 作为数据库。

(5)交互界面的设计

设计友好,方便易用的交互界面,更好的为使用者导航服务。

1.4论文的结构安排

本文分为打章,论文的组织结构安排如下:

第1章绪论。介绍了课题研究的背景及意义,以及对国内外对移动地图系统 的研究的分析。最后阐述了论文的主要工作。

第2章相关技术研究。研究了 Android记平台的系统架构,分析了 Android的

特征及具体构成。

第3章系统需求分析和总体设计。对系统进行了整体的分析和设计。此章介 绍了系统设计的目标和原则,对系统进行了需求分析,并对各个功能模块进行了划 分。

第4章系统详细设计与实现。此章介绍了系统的开发环境。论述了主要功 能模块的主要实现过程,并给出了部分主要功能实现后的截图。

第5章总结与展望。此章对本文所做的工作和研究成果进行了简单的总 结,指出其中的不足,并对以后的发展方向做了展望。


相关文章
|
5天前
|
JSON 编译器 开发工具
VS Code阅读Android源码
VS Code阅读Android源码
11 1
|
25天前
|
XML Java Android开发
Android实现自定义进度条(源码+解析)
Android实现自定义进度条(源码+解析)
52 1
|
25天前
|
Java Android开发
Android反编译查看源码
Android反编译查看源码
25 0
|
4天前
|
Linux 开发工具 Android开发
Docker系列(1)安装Linux系统编译Android源码
Docker系列(1)安装Linux系统编译Android源码
7 0
|
6天前
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
24 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
|
28天前
|
Java Android开发
Android 开发获取通知栏权限时会出现两个应用图标
Android 开发获取通知栏权限时会出现两个应用图标
14 0
|
1月前
|
XML 缓存 Android开发
Android开发,使用kotlin学习多媒体功能(详细)
Android开发,使用kotlin学习多媒体功能(详细)
103 0
|
1月前
|
设计模式 人工智能 开发工具
安卓应用开发:构建未来移动体验
【2月更文挑战第17天】 随着智能手机的普及和移动互联网技术的不断进步,安卓应用开发已成为一个热门领域。本文将深入探讨安卓平台的应用开发流程、关键技术以及未来发展趋势。通过分析安卓系统的架构、开发工具和框架,本文旨在为开发者提供全面的技术指导,帮助他们构建高效、创新的移动应用,以满足不断变化的市场需求。
18 1
|
3天前
|
数据库 Android开发 开发者
安卓应用开发:构建高效用户界面的策略
【4月更文挑战第24天】 在竞争激烈的移动应用市场中,一个流畅且响应迅速的用户界面(UI)是吸引和保留用户的关键。针对安卓平台,开发者面临着多样化的设备和系统版本,这增加了构建高效UI的复杂性。本文将深入分析安卓平台上构建高效用户界面的最佳实践,包括布局优化、资源管理和绘制性能的考量,旨在为开发者提供实用的技术指南,帮助他们创建更流畅的用户体验。
|
20天前
|
XML 开发工具 Android开发
构建高效的安卓应用:使用Jetpack Compose优化UI开发
【4月更文挑战第7天】 随着Android开发不断进化,开发者面临着提高应用性能与简化UI构建流程的双重挑战。本文将探讨如何使用Jetpack Compose这一现代UI工具包来优化安卓应用的开发流程,并提升用户界面的流畅性与一致性。通过介绍Jetpack Compose的核心概念、与传统方法的区别以及实际集成步骤,我们旨在提供一种高效且可靠的解决方案,以帮助开发者构建响应迅速且用户体验优良的安卓应用。