Android开放百度地图集成
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开放百度地图集成的更多相关文章
- Android studio 百度地图开发(2)地图定位
Android studio 百度地图开发(2)地图定位 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...
- Android使用百度地图出现闪退及定位时显示蓝屏问题
目录 1.Android使用百度地图出现闪退 2.Android使用百度地图定位出现蓝屏问题 1.Android使用百度地图出现闪退 一般情况下出现闪退是在AndroidManifest.x ...
- Android studio百度地图demo出现230错误,key校验失败
转自daoxiaomianzi原文 Android studio 百度地图demo出现230错误,key校验失败 使用AndroidStudio导入Baidu地图的as版的demo,引入后,发现没有k ...
- Android studio 百度地图开发(3)地图导航
Android studio 百度地图开发(3)地图导航 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...
- Android端百度地图API使用详解
百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口,通过该接口,可以轻松的访问百度服务和数据,构建功能丰富.交互性强的地图应用程序. 百度地图移动版A ...
- android编程——百度地图初探
项目需要,花了一天时间研究了下百度地图的API,其实看起来可能会有点困难,但是将它的DEMO跑起来之后一切都迎刃而解的样子了.百度方面讲地图的接口封装的挺不错的,而且现在能够提供的地图的服务也有将近十 ...
- android使用百度地图SDK获取定位信息
本文使用Android Studio开发. 获取定位信息相对简单.我们仅仅须要例如以下几步: 第一步,注冊百度账号,在百度地图开放平台新建应用.生成API_KEY.这些就不细说了,请前往这里:titl ...
- 【转载】Android端百度地图API使用详解
转载地址:http://www.cnblogs.com/rocomp/p/4994110.html 百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口 ...
- Android通过百度地图API用Service和Alarm在后台定时获取地理位置信息
本文主要介绍了Android项目集成百度地图API,使用AlarmManager定时调用Service,在Service中请求坐标更新,并通过坐标得到省.市和县三级地理位置信息的方法. 程序结构很简单 ...
随机推荐
- 洛谷——P3833 [SHOI2012]魔法树
P3833 [SHOI2012]魔法树 题目背景 SHOI2012 D2T3 题目描述 Harry Potter 新学了一种魔法:可以让改变树上的果子个数.满心欢喜的他找到了一个巨大的果树,来试验他的 ...
- 18清明校内测试T1
消失的数字(number) Time Limit:1000ms Memory Limit:128MB 题目描述 rsy拥有n个数,这n个数分别是a1,a2,…,an. 后来出现了一个熊孩子zhw, ...
- python最好用的IDE及查看源码的方法
一.PyCharm 很多语言都有比较流行的开发工具,比如JAVA 的Eclipse, C#,C++的VisualStudio,最好的Python 开发IDE就是PyCharm 可以直接调试代码,试运行 ...
- UVa - 12661 - Funny Car Racing
先上题目: 12661 Funny Car RacingThere is a funny car racing in a city with n junctions and m directed ro ...
- 并行输入\输出控制器之我见(PIO)
中断信号FIQ及IRQ0到IRQn一般通过PIO控制器复用.但是,由于PIO控制器对于输入无效且中断线(FIQ或IRQ)仅作为输入,因此不必为中断分配I/0线. 电源管理控制器控制P ...
- MFS搭建
MooseFS是一个分布式存储的框架,其具有如下特性: 1.Free(GPL) 2.通用文件系统,不需要修改上层应用就可以使用 3.可以在线扩容,体系架构可伸缩性极强. ...
- [转]十五天精通WCF——第四天 你一定要明白的通信单元Message
转眼你已经学了三天的wcf了,是不是很好奇wcf在传输层上面到底传递的是个什么鸟毛东西呢???应该有人知道是soap,那soap这叼毛长得是什么 样呢?这一篇我们来揭开答案... 一:soap到底长成 ...
- 《从零開始学Swift》学习笔记(Day60)——Core Foundation框架
创文章,欢迎转载.转载请注明:关东升的博客 Core Foundation框架是苹果公司提供一套概念来源于Foundation框架,编程接口面向C语言风格的API.尽管在Swift中调用这样的C语 ...
- json、js数组真心不是想得那么简单
之前因为做前台的东西比較少,对于json和js数组的认识仅局限于一种固定格式.这样的固定的思维在开发前台时,特别是近期使用highcharts插件时.让我感到特别不明确.通过查询最终心头的疙瘩解开了. ...
- 改动虚拟机镜像的rootpassword
有时从网上下载的虚拟机镜像.没有rootpassword,必须通过秘钥登录.然后秘钥又须要麻烦的注入到里面去.想用,却无法登录.非常头痛.本文提供一种通过改动虚拟机镜像里面的/etc/shadow文件 ...