《Android程序设计教程》课件第十章GPS地图定位_第1页
《Android程序设计教程》课件第十章GPS地图定位_第2页
《Android程序设计教程》课件第十章GPS地图定位_第3页
《Android程序设计教程》课件第十章GPS地图定位_第4页
《Android程序设计教程》课件第十章GPS地图定位_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

第十章GPS地图定位目录10.1位置服务 10.1.1申请APIKey 10.1.2GPS定位 10.2显示百度地图 10.3百度地图定位 10.4百度地图检索 学习目标了解百度地图的位置服务掌握百度地图的显示掌握百度地图定位掌握百度地图检索10.1位置服务位置服务(LocationBasedServices,LBS),又称定位服务或基于位置的服务,融合了GPS定位、移动通信、导航等多种技术,提供了与空间位置相关的综合应用服务。位置服务首先在日本得到商业化的应用。10.1.1申请APIKey首先,登录你的百度账号,并打开/user/reg这个网址接下来,访问/apiconsole/key这个地址,同意百度开发者协议,会进入如图10.3所示的百度LBS开放平台主界面。由于这是一个刚刚注册的账号,所以目前的应用列表是空的,然后点击“创建应用”就可以去申请APIKey了,这个发布版的SHAI和开发版的SHAI是我们申请APIKey所必须填写的一个字段,它指的是打包程序时所用签名文件的SHAI指纹,可以通过AndroidStudio查看到。打开AndroidStudio中的任意一个项目,点击右侧工具栏的Gradle→项目名→:app→Tasks→android,如图10.5所示。这里展示了一个AndroidStudio项目中所有内置的GradleTasks,其中signingReport这个Task就可以用来查看签名文件信息。双击signingReport,10.1.2GPS定位在开始编码之前,我们还需要先将百度LBS开放平台的SDK准备好,下载地址是:/index.php?title=sdk/download&action#selected=mapsdk_basicmap,mapsdk_searchfunction,mapsdk_lbscloudsearch,mapsdk_calculationtool,mapsdk_radar,如图所示。将我们要用到的相应功能的开发包勾选上,然后点击“开发包”下载按钮即可。下载完成后对该压缩包解压,其中会有一个libs目录,这里面的内容就是我们所需要的,如图所示。libs目录下的内容分为两部分,BaiduLBS_Android.jar这个文件是Java层要使用到的,其他子目录下的so文件是Native层要用到的。so文件是用C/C++语言进行编写,然后再用NDK编译出来的,已经是百度封装好了的,我们主要将libs目录下的每一个文件都放置到正确的位置即可。(1)通过AndroidStudio创建一个GPS为名称的应用项目,打开其项目结构,发现app模块下面有一个libs目录,这里就是用来存放所有的jar包的,我们将BaiduLBS_Android.jar复制到这里。(2)展开src/main目录,右击该目录→New→Directory,再创建一个名为jniLibs的目录,这里是专门用来存放so文件的,然后把压缩包里的所有目录直接复制到这里。由于我们是直接将jar包复制到libs目录下的,并没有修改gradle文件,因此不会弹出我们平时熟悉的SyncNow提示,这个时候必须手动点击一下AndroidStudio顶部工具栏中的Sync按钮,不然项目将无法引用到jar包中提供的任何接口。点击Sync按钮之后,libs目录下的jar文件就会多出一个向右的箭头,这就表示项目能够引用到这些jar包了。10.2显示百度地图(1)获取APIKEY。打开/apiconsole/key网址,创建一个新的应用ShowMap,并获取其APIKEY。(2)新建ShowMap工程,在libs目录下,配置BaiduLBS_Android.jar包,再创建一个名为jniLibs的目录,复制相关的文件到该目录下。10.3百度地图定位百度LBSSDK的API中提供了一个BaiduMap类,它是地图的总控制器,调用MapView的getMap()方法就能获取到BaiduMap的实例,例如:BaiduMapBaiduMap=mapView.getMap();MapStatusUpdateupdate=MapStatusUpdateFactory.zoomTo(12f);baiduMap.animateMapStatus(update);其中,MapStatusUpdateFactory类的zoomTo()方法接收一个float型的参数,就是用于设置缩放级别的。zoomTo()方法返回一个MapStatusUpdate对象,我们把这个对象传入BaiduMap类的animateMapStatus()方法当中,即可完成缩放功能。LatLng主要就是用于存放经纬度值的,它的构造方法接收两个参数,第一个参数是经度值,第二个参数是纬度值。之后调用MapStatusUpdateFactory类的newLatLng()方法将LatLng对象传入BaiduMap类的animateMapStatus()方法当中,就可以将地图移动到指定的经纬度上了,写法如下:LatLngll=newLatLng(29.553,106.236);MapStatusUpdateupdate=Map

温馨提示

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

评论

0/150

提交评论