最近做一个跟地图有关的app,总结一些在百度地图Location上遇到的问题;
百度地图定位的官网连接:http://developer.baidu.com/map/index.php?title=android-locsdk
官网的demo已经写的很详细了 这里主要介绍一下它的代码吧。
核心的两个方法:
private void getLocation () {
blocation = new LocationClient(this.getApplicationContext());
blocation.registerLocationListener(new BDLocationListener() {
@Override
public void onReceiveLocation(BDLocation location) {
if (location == null) return;
txtShowMyLoc.setText(location.getLatitude()+","+location.getLongitude());
}
});
setLocationOption();
blocation.start();
}
//这个主要是对该定位的一些设置
private void setLocationOption(){
LocationClientOption option = new LocationClientOption();
option.setLocationMode(LocationMode.Hight_Accuracy);
option.setOpenGps(true); //打开gps
option.setCoorType("bd09ll"); //设置坐标类型
option.setIsNeedAddress(true);//设置地址信息,默认无地址信息
option.setAddrType("all");
option.setScanSpan(500); //设置定位模式,小于1秒则一次定位;大于等于1秒则定时定位
blocation.setLocOption(option);
}
BDLocation location 查了一下官网api 提供了非常多的接口
这里还要注意一个问题就是
blocation.registerLocationListener(new BDLocationListener() {
@Override
public void onReceiveLocation(BDLocation location) {
if (location == null) return;
txtShowMyLoc.setText(location.getLatitude()+","+location.getLongitude());
}
});
这里的监听器是异步加载的
版权声明:本文为hawkoyates原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。