基于Android的百度地图应用系统-毕业设计
基于Android平台下基于百度地图API的地图导航设计毕业论文

本科毕业论文(设计)题目Android平台下基于百度地图API的地图导航设计专业电子信息科学与技术作者姓名刘茂强学号**********单位物理科学与信息工程学院指导教师郎丰法2014 年 05月教务处编原创性声明本人郑重声明:所提交的学位论文是本人在导师指导下,独立进行研究取得的成果。
除文中已经引用的内容外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得聊城大学或其他教育机构的学位证书而使用过的材料。
对本文的研究作出重要贡献的个人和集体,均在文中以明确的方式表明。
本人承担本声明的相应责任。
学位论文作者签名:日期:指导教师签名:日期:目录前言 (9)1.绪论 (10)1.1 背景及意义 (10)1.2 研究现状 (10)1.3 研究课题主要内容 (11)1.3.1 地点搜索和位置定位 (11)1.3.2 附近搜索 (11)1.3.3 路线规划 (11)1.3.4 公交线路查询 (11)1.3.5 GPS导航 (11)1.4 论文结构 (11)2.Android平台与开发环境 (13)2.1 Android系统 (13)2.1.1 后缀简介 (13)2.1.2 应用组件 (13)2.1.3 系统运行库 (14)2.2 Eclipse (14)2.2.1 基本介绍 (14)2.2.2 主要组成 (15)2.2.3 软件开发包 (15)2.3 Android开发环境搭建 (15)3.相关配置和框架结构 (16)3.1 工程配置 (16)3.1.1 Android SDK的配置 (16)3.1.2 定位SDK的配置 (16)3.1.3 导航SDK的配置 (16)3.2 密钥申请 (17)3.2.1 密钥简介 (17)3.2.2 申请步骤 (17)3.3 配置AndroidManisfet.xml (19)3.3.1权限配置 (19)3.3.2 添加对应的开发密钥 (19)3.3.3 声明service组件 (19)3.4 程序结构 (19)4.主页面设计 (21)4.1 基本配置 (21)4.1.1 配置main.xml (21)4.1.2 配置AndroidManifest.xml (21)4.2 MainActivity代码设计 (21)4.2.1创建地图MainActivity,并import相关类 (22)4.2.2 MainActivity变量定义 (22)4.2.3 MainActivity主要变量初始化 (22)4.2.4 各控件设置 (22)4.2.5 选择菜单 (23)4.2.6 搜索事件处理 (24)4.2.7 定位事件处理 (25)5.附近搜索设计 (26)5.1 基本配置 (26)5.1.1 配置near.xml (26)5.1.2 AndroidManifest.xml (26)5.2 NearActivity代码设计 (26)5.2.1 创建地图NearActivity,并import相关类 (26)5.2.2 NearActivity变量定义 (26)5.2.3 NearActivity主要变量初始化 (27)5.2.4 各控件设置 (27)5.2.5 事件处理 (27)6.路线规划设计 (29)6.1 基本配置 (29)6.1.1 配置way.xml (29)6.1.2 AndroidManifest.xml (29)6.2 WayActivity代码设计 (29)6.2.1 创建地图WayActivity,并import相关类 (29)6.2.2 WayActivity变量定义 (29)6.2.3 WayActivity主要变量初始化 (30)6.2.4 各控件设置 (30)6.2.5 搜索结果处理 (31)6.2.6 节点浏览 (31)7.公交查询设计 (34)7.1 基本配置 (34)7.1.1 配置bus.xml (34)7.1.2 AndroidManifest.xml (34)7.2 BusActivity代码设计 (34)7.2.1 创建地图BusActivity,并import相关类 (34)7.2.2 BusActivity变量定义 (35)7.2.3 WayActivity主要变量初始化 (35)7.2.4 各控件设置 (35)7.2.5 事件处理 (35)8.驾车导航设计 (38)8.1 基本配置 (38)8.1.1 配置navigation.xml (38)8.1.2 AndroidManifest.xml (38)8.2 NavigationActivity代码设计 (38)8.2.1 创建地图NavigationActivity,并import相关类 (38)8.2.2 NavigationActivity变量定义 (39)8.2.3 NavigationActivity主要变量初始化 (39)8.2.4 设置单击事件 (39)总结 (42)致谢 (43)参考文献 (44)附录 (45)摘要在近年来移动设备智能化、轻便化的趋势下,地图导航已经成为人们出行必不可少的工具,给人们的生活带来了极大的便利。
android百度地图开发

根据关键词查询所在的位置 综合实战案例之一:经纬度以及根据关键字查询
如何显示我当前的位置MyLocationOverlay
将MyLocationOverlay添加到覆盖物中,能够实现在地图上显示 当前位置的图标以及指南针。
实战案例之一:显示当前我所在的位置
当某个类型的覆盖物,包含多个类型相同、显示方式相同、处 理方式相同的项时可以使用ItemizedOverlay类进行处理:
ቤተ መጻሕፍቲ ባይዱ战案例之一:在地图上标注多个建筑物
如何根据范围和检索词发起范围检索PoiOverlay
在实际开发中我们需要检索某一个建筑物周边的对象
实战案例之一:检索天安门周边5000米之中添加Android版本支持
<supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:resizeable="true" android:anyDensity="truedu.mapapi.MapView android:id="@+id/bmapView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true"清单文件中添加使用权限
百度地图定位开发——Android地图sdk开发

百度地图定位开发——Android地图sdk开发百度地图Android定位SDK是为Android移动端应⽤提供的⼀套简单易⽤的定位服务接⼝,专注于为⼴⼤开发者提供最好的综合定位服务。
通过使⽤百度定位SDK,开发者可以轻松为应⽤程序实现智能、精准、⾼效的定位功能。
打开百度地图sdk开发,输⼊应⽤名称这⾥需要输⼊SHA1,具体寻找SHA1过程可以参考官⽅的⽂档创建成功后,下载官⽅的jar包,将解压后的所有⽂件添加到申请AK时使⽤的项⽬⽂件中的lib⽬录中。
然后在app⽬录下的build.gradle⽂件中android块中配置sourceSets标签,内容如下:sourceSets {main {jniLibs.srcDir 'libs'}}此时就能将部分⽬录添加到项⽬视图中,现在需要将jar⽂件添加到项⽬视图中。
在app⽬录的build.gradle的dependencies块中添加以下代码,然后右键⽬标jar⽂件,选择Add as library,就能将其加⼊到项⽬视图中。
implementation files('libs\\BaiduLBS_Android.jar')然后打开AndroidManifest.xml⽂件,在<application>中加⼊如下代码配置开发密钥AK,并且根据官⽅⽂档,添加权限显⽰地图我们在xml⽂件的代码中直接输⼊<com.baidu.mapapi.map.MapViewandroid:id="@+id/bmapView"android:layout_width="411dp"android:layout_height="662dp"android:clickable="true"app:layout_constraintBottom_toBottomOf="parent"app:layout_constraintEnd_toEndOf="parent"app:layout_constraintStart_toStartOf="parent"app:layout_constraintTop_toTopOf="parent"tools:ignore="MissingClass" />然后我们需要初始化地图,创建⼀个activitypackage com.example.zty_map;import androidx.appcompat.app.AppCompatActivity;import android.app.Application;import android.os.Bundle;import com.baidu.mapapi.CoordType;import com.baidu.mapapi.SDKInitializer;public class MAPZTY1 extends Application {@Overridepublic void onCreate() {super.onCreate();//在使⽤SDK各组件之前初始化context信息,传⼊ApplicationContextSDKInitializer.initialize(this);//⾃4.3.0起,百度地图SDK所有接⼝均⽀持百度坐标和国测局坐标,⽤此⽅法设置您使⽤的坐标类型. //包括BD09LL和GCJ02两种坐标,默认是BD09LL坐标。
基于Android平台的百度地图开发研究

基于Android平台的百度地图开发研究作者:张波赵双明来源:《软件导刊》2015年第07期摘要:Android自发布以来,凭借其开源免费、拓展性强、兼容性好等优点迅速占据了移动平台市场的最大份额,其免费策略也极大地促进了Android平台上应用软件的发展。
分析了Android平台的系统架构,对百度地图Android SDK及BaiDuMap API进行了简单介绍,最后在Android平台上实现了手机定位和城市搜索功能。
关键词:百度地图;定位;搜索;AndroidDOIDOI:10.11907/rjdk.151632中图分类号:TP317.4 文献标识码:A 文章编号:1672-7800(2015)007-0096-030 引言随着无线网络技术的飞速发展和移动终端硬件水平的不断提高,智能手机及其各类应用已经成为当今人们生活中不可或缺的工具及伙伴,尤其是Android平台凭借其开源免费、拓展性强、兼容性好等优点迅速占据了移动平台市场的最大份额。
以Linux内核为基础的Android操作系统采用分层设计的思想,平台开放、界面友好、易于开发,可谓是一种极具吸引力的开源终端解决方案。
基于Android平台的各种应用开发,特别是和人们生活密切相关的位置服务应用开发已经成为开发者们重点关注的领域。
本文分析了Android平台的系统架构,对百度地图Android SDK及BaiDuMap API进行了简单介绍,最后结合手机定位和地市搜索功能的实现对百度地图开发的基本流程进行了阐述。
1 Android平台系统架构Android 是一个专门针对移动设备的软件集,它包括一个操作系统、中间件和一些重要的应用程序。
其系统架构采用了分层架构的思想,如图1所示。
从上层到底层共包括4层,分别是应用程序层、应用框架层、系统库和Android运行时以及Linux内核。
每层功能简要介绍如下:(1)应用程序层。
该层提供一些核心应用程序包,例如电子邮件、短信、日历、地图、浏览器和联系人管理等,这些都是使用Java语言编写的。
基于Android的百度地图应用系统-毕业设计

分类号:学校代码:11460学号:11130815南京晓庄学院本科生毕业设计基于Android平台和百度地图的应用系统Application system based onAndroid baidu map所属院(部):数学与信息技术学院学生姓名:指导教师:研究起止日期:二〇一五年三月至二〇一五年五月【摘要】在电子信息技术的带动下,移动操作系统飞速发展,在手机、平板等移动终端上的定位系统应用更为普及,地图导航的功能和应用也得到不断延伸和拓展,GPS功能在手机上的开发应用一度成为开发的热点,能够大量的减少人们寻找地点的时间成本,不断满足人们快速生活节奏的客观需求,因此终端上的地点定位的地图的相关软件的应用能够产生很大的实际效用,尤其是在手机Android 系统上的地图系统的开发,比如百度地图就是在这样的大背景下被开发出来的。
在本文中介绍了选题背景,介绍了关键技术,对系统进行了需求分析,对系统进行了详细设计,系统的实现以及系统中的测试,对百度地图应用系统从分析到设计再到具体实现,有了详细的过程。
百度地图系统的开发运用了Java语言,主要针对Android和SDK系统的运用进行设计,用户可以通过在手机系统中,安装软件APP,然后快速的实现搜索地址的功能,使得用户出门更加方便,不需要担心迷路,使得用户对出门变得方便。
关键词:地图导航; 百度地图; Java; Android; API[Abstract]With the rapid development of mobile platforms to extend the operating system and map navi gation applications, expanding GPS function on cell phones has become a hot mobile application d evelopment. In order to find a place, people often need to spend a lot of energy, so along with th e accelerating pace of modern life, real-time location information is becoming one of the informati on it is looking for. Therefore, the design and optimization map location services applications with very practical value, Baidu Maps Android-based application system thus arises.In this paper we introduce the background, the key technologies, the system needs analysis, d etailed design of the system, implementation, and system test system for Baidu map application sy stem from analysis to design to implementation , with the detailed process.The system uses the Java language, using the Android platform and SDK, use Baidu Maps A PI in Android system will search for Baidu map application systems and route planning have been achieved, so that the user is more convenient to go out, do not worry about getting lost, so that the user It becomes easy to go out.KeyWords:map navigation; Baidu map; Java,; Android; API目录第1章绪论 (1)1.1 课题背景 (1)1.2 课题意义 (1)1.3 研究现状 (2)1.4 研究内容 (2)第2章课题设计相关技术 (4)2.1 Java语言 (4)2.2 Android架构 (4)2.3 Android SDK (6)第3章系统需求分析 (7)3.1 可行性分析 (7)3.2 需求分析 (8)3.3 业务流程图 (8)3.2 非功能性需求 (9)第4章百度key申请 (11)4.1 注册百度账号 (11)4.2 申请百度key (11)4.3 百度密钥应用到程序 (13)第5章系统设计 (14)5.1系统功能结构 (14)5.2权限设计 (14)5.3基本配置设计 (16)第6章系统实现 (17)6.1系统运行环境和开发平台 (17)6.2系统实现 (17)6.2.1 系统主界面 (17)6.2.2 实时路况界面 (21)6.2.3 视角界面 (21)6.2.4 搜索界面 (22)6.2.5 路线界面 (25)6.2.6 导航界面 (28)6.2.7 数据的缓存 (30)第7章系统测试 (32)7.1测试内容 (32)7.2测试预期结果 (32)7.3测试用例 (33)7.4测试结果 (33)结论 (35)参考文献 (36)致谢 (37)第1章绪论1.1 课题背景移动互联网时代的来临,说明是一个新的时代的开始。
android的毕业设计题目

android的毕业设计题目Android的毕业设计题目随着移动互联网的快速发展,Android操作系统成为了智能手机最主流的操作系统之一。
因此,选择一个与Android相关的毕业设计题目是非常有意义的。
在这篇文章中,我将分享一些有趣且具有挑战性的Android毕业设计题目,希望能够帮助到正在寻找灵感的毕业生。
1. 基于Android的智能家居控制系统随着物联网的兴起,智能家居成为了一个热门的话题。
设计一个基于Android的智能家居控制系统可以让用户通过手机控制家中的各种设备,如灯光、空调、窗帘等。
这个毕业设计项目需要学生具备Android开发的基础知识,并且需要与硬件设备进行通信。
2. 基于Android的旅游导航应用旅游导航应用在现代社会中非常受欢迎,因为它可以帮助用户找到附近的景点、餐厅、酒店等。
设计一个基于Android的旅游导航应用可以让用户轻松地查找并导航到他们感兴趣的地点。
这个毕业设计项目需要学生具备地图API的使用经验,并且需要与网络服务进行交互。
3. 基于Android的健康管理应用健康管理成为了现代人们越来越关注的话题。
设计一个基于Android的健康管理应用可以帮助用户记录并分析他们的健康数据,如步数、心率、睡眠等。
这个毕业设计项目需要学生具备数据库的使用经验,并且需要与传感器进行交互。
4. 基于Android的在线购物应用在线购物已经成为了现代人们购物的主要方式之一。
设计一个基于Android的在线购物应用可以让用户方便地浏览和购买各种商品。
这个毕业设计项目需要学生具备网络编程的基础知识,并且需要与后端服务器进行交互。
5. 基于Android的语音识别应用语音识别技术正在逐渐成熟,成为了人机交互的重要方式之一。
设计一个基于Android的语音识别应用可以让用户通过语音来控制手机,并进行各种操作。
这个毕业设计项目需要学生具备语音识别的基础知识,并且需要与语音识别引擎进行集成。
基于Android平台的百度地图手机导航设计毕业设计

本科生毕业设计(论文)题目:基于Android 平台的百度地图手机导航设计姓名:学号:系别:专业:年级:指导教师:2013 年 4 月14 日独创性声明本毕业设计(论文)是我个人在导师指导下完成的。
文中引用他人研究成果的部分已在标注中说明;其他同志对本设计(论文)的启发和贡献均已在谢辞中体现;其它内容及成果为本人独立完成。
特此声明。
论文作者签名:日期:关于论文使用授权的说明本人完全了解学院有关保留、使用学位论文的规定,即:学院有权保留送交论文的印刷本、复印件和电子版本,允许论文被查阅和借阅;学院可以公布论文的全部或部分内容,可以采用影印、缩印、数字化或其他复制手段保存论文。
保密的论文在解密后应遵守此规定。
论文作者签名:指导教师签名:日期:基于安卓平台的百度地图的导航设计摘要现代社会,手机导航己经成为人们工作生活中必不可缺少的一项导航定位服务。
随着手机硬件的快速升级换代,对应于手机的各种高级软件服务和应用层出不穷。
在这当中,手机导航定位服务,是一项全新且具有广阔市场和应用价值的业务。
这其中的领航者百度地图,是百度公司向全国提供的电子地图服务。
它拥有纸质地图无法比拟的优越性,特别是在近年来移动设备智能化、轻便化的趋势下,再加上网络速度的提升,更是让百度地图与人们的生活产生更为息息相关。
在操作系统方面,谷歌于2007 年11 月推出了一款开源的移动终端操作系统——安卓,截止至2012 年11 月数据显示,安卓占据全球智能手机操作系统市场76的份额,中国市场占有率为90。
在手机地图导航开发方面,百度公司为开发者提供了非常灵活的百度地图展示与控制功能。
由于开发百度地图的免费性和使用安卓平台的开源性,不仅能够有效降低开发成本,而且能使每个用户自由的获取信息,这也为手机地图导航定位服务的普及做出了重要的贡献。
本人毕业设计的论题为《基于Android 移动平台的百度地图的导航设,计》采用时下最新版的百度地图V2.1.0,该应用可以用来浏览城市的地图,并能对其放大、缩小和移动,三种视图的切换,同时实现GPS 定位技术、公交路线的查询、兴趣点的搜索和路线导航等功能,具有很强的应用前景。
基于Android实现百度地图定位过程详解

基于Android实现百度地图定位过程详解⼀、问题描述LBS位置服务是android应⽤中重要的功能,应⽤越来越⼴泛,下⾯我们逐步学习和实现lbs相关的应⽤如定位、地图、导航等,⾸先我们看如何基于百度地图实现定位功能⼆、配置环境2、下载定位SDK,并导⼊SDK如图所⽰:三、编写MyApplication类编写MyApplication类,为了使⽤⽅便我们可以将实现定位的⽅法封装的Application组件中封装下列⽅法1、获取定位信息——requestLocationInfo()2、通过⼴播发送位置信息——sendBroadCast()3、停⽌定位——stopLocationClient()public class MyApplication extends Application{public LocationClient mLocationClient = null;public GeofenceClient mGeofenceClient;public MyLocationListenner myListener = new MyLocationListenner();public static String TAG = "MyApplication";private static MyApplication mInstance = null;@Overridepublic void onCreate(){mInstance = this;mLocationClient = new LocationClient(this);/*** 项⽬的key,⾃⼰到官⽹申请 /apiconsole/key*/mLocationClient.setAK("你的应⽤Key");mLocationClient.registerLocationListener(myListener);mGeofenceClient = new GeofenceClient(this);super.onCreate();Log.d(TAG, "... Application onCreate... pid=" + Process.myPid());}public static MyApplication getInstance(){return mInstance;}/*** 停⽌定位*/public void stopLocationClient(){if (mLocationClient != null && mLocationClient.isStarted()){mLocationClient.stop();}}/*** 发起定位*/public void requestLocationInfo(){setLocationOption();if (mLocationClient != null && !mLocationClient.isStarted()){mLocationClient.start();}if (mLocationClient != null && mLocationClient.isStarted()){mLocationClient.requestLocation();}}/*** 设置百度地图的相关参数*/private void setLocationOption(){LocationClientOption option = new LocationClientOption();option.setOpenGps(true); // 打开gpsoption.setCoorType("bd09ll"); // 设置坐标类型option.setServiceName("com.baidu.location.service_v2.9");option.setPoiExtraInfo(true);option.setAddrType("all");option.setPoiNumber(10);option.disableCache(true);mLocationClient.setLocOption(option);}/*** 监听函数,有更新位置的时候,格式化成字符串,输出到屏幕中 */public class MyLocationListenner implements BDLocationListener {@Overridepublic void onReceiveLocation(BDLocation location){if (location == null){sendBroadCast("定位失败!");return;}sendBroadCast(location.getAddrStr());}public void onReceivePoi(BDLocation poiLocation){if (poiLocation == null){sendBroadCast("定位失败!");return;}sendBroadCast(poiLocation.getAddrStr());}}/*** 得到发送⼴播* @param address*/public void sendBroadCast(String address){stopLocationClient();Intent intent = new Intent(MainActivity.LOCATION_BCR);intent.putExtra("address", address);sendBroadcast(intent);}}三、主程序MainActivitypublic class MainActivity extends Activity{public static String TAG = "LocTestDemo";private BroadcastReceiver broadcastReceiver;public static String LOCATION_BCR = "location_bcr";private Button locBtn;private TextView locInfo;private MyApplication application;@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(yout.activity_main);application=(MyApplication)super.getApplication();initialize();initializeViews();initializeListeners();}private void initialize(){registerBroadCastReceiver();//注册⼴播}private void initializeViews(){locBtn = (Button) findViewById(R.id.location);locInfo = (TextView) findViewById(R.id.location_info);}private void initializeListeners(){locBtn.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v){locInfo.setText("定位中...");//调⽤请求定位信息application.requestLocationInfo();}});}/*** 注册⼀个⼴播,监听定位结果,接受⼴播获得地址信息*/private void registerBroadCastReceiver(){broadcastReceiver = new BroadcastReceiver(){public void onReceive(Context context, Intent intent){String address = intent.getStringExtra("address");locInfo.setText(address);}};IntentFilter intentToReceiveFilter = new IntentFilter();intentToReceiveFilter.addAction(LOCATION_BCR);registerReceiver(broadcastReceiver, intentToReceiveFilter);}@Overrideprotected void onDestroy(){super.onDestroy();unregisterReceiver(broadcastReceiver);}}四、 AndroidManifest.xml配置信息<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="/apk/res/android"package="com.jereh.baidulocation"android:versionCode="1"android:versionName="1.0" ><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="17" /><applicationandroid:name="com.jereh.baidulocation.MyApplication"android:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme" ><activityandroid:name="com.jereh.baidulocation.MainActivity"android:label="@string/app_name" ><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="UNCHER" /></intent-filter></activity><serviceandroid:name="com.baidu.location.f"android:enabled="true"android:process=":remote" ><intent-filter><action android:name="com.baidu.location.service_v2.2" ></action></intent-filter></service></application><uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" > </uses-permission><uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" ></uses-permission><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" ></uses-permission><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" > </uses-permission><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" ></uses-permission><uses-permission android:name="android.permission.READ_PHONE_STATE" ></uses-permission><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" ></uses-permission><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" > </uses-permission><uses-permission android:name="android.permission.READ_LOGS" ></uses-permission><uses-permission android:name="android.permission.VIBRATE" /><uses-permission android:name="android.permission.WAKE_LOCK" /><uses-permission android:name="android.permission.WRITE_SETTINGS" /></manifest>。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
分类号:学校代码:学号:*****学院本科生毕业设计基于Android平台和百度地图的应用系统Application system based onAndroid baidu map所属院(部):数学与信息技术学院学生姓名:指导教师:研究起止日期:二〇一五年三月至二〇一五年五月【摘要】在电子信息技术的带动下,移动操作系统飞速发展,在手机、平板等移动终端上的定位系统应用更为普及,地图导航的功能和应用也得到不断延伸和拓展,GPS功能在手机上的开发应用一度成为开发的热点,能够大量的减少人们寻找地点的时间成本,不断满足人们快速生活节奏的客观需求,因此终端上的地点定位的地图的相关软件的应用能够产生很大的实际效用,尤其是在手机Android 系统上的地图系统的开发,比如百度地图就是在这样的大背景下被开发出来的。
在本文中介绍了选题背景,介绍了关键技术,对系统进行了需求分析,对系统进行了详细设计,系统的实现以及系统中的测试,对百度地图应用系统从分析到设计再到具体实现,有了详细的过程。
百度地图系统的开发运用了Java语言,主要针对Android和SDK系统的运用进行设计,用户可以通过在手机系统中,安装软件APP,然后快速的实现搜索地址的功能,使得用户出门更加方便,不需要担心迷路,使得用户对出门变得方便。
关键词:地图导航; 百度地图; Java; Android; API[Abstract]With the rapid development of mobile platforms to extend the operating system and map navi gation applications, expanding GPS function on cell phones has become a hot mobile application d evelopment. In order to find a place, people often need to spend a lot of energy, so along with th e accelerating pace of modern life, real-time location information is becoming one of the informati on it is looking for. Therefore, the design and optimization map location services applications with very practical value, Baidu Maps Android-based application system thus arises.In this paper we introduce the background, the key technologies, the system needs analysis, d etailed design of the system, implementation, and system test system for Baidu map application sy stem from analysis to design to implementation , with the detailed process.The system uses the Java language, using the Android platform and SDK, use Baidu Maps A PI in Android system will search for Baidu map application systems and route planning have been achieved, so that the user is more convenient to go out, do not worry about getting lost, so that the user It becomes easy to go out.KeyWords:map navigation; Baidu map; Java,; Android; API目录第1章绪论 (1)1.1 课题背景 (1)1.2 课题意义 (1)1.3 研究现状 (2)1.4 研究内容 (2)第2章课题设计相关技术 (4)2.1 Java语言 (4)2.2 Android架构 (4)2.3 Android SDK (6)第3章系统需求分析 (7)3.1 可行性分析 (7)3.2 需求分析 (8)3.3 业务流程图 (8)3.2 非功能性需求 (9)第4章百度key申请 (11)4.1 注册百度账号 (11)4.2 申请百度key (11)4.3 百度密钥应用到程序 (14)第5章系统设计 (14)5.1系统功能结构 (14)5.2权限设计 (15)5.3基本配置设计 (16)第6章系统实现 (17)6.1系统运行环境和开发平台 (17)6.2系统实现 (17)6.2.1 系统主界面 (17)6.2.2 实时路况界面 (21)6.2.3 视角界面 (21)6.2.4 搜索界面 (22)6.2.5 路线界面 (25)6.2.6 导航界面 (28)6.2.7 数据的缓存 (30)第7章系统测试 (32)7.1测试内容 (32)7.2测试预期结果 (32)7.3测试用例 (33)7.4测试结果 (33)结论 (35)参考文献 (36)致谢 (1)第1章绪论1.1 课题背景移动互联网时代的来临,说明是一个新的时代的开始。
移动通信和互联网合在一起就是所谓的移动互联网,移动设备(手机和上网本)可以随时的访问互联网的资源和查找的应用。
智能手机是互联网时代有目的有标志的客户端工具,它就像一台“小电脑”,有自己的独立的操作系统,可以自行安装和卸载软件,可以实现无线网络的接入通过通信网络,有很大的存储和计算的能力,这就是它和传统手机的区别。
在飞速发展的今天,对于移动终端设备一个大的趋势是传统WEB上的应用出现在手机终端。
而基于Android的百度地图应用系统,良好地体现了这一趋势,百度地图应用系统的开发,能很好的为用户提供便捷的服务,用户通过运用地图,在地图上输入想去的地方的地址就能找到。
通过Android的百度地图应用系统,与传统WEB应用进行良好的互补。
在移动手机大面积普及应用的时代,为了满足人们在外面快速找到想要去的地点,很多软件开发员开发了新的地图导航系统,其中最为成功和典型的一个就是手机的GPS功能,这能够大量的减少人们寻找地点的时间成本,不断满足人们快速生活节奏的客观需求,因此终端上的地点定位的地图的相关软件的应用能够产生很大的实际效用,尤其是在手机Android系统上的地图系统的开发。
1.2 课题意义在日益创新的网络技术促进下,我国的通讯技术已经进入第四代,4G时代的到来,让人们享受到了更快速的网络传输速度和便捷的移动通讯。
在现在的社会,手机已经成为了人们日常生活中不可缺少的一部分。
随着现代科技的进步和人们生活质量的不断地提高,普通只可以打电话发信息手机已经无法满足人们的要求,手机在时代的发展中不断更新换代,开发者们使得手机变得更加人性化和智能化,于是产生了智能手机。
从人们对智能手机的使用率反复的调查研究来看,可以说智能手机使用率在现代社会已经达到了90%以上,智能手机的功能也被开发得越来越人性化,人们可以通过手机完成很多的需求,可以说人们的生活已经离不开智能手机了。
现在人们更多的使用Andriod平台来帮助人们解决问题,因此由这个课题扩展开来,延伸并广泛的使用在百度地图API对Android系统的结合中,由于对地址查询最原始方式是使用PC版的百度地图,相比之下,显得就很麻烦,人们不可能随身携带电脑,并且不能保证电脑随时随地都能够用有线或WIFI的方式上网,但是在手机上,人们只需要在Andriod手机上下载这个系统,就能选择搜索想去的地址,使得出行找路变得更加方便快捷。
1.3 研究现状从手机等移动终端逐步为人们的生活带来越来越多的便利,不断涌现出来的手机地图系统软件为在外急需找到某个地点的人提供了途径,节约了时间也提高了效率。
因此手机地图软件的相关研究在学术研究中逐步显现,其中包括很多数据市场研究和应用研究。
在数据研究手机地图系统软件的报告中,中国IT研究中心的相关研究就对现在市场中市场份额排名前几位的地图软件展开,它们通过市场调查,对前几位的软件进行了排名,据结果显示,现排名第一的是百度手机地图,其市场份额高达55.2%,更多的人愿意用百度手机地图来进行地图搜索,排名第二的是高德地图,其市场份额是20.7%,排名第三的是搜狗地图,市场份额为占了6.3%。
研究者们还对我国的智能手机使用情况进行了分析论述,他们都认为大量普及使用的职能手机作为手机地图软件的使用载体,普及率的高低将直接影响软件的使用情况,据研究显示,我国的智能手机用户已经接近人口的一半,达到7.15亿人,这为手机地图软件的应用推广提供了基础。
1.4 研究内容1.地点搜索和位置定位在手机地图软件中,用户可以随意搜索想要去的地点,手机软件将会把用户需要的街道、道路等内容进行详细的显示,用户可以通过简单的GPRS定位,让手机自动显示当前所在位置,在根据当前的位置规划出最佳的路线,供用户参考。
2.路线规划跟电脑地图搜索查询结果相同,手机地图软件的规划结果,也将随着用户的选择的不同而不同,用户可选择步行、公交或驾车其中一种模式。
3.公交线路查询在手机地图软件的查询结果中,用户只需简单的输入起点和终点,在选择公交模式,用户将轻松的得到多条线路信息。
4.GPS导航手机地图软件还可提供智能的导航功能,用户在输入终点和起点后,将进入导航模式。
第2章课题设计相关技术2.1 Java语言作为被开发人员常用的开发语言之一的Java语言,是一种能够实现跨平台应用的设计语言,被广泛应用的Java语言,性能很好、稳定性高、效率高,所以被很多开发人员采用,现在我们用的很多的软件都是用Java语言开发出来的,移动电话、个人电脑、平板电脑等终端上的很多软件都是在Java开发出来的。
Java语言是Sun公司开发出来的,是一种能够被开放使用的技术,Sun 公司对Java 编程语言的解释是:Java语言是一种动态的编程语言,具有很好的性能,安全性高,试用对象广泛,编程方式简单,可进行移植。
2.2 Android架构现在我们的智能手机主要采用的系统有3类,一是苹果系统,二是安卓系统,三是塞班系统,本文主要在这里解析安卓系统。