



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于Android平台的手机地图设计文档 文档名称: 基于Android平台的手机地图软件设计文档 项目名称: 基于Android平台的手机地图软件 专业: 2011级软件工程 组长: 李瑶 小组成员: 李瑶、杨宇威、张道辉 目 录 第1章 安卓平台与开发环境l 1.1 安卓平台简介l 1.2 安卓平台框架 第2章 百度地图的API Key申请和使用l 2.1 百度地图API申请和使用简介l 2.2 百度地图SDK简介 第3章 手机地图各个模块功能的设计与实现 l 3.1 基于Android手机地图的整体设计(用例描述,类图) l 3.2 接口设计l 3.2 数据库设计l 3.3 手机地图具体应用功能的设计 3.3.1 用户登陆 3.3.2 用户注册 3.3.3 位置查询 3.3.4 路线查询 3.3.5 天气查询第1章 安卓平台与开发环境1.1 Android平台简介 Android主要有如下特性:1. 应用程序框架支持组件的重用与替换。这样我们可以把系统中不喜欢的应用程序删除,安装我们喜欢的应用程序。2. Dalvik虚拟机专门为移动设备进行了优化。Android应用程序将由Java编写、编译的类文件通过DX工具转换成一种后缀名为.dex的文件来执行。Dalvik虚拟机是基于寄存器的,相对于Java虚拟机速度要快很多。3. 内部集成浏览器基于开源的WebKit引擎。有了内置的浏览器,这将意味着WAP应用的时代即将结束,真正的移动互联网时代已经来临,手机就是一台“小电脑”,可以在网上随意遨游。4. 优化的图形库包括2D和3D图形库,3D图形库基于OpenGL ES 1.0。强大的图形库给游戏开发带来福音。在3G最为重要的的应用莫过于手机上网和手机游戏。5. SQLite用作结构化的数据存储。6. 多媒体支持包括常见的音频、视频和静态印象文件格式如MPEG4、H.264、MP3、AAC、AMR、JGP、PNG、GIF。7. GSM电话(依赖于硬件)。8. 蓝牙(Bluetooth)、EDGE、3G、WiFi(依赖于硬件)。9. 照相机、GPS、指南针和加速度计(依赖于硬件)。10. 丰富的开发环境包括设备模拟器、调试工具、内存及性能分析图表和Eclipse集成的开发环境插件。Google提供了Android开发包SDK,其中包含了大量的类库和开发工具,并且针对Eclipse的可视化开发插件ADT。1.2 Android平台框架 从上图我们可以看出,Android操作系统的体系结构可分为4层,由上到下依次是应用程序、应用程序框架、核心类库和Linux内核,其中第三层还包括Android运行时的环境。下面分别来讲解各个部分。1. 程序应用Android 连同一个核心应用程序包一起发布,该应用程序包包括E-mail客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序等。所有的应用程序都是用Java编写的。2. 应用程序框架开发者完全可以访问核心应用程序所使用的API框架。该应用程序框架架构用来简化组件软件的重用,任何一个应用程序都可以发布它的功能块并且任何其他的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。该应用程序重用机制使得组件可以被用户替换。以下所有的应用程序都由一系列的服务和系统组成,包括:1)一个可扩展的视图(Views)可以用来创建应用程序,包括列表(lists)、网络(grids)、文本框(text boxes)、按钮(buttons),甚至是一个可嵌入的Web浏览器。2)内容管理器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。3)一个资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串、图形和分层文件(layout files)。4)一个通知管理器(Notification Manager)使得应用程序可以在状态栏中显示客户通知信息。5)一个活动类管理器(Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能。3. Android程序库Android包括一个被Android系统中各种不同组件所使用的C/C+集库。该库通过Android应用程序框架为开发者提供服务。以下是一些主要的核心库:1)系统C库:一个从BSD继承来的标准C系统函数库(libc),专门为基于Embedded Linux的设备定制。2)媒体库:基于PacketVideo OpenCORE;该库支持录放,并且可以录制许多流行的音频视频格式,还有静态映像文件包括MPEG4、H.264、MP3、AAC、JPG、PNG。3)Surface Manager:对显示子系统的管理,并且为多个应用程序提供2D和3D图层的无缝融合。4)LibWebCore:一个最新的Web浏览器引擎,用来支持Android浏览器和一个可嵌入的Web视图。5)SGL:一个内置的2D图形引擎。6)3D libraries:基于OpenGL ES 1.0 APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。7)FreeType:位图(bitmap)和向量(vector)字体显示。8)SQLite:一个对于所以应用程序可用、功能强劲的轻型关系型数据库引擎。4. Android运行库Android包括了一个核心库,该核心库提供了Java编程语言核心库的大多数功能。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。Dalvik是针对同时高效地运行多个VMs实现的。Dalvik虚拟机执行.dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。该虚拟机是基于寄存器的,所有的类都是经由Java汇编器编译,然后通过SDK中的DX工具转化成.dex格式由虚拟机执行。Dalvik虚拟机依赖于Linux的一些功能,比如线程机制和底层内存管理机制。5. Linux内核Android的核心系统服务依赖于Linux内核,如安全性、内存管理、进程管理、网络协议栈和驱动模型。Linux内核也同时作为硬件和软件栈之间的硬件抽象层。第2章 百度地图的API Key申请和使用2.1 百度地图API申请和使用简介 百度地图API是一套基于安卓1.5及以上设备的应用程序接口,通过该接口,您可以轻松访问百度服务和数据,构建功能丰富、交互性强的地图应用程序。百度地图API不仅包含构建地图的基本接口,还提供了诸如地图定位、本地搜索、路线规划等数据服务,你可以根据自己的需要进行选择。 用户在使用API之前需要获取百度地图API Key,该key与你的百度账户相关联,您必须先有百度账户,才能获得API key,并且,该KEY与您引用API的程序名称有关,KEY的申请具体流程如下图:然后获得已申请的API密匙,如图所示:为了能使用百度地图应用,首先将API包括的两个文件baidumapapi.jar和libBMapApiEngine.so拷贝到工程根目及libarmeabi目录下,并在工程属性-JavaBuildPath -Libraries中选择“Add JARs”,选定baidumapapijar,确定后返回,这样就可以在程序中使用API了。2.2百度地图SDK简介 百度地图 Android SDK是一套基于Android 2.1(v1.3.5及以前版本支持android 1.5以上系统)及以上版本设备的应用程序接口,您可以通过该接口实现丰富的LBS功能: 地图展示:包括2D图、卫星图、3D图地图展示; 地图操作:提供平移、缩放、双指手势操作、底图旋转等地图相关操作; 地图搜索:提供根据关键字进行范围检索、城市检索和周边检索。且支持LBS云检索用户自有数据; 详情查询:提供餐饮类的POI的详细信息查看(Place详情); 线路规划:提供公交、驾车和步行三种类型,多种方案(最快捷、少换乘、少步行)的线路规划; 地理编码:提供地址信息与坐标之间的相互转换; 位置标注:提供一个或多个POI位置标注,且支持用户自定义图标; 实时路况:提供城市实时交通路况信息图; 离线地图:提供离线地图功能,可节省用户流量; 定位:采用GPS、WIFI、基站、IP混合定位模式,请使用Android定位SDK获取定位信息,使用地图SDK定位图层进行位置展示。第3章 手机地图各个模块功能的设计与实现3.1 基于Android手机地图的整体设计功能框图 基于安卓手机地图应用包括的功能模块 地图应用 用户路 线 搜 索 地 图 关 于天 气 查 询位 置 搜 索用 户 注 册用 户 登 录公交步行基于Android平台手机地图软件开发主要包括以下六个模块:1、用户登录模块,用户需要使用登录名及密码登陆后才能使用此软件,以及查看本人的查询历史。2、用户注册,用户第一次使用此软件需要注册一个属于自己的账户。3、地图,用户可以对地图进行放大、缩小和移动查看地理位置。4、位置搜索,用户可以输入想要查询的位置名称来查看此位置的地图信息。5、路线搜索,用户可以输入出发点和目的地去查询两地的行程路线,可以选择公交和步行两种出行方式。6、天气查询,用户可以输入想要查询的地方的名称来查询当地的天气状况。系统流程图初始类图(上图) 详细类图(下图)3.2 接口设计 1、外部接口(用户界面) 启动动画 当用户点击此软件图标打开软件时,会有一个启动动画,此动画主要是美化功能,动画出现几秒后自动跳转到主界面,预期效果如图:利用Intent跳转界面Timer控制跳转时间 注册界面 用户使用此软件需要登录,没有账户的用户可以通过登陆界面下方的注册按钮进行注册,输入用户名,密码,确认密码,点击立即注册后,系统会自动将用户信息存储到数据库中,下次登录系统会将输入的用户名和密码与数据库中的进行比较,匹配成功则登录成功。注册界面效果图如下: 主界面此款软件功能比较少,比较单一,因此所有的功能的操作都集中在主界面上,主界面的主要的部分用来显示地图,屏幕最下方有两个文本输入,主要输入起点与终点,用来查询路线,在这两个文本栏下方有两个按钮,分别是公交查询与步行查询,最下面是一个文本输入和一个按钮,是查询天气功能,在屏幕最上方有搜索栏,主要进行位置查询,输入地名查询该地地图。大概效果图如图(只是预期效果图): 查询结果的显示 用户在进行完查询后,如果是位置搜索,在地图上回用一个鲜艳颜色的点标注出来,线路查询,会用区别于其他颜色的线将其标注出来。查询天气时,地图显示将会消失,将天气情况显示在屏幕上。3.3数据设计(张道辉)数据库设计我们的数据库主要存储用户信息和地点及路线查询的记录,以方便用户下次查询时直接查找记录,所以设计的表有三个,用户表,地点表,路线表,表User字段名数据类型允许为空主键备注UserNameChar(10)NOT NULL是PasswordChar(10)NOT NULLAddress字段名数据类型允许为空主键备注AddressNameChar(10)NOT NULL是经度Int(10)NOT NOLL纬度Int(10)NOT NOLLPath字段名数据类型允许为空主键备注起点char(10)NOT NOLL是终点char(10)NOT NOLL 3.4过程设计 3.4.1 用户登录功能的实现 用户登录功能流程图登录界面输入用户名提示密码错误提示账户不存在输入密码显示登录成功Y验证用户 用户登录活动图用户登陆时序图 功能描述:用户输入用户名、密码后,点击登录按钮,系统将自动把输入的用户名与密码和数据库中已有的用户名密码进行匹配,如果用户名错误,则显示“账户不存在”提示,重新输入用户名,若密码错误,则提示“密码错误”,重新输入密码。若匹配成功,则显示登录成功,进入主界面。 3.4.2用户注册功能的实现 用户注册功能流程图注册成功数据存入数据库YN用户已存在检测用户名 注册界面 输入密码输入用户名 确认密码用户注册功能活动图 用户注册时序图 没有用户名,进行注册,进入注册界面,输入自己的用户名,判断用户是否已使用,再输入用户的密码,再次确认密码得和上一次的一致,直到注册成功.位置搜索功能活动图3.4.3 位置搜索功能的实现记录位置信息存入数据库Y地图显示位置N百度返回位置坐标判断地点是否存在将名称传给百度地图输入地点名称 位置搜索,用户输入一个地点名称,点击搜索,系统将会把这一个地点名称传给百度,若地点不存在,则返回地点不存在。若存在,百度将会给返回一个位置坐标,并在地图上标注出来。位置搜索活动图输入地点的名称,判断是否有这个地点的存在,再显示该地点的坐标,记录该地的信息存入数据库.在手机地图上显示该地的位置.位置搜索时序图输入两个地点名称地图显示路线百度返回位置坐标YN判断地点是否存在将名称传给百度地图 3.4.4路线查询功能 路线搜索,用户输入两个地点名称,点击搜索,系统将会把这地点名称传给百度,若地点不存在,则返回地点不存在。若存在,百度将会给返回一个位置坐标,并在地图上标注出路线。路线查询活动图路线查询时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广东省惠州市惠城区中考数学二模试卷(含答案)
- 财务会计入门实操指南
- 高等土力学:本构模型
- 2025年android自学视频!一起看看这些大厂面试真题查漏补缺吧分享一点面试小经验
- 2023-2024学年山西省长治市部分学校高二下学期期末考试数学试题(解析版)
- 2025届河南省许昌、平顶山、汝州名校高三二模语文试题(解析版)
- 2025届福建省高三模拟练习联合检测语文试题(解析版)
- 2024届湖南省益阳市七校高三下学期第二次模拟考试语文试题(解析版)
- 2024-2025学年浙江省湖州市高二上学期期末考试语文试题(解析版)
- 2024-2025学年山西省晋城市部分学校高二下学期开学检测语文试题(解析版)
- 广东省广州市越秀区执信中学2025届高一下数学期末教学质量检测模拟试题含解析
- 《灰尘的旅行》阅读测试题附答案
- 西南联大与现代中国智慧树知到期末考试答案章节答案2024年云南师范大学
- MOOC 心理学与生活-南京大学 中国大学慕课答案
- SYT 6968-2021 油气输送管道工程水平定向钻穿越设计规范-PDF解密
- 夜市应急方案及措施
- 2024年北京海淀社区工作者招聘笔试冲刺题(带答案解析)
- 2024年公需科目培训试题及答案
- 幼儿园玩教具供货运输配送方案
- 计量经济学论文(eviews分析)影响我国人口预期寿命的可能因素分析
- 足球公园计划书
评论
0/150
提交评论