android百度地图-定位并显示位置信息

本文介绍了如何在Android应用中使用百度地图API进行定位,并显示位置信息。包括了项目结构、key的获取步骤、代码实现细节,以及可能遇到的问题。虽然在debug模式下运行正常,但在某些情况下可能会显示异常。建议参考百度地图官方demo以获取更详细信息和更多功能。
摘要由CSDN通过智能技术生成
  1. 项目结构图

2.key的获取

点击打开链接

3.代码实现

BaiduMapActivity.java

package com.barricelli.map;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.util.AttributeSet;
import android.util.Log;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

import com.baidu.location.BDLocation;
import com.baidu.location.BDLocationListener;
import com.baidu.location.LocationClient;
import com.baidu.location.LocationClientOption;
import com.baidu.mapapi.BMapManager;
import com.baidu.mapapi.map.LocationData;
import com.baidu.mapapi.map.MapController;
import com.baidu.mapapi.map.MapView;
import com.baidu.mapapi.map.MyLocationOverlay;
import com.baidu.mapapi.map.PopupClickListener;
import com.baidu.mapapi.map.PopupOverlay;
import com.baidu.mapapi.search.MKAddrInfo;
import com.baidu.mapapi.search.MKBusLineResult;
import com.baidu.mapapi.search.MKDrivingRouteResult;
import com.baidu.mapapi.search.MKPoiResult;
import com.baidu.mapapi.search.MKSearch;
import com.baidu.mapapi.search.MKSearchListener;
import com.baidu.mapapi.search.MKShareUrlResult;
import com.baidu.mapapi.search.MKSuggestionResult;
import com.baidu.mapapi.search.MKTransitRouteResult;
import com.baidu.mapapi.search.MKWalkingRouteResult;
import com.baidu.platform.comapi.basestruct.GeoPoint;

public class BaiduMapActivity extends Activity {
	//定位相关
	public MyLocationListenner myListener = new MyLocationListenner();
	private LocationClient client= null;
	private LocationData locData =null;
	private BMapManager mBMapMan = null;
	//定位图层
	locationOverlay myLocationOverlay = null;
	//弹出泡泡图层
	private PopupOverlay   pop  = null;//弹出泡泡图层,浏览节点时使用
	private TextView  popupText = null;//泡泡view
	private View viewCache = null;
	
	//地图相关,使用继承MapView的MyLocationMapView目的是重写touch事件实现泡泡处理
	//如果不处理touch事件,则无需继承,直接使用MapView即可
	MyLocationMapView mMapView = null;	// 地图View
	private MapController mMapController = null;
	
	//搜索相关
	MKSearch mSearch = null;	// 搜索模块,也可去掉地图模块独立使用
		
	//UI相关
	boolean refreshLoc = true;	//更新
	private Button loc = null;//定位按钮
	
	private String locText = "当前位置";		//泡泡跳起显示位置
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		mBMapMan=new BMapManager(getApplication());  
		mBMapMan.init("Y9rq9hrIyx55uz4LbS1dhFfx", null);    
		//注意:请在试用setContentView前初始化BMapManager对象,否则会报错 
		setContentView(R.layout.activity_baidu_map);
		CharSequence titleLable="定位功能";
        setTitle(titleLable);
        loc = (Button)findViewById(R.id.loc);
        OnClickListener locClickListener = new OnClickListener() {
        	public void onClick(View v) {
        		requestLocClick();
        	}
        };
        loc.setOnCli
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值