百度map android sdk3.5实现定位 并跳转的指定坐标,加入标记
前几天又下载了新的百度地图sdk,3.5版本号。发现百度地图api有了较大变化
定位和3.0版本号差点儿相同
可是设置地图中心和加入maker标记有较大变化
设置地图中心点
// 定义地图状态zoom表示缩放级别3-18
MapStatus mMapStatus = new MapStatus.Builder().target(cenpt)
.zoom(14).build();
// 定义MapStatusUpdate对象。以便描写叙述地图状态将要发生的变化
MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory
.newMapStatus(mMapStatus);
// 改变地图状态
// 开启定位图层
mMapView.getMap().setMapStatus(mMapStatusUpdate);
加入maker标记
// 定义Maker坐标点
// 构建Marker图标
BitmapDescriptor bitmap = BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher);
// 构建MarkerOption,用于在地图上加入Marker
OverlayOptions option = new MarkerOptions().position(cenpt).icon(
bitmap);
// 在地图上加入Marker,并显示
mMapView.getMap().clear();
mMapView.getMap().addOverlay(option);
mLocationClient.stop();
完整代码例如以下
public class MapActivity extends BaseActivity {
MapView mMapView;
public LocationClient mLocationClient = null;
public BDLocationListener myListener = new MyLocationListener();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
SDKInitializer.initialize(getApplicationContext());
setContentView(R.layout.activity_mapview);
mMapView = (MapView) findViewById(R.id.bmapView);
mLocationClient = new LocationClient(getApplicationContext()); // 声明LocationClient类
mLocationClient.registerLocationListener(myListener); // 注冊监听函数
mLocationClient.start();
}
@Override
protected void onDestroy() {
super.onDestroy();
// 在activity运行onDestroy时运行mMapView.onDestroy()。实现地图生命周期管理
mMapView.onDestroy();
mLocationClient.stop();
}
@Override
protected void onResume() {
super.onResume();
// 在activity运行onResume时运行mMapView. onResume ()。实现地图生命周期管理
mMapView.onResume();
}
@Override
protected void onPause() {
super.onPause();
// 在activity运行onPause时运行mMapView. onPause (),实现地图生命周期管理
mMapView.onPause();
}
public class MyLocationListener implements BDLocationListener {
@Override
public void onReceiveLocation(BDLocation location) {
if (location == null)
return;
StringBuffer sb = new StringBuffer(256);
sb.append("time : ");
sb.append(location.getTime());
sb.append("\nerror code : ");
sb.append(location.getLocType());
sb.append("\nlatitude : ");
sb.append(location.getLatitude());
sb.append("\nlontitude : ");
sb.append(location.getLongitude());
sb.append("\nradius : ");
sb.append(location.getRadius());
if (location.getLocType() == BDLocation.TypeGpsLocation) {
sb.append("\nspeed : ");
sb.append(location.getSpeed());
sb.append("\nsatellite : ");
sb.append(location.getSatelliteNumber());
} else if (location.getLocType() == BDLocation.TypeNetWorkLocation) {
sb.append("\naddr : ");
sb.append(location.getAddrStr());
}
System.out.println("" + sb.toString());
LatLng cenpt = new LatLng(location.getLatitude(),
location.getLongitude());
// 定义地图状态zoom表示缩放级别3-18
MapStatus mMapStatus = new MapStatus.Builder().target(cenpt)
.zoom(14).build();
// 定义MapStatusUpdate对象,以便描写叙述地图状态将要发生的变化
MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory
.newMapStatus(mMapStatus);
// 改变地图状态
// 开启定位图层
mMapView.getMap().setMapStatus(mMapStatusUpdate);
// 定义Maker坐标点
// 构建Marker图标
BitmapDescriptor bitmap = BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher);
// 构建MarkerOption。用于在地图上加入Marker
OverlayOptions option = new MarkerOptions().position(cenpt).icon(
bitmap);
// 在地图上加入Marker,并显示
mMapView.getMap().clear();
mMapView.getMap().addOverlay(option);
mLocationClient.stop();
}
}
}
百度map android sdk3.5实现定位 并跳转的指定坐标,加入标记的更多相关文章
- 百度地图 Android SDK - Hello Baidu Map
例如,给广大以下主要开发者介绍了如何使用百度地图Android SDK构造的主应用程序的地图! 第一步.创建Androidproject,将百度地图Android SDK的开发包导入到project对 ...
- [android学习]__使用百度地图开放api编写地图定位app
前言 在前面我已经记录关于如何使用百度地图api,以及如何配置相关的androidstudio配置了,接下来将记录如何使用百度地图api开发简单的地图定位apk,我将决定不定期持续更新本篇笔记,在每个 ...
- Android学习-- 基于位置的服务 LBS(基于百度地图Android SDK)--定位SDK
原文:Android学习-- 基于位置的服务 LBS(基于百度地图Android SDK)--定位SDK 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.ne ...
- H5结合百度map实现GPS定位
前言 目前我们做m端时都会用到定位,当用户第一次打开h5页面时会启动gps定位,并结合百度map来查找城市.按照我们的逻辑思路就是gps定位获取经纬度,传到后台调用百度的一个接口查找城市名称. 1.查 ...
- mono for android 百度map binding项目(转)
好丫小子之前发布过百度地图android SDK的mono for android绑定dll,许多朋友看过之后说想理解是怎么绑定的,现我把绑定的代码发出来. 针对2.1.2版本百度地图android ...
- 手机版的百度map封装,使用gps定位
代码如下,包自己引 包参考 一个百度MAP导航的基础封装 使用的是浏览器调用gps定位 修改了标注的大小 效果如图: 代码...... <!DOCTYPE html> <html&g ...
- 百度地图 Android SDK - 检索功能使用的简单演示样例
百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ...
- 一个百度MAP导航的基础封装
项目中需要根据点击时候点击的内容,输入百度地图查找并展示规划等相关功能 于是封装了一个单独的百度map的html页面以供调用 功能包括了 ①展示底图 ②切换卫星图,切换卫星路线图,切换普通地图 ③通过 ...
- 百度地图 Android SDK - 标注(Marker)的基本使用
标注(Marker)是开发人员最常使用的地图覆盖物志一.今天就来向大家介绍一些标注(Marker)的最基本用法! 实现目标: 1.构建基础地图页面: 2.在地图的中心点处加入 Marker: 3.实现 ...
随机推荐
- linux命令:ftp
1. 登录: ftp IP_ADDR : 根据提示输入USER_NAME PASS_WORD 或: ftp -i -n IP_ADDR user USER_NAME PASS ...
- Qt生成灰度图(转载)
Qt生成灰度图(转载) 项目中用到大量基础图像处理知识,其中灰度图的生成是很重要的一环. 先补充一些基础知识: ------------------------------------------ ...
- 如何安装(装载)axure组件(部件)
我们在网络上经常可以下载到很多网友精心设计的axure组件,这些组件给我们节省了很多的时间,方便了我们进行原型设计,可是对于很多刚刚接触axure的朋友就遇到了2个问题: 第一:到哪里去下载这些组件 ...
- (5/9)*(f-32)与5*(f-32)/9
今天在Linux下用c语言写个小程序玩玩,主要就是根据华氏温度计算摄氏温度.公式是:摄氏度=(5/9)*(华氏度-32) 代码很简单~ #include<stdio.h> main() { ...
- android——写xml
在PersonService的基础上,加上savePersons(·····),这时的PersonService为: package com.njupt.xml; import java.io.Fil ...
- 在Java中使用MD5和BASE64
MD5: 在上一篇<Servlet的学习之Session(5)>中,为了能使获取的所有随机数都能有相同的位数,我们采用MD5获取随机数的消息摘要(或称数据指纹.数据摘要等等). MD5可以 ...
- Net基础恶补
一 自定义事件 1 之前一直都是使用事件调用来触发事件,看代码 // 定义一个事件 public event EventHandler; //触发事件 public void OnEvent(){ i ...
- 流式计算-Jstorm提交Topology过程(上)
Topology是Jstorm对有向无环图的抽象,内部封装了数据来源spout和数据处理单元bolt,以及spout和bolt.bolt和bolt之间的关系.它能够被提交到Jstorm集群. 本文以J ...
- HDU 1863 畅通project (最小生成树是否存在)
题意 中文 入门最小生成树 prim大法好 #include<cstdio> #include<cstring> using namespace std; const int ...
- PreferenceActivity使用示例
MainActivity如下: package cn.testpreferenceactivity; import android.content.SharedPreferences; import ...