1、创建应用 获取AK (我理解为Application key)

   通过百度账号登录百度地图开放平台,进入API控制台 http://lbsyun.baidu.com/apiconsole/key 创建自己的应用,输入应用名称 ,选择Android SDK 应用类型,选择需要的服务(默认全选) 输入签名文件的SHA1,默认的签名文件debug.keystore 在 C:\Users\你的用户\.android下,然后打开控制台cd到此目录下 键入 keytool -v -list -keytore debug.keystore,就可以获取签名文件的SHA1了 注意复制时不要有空格,然后输入应用的包名,也不要输入错了,系统自己生成安全码,提交就创建完成了。

2、下载SDK,集成到自己的项目

  选择需要的服务类型,然后下载SDK 也可以下载demo,http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download,下载完成后解压,将lib下面的jar和so文件放入工程的libs下面,compile fileTree(include: ['*.jar'], dir: 'libs') build.grade下有这个语句 就只需要 在android下添加 sourceSet{main {jniLib.Dir('libs')}}就可以了 这个地方百度开发文档说的有点模糊,也可以自己创建jniLib文件夹添加so文件,但不要同时都做。

  然后在清单文件中添加权限 service(定位需要)mata(只需要改自己的ak就行),注意也别放错位置了。百度开发文档都有不在粘贴 http://lbsyun.baidu.com/index.php?title=androidsdk/guide/hellobaidumap。

3、展示地图 定位 添加覆盖物 地理编码等

  在自己的xml文件中引入mapview,在Java代码中 初始化地图的SDK  SDKInitializer.initialize(getApplicationContext());获取mapview并且在activity的生命周期中实现mapview的周期 ,到目前位置,运行应用就可以看到地图的效果了,北京。

  通过LocationClient 、BaiduMap、BDLocationListener实现定位功能 通过mapview获取baidumap 设置LocationClient 的参数 和监听器 ,实现BDLocationListener接口,然后开启定位 LocationClient.start(),通过接口回调的location就能获取位置等信息 。

  通过纬度和经度改变地图所显示的位置和添加自己位置

    a、移动地图的位置  LatLng ll = new LatLng(location.getLatitude(),        location.getLongitude());  MapStatusUpdate update = MapStatusUpdateFactory.newLatLng(ll);  // 移动到某经纬度  mBaiduMap.animateMapStatus(update);

    b、添加自己的位置
  mBaiduMap.setMyLocationEnabled(true);  // 构造定位数据  MyLocationData locData = new MyLocationData.Builder()        .accuracy(location.getRadius())        // 此处设置开发者获取到的方向信息,顺时针0-360        .direction(100).latitude(location.getLatitude())        .longitude(location.getLongitude()).build();  // 设置定位数据  mBaiduMap.setMyLocationData(locData);

    c、通过mBaiduMap.addOverlay(option);添加覆盖物marker等 参考百度文档  //添加marker
  //构建Marker图标

  BitmapDescriptor bitmap = BitmapDescriptorFactory        .fromResource(drawable);  //构建MarkerOption,用于在地图上添加Marker  OverlayOptions option = new MarkerOptions()        .position(point)        .icon(bitmap);  //在地图上添加Marker,并显示  mBaiduMap.addOverlay(option);

  d、添加线等,pts为一个集合List<LatLng>
  OverlayOptions polylineOption = new PolylineOptions()        .points(pts).width(5).color(0XFFff0000)        ;  mBaiduMap.addOverlay(polylineOption);

  e、地理编码 输入一个位置返回经纬度
  mSearch = GeoCoder.newInstance();获取实例对象 设置监听器,实现监听器接口OnGetGeoCoderResultListener ,回调的result就可以获取信息 ,注意都是异步的,当然也有反地理编码。

 百度地图实现的功能很多,你能想到的 所需要的 都能提供。

												

Android开放百度地图集成的更多相关文章

  1. Android studio 百度地图开发(2)地图定位

    Android studio 百度地图开发(2)地图定位 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...

  2. Android使用百度地图出现闪退及定位时显示蓝屏问题

     目录 1.Android使用百度地图出现闪退 2.Android使用百度地图定位出现蓝屏问题     1.Android使用百度地图出现闪退 一般情况下出现闪退是在AndroidManifest.x ...

  3. Android studio百度地图demo出现230错误,key校验失败

    转自daoxiaomianzi原文 Android studio 百度地图demo出现230错误,key校验失败 使用AndroidStudio导入Baidu地图的as版的demo,引入后,发现没有k ...

  4. Android studio 百度地图开发(3)地图导航

    Android studio 百度地图开发(3)地图导航 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...

  5. Android端百度地图API使用详解

    百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口,通过该接口,可以轻松的访问百度服务和数据,构建功能丰富.交互性强的地图应用程序. 百度地图移动版A ...

  6. android编程——百度地图初探

    项目需要,花了一天时间研究了下百度地图的API,其实看起来可能会有点困难,但是将它的DEMO跑起来之后一切都迎刃而解的样子了.百度方面讲地图的接口封装的挺不错的,而且现在能够提供的地图的服务也有将近十 ...

  7. android使用百度地图SDK获取定位信息

    本文使用Android Studio开发. 获取定位信息相对简单.我们仅仅须要例如以下几步: 第一步,注冊百度账号,在百度地图开放平台新建应用.生成API_KEY.这些就不细说了,请前往这里:titl ...

  8. 【转载】Android端百度地图API使用详解

    转载地址:http://www.cnblogs.com/rocomp/p/4994110.html 百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口 ...

  9. Android通过百度地图API用Service和Alarm在后台定时获取地理位置信息

    本文主要介绍了Android项目集成百度地图API,使用AlarmManager定时调用Service,在Service中请求坐标更新,并通过坐标得到省.市和县三级地理位置信息的方法. 程序结构很简单 ...

随机推荐

  1. 使用Robo 3T 软件管理MongoDB数据库如何执行命令行shell

    比如使用命令行的方式查看数据库runoobdb中的sites集合(数据表)中的所有数据 1.在连接名的地方鼠标右键选择“open shell” 2.在出现的shell窗口中输入一下命令行,然后按ctr ...

  2. MySQL多表连接操作

    select * from userinfo ,dapartment where userinfo.part_id = dapartment.id; --左连接: 左边全部显示 select * fr ...

  3. oi的小转折

    2018.6.4,衡水中学oier——Yu-shi,真正的走入了外网领域. 从最开始的连scanf都不打取地址,到现在懂了好多以前不敢去看的东西,心态逐渐的成长了.也许有过特别迷茫的时候,也许将来会有 ...

  4. C# 通俗说 内存的理解

    一.概念 堆栈是什么? 在说堆栈之前,先说说内存是神马? 内存:程序在运行的过程,电脑需要不断通过CPU进行计算,这个计算的过程会读取并产生运算的数据,这些数据需要一个存储容器存放.这个容器,这就是内 ...

  5. 【郑轻邀请赛 F】 Tmk吃汤饭

    [题目链接]:https://acm.zzuli.edu.cn/zzuliacm/problem.php?id=2132 [题意] [题解] 很容易想到用队列来模拟; 这个队列维护的是正在煮的4个人煮 ...

  6. Caffe 工程的一些编译错误以及解决方案

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51371936 整理一下最近遇到caff ...

  7. HBase(0.96)新的Java API操作

    package test; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.ap ...

  8. hibernate之一对多映射

    目录 第一章 课程简介 第二章 Hibernate中的单向一对多关联 2-1 一对多映射简介 2-2 hibernate的基础配置 2-3 创建HibernateUtil工具类 2-4 在mysql数 ...

  9. [转]十五天精通WCF——第八天 对“绑定”的最后一点理解

    转眼已经中断10几天没有写博客了,也不是工作太忙,正好碰到了端午节,然后最近看天津台的爱情保卫战入迷了...太好看了,一直都是回味无穷...而且 涂磊老师话说的真是tmd的经典,然后就这样耽搁了,好了 ...

  10. [MongoDB]Python 操作 MongoDB

    from pymongo import MongoClient mc = MongoClient('localhost',27017) db = mc.users db.users.save({'na ...