现在百度把地图和定位的SDK分开发布,所以在资源包整合的时候,android studio可能会报错,因为api包冲突,解决方法是下载资源包的时候
整合下载
勾选需要的功能,一次下载下来
1、jar包放在libs里面,然后添加依赖File-project structure-dependencies-add file dependencies,勾选jar包
2、在src-main下面新建jniLibs,把整个armeabi文件夹放进去
然后后续步骤就可以参照上面网址里的开发指南进行了
另外,第一行代码上面的利用MapController进行地图控制的方法好像行不通了,下的最新的SDK里面这个类都消失了,似乎这些操作改成
BaiduMap类来执行了,例如刷新定位地图:
public BDLocationListener myListener = new MyLocationListener() {
@Override
public void onReceiveLocation(BDLocation location) {
super.onReceiveLocation(location);
// map view 销毁后不在处理新接收的位置
if (location == null || mapView == null)
return;
MyLocationData locData = new MyLocationData.Builder()
.accuracy(location.getRadius())
// 此处设置开发者获取到的方向信息,顺时针0-360
.direction(100).latitude(location.getLatitude())
.longitude(location.getLongitude()).build();
mBaiduMap.setMyLocationData(locData);
LatLng ll = new LatLng(location.getLatitude(),
location.getLongitude());
MapStatusUpdate u = MapStatusUpdateFactory.newLatLng(ll);
mBaiduMap.animateMapStatus(u);
}
};