当做完显示地图这个步骤之后,将地图移动到我的位置这一步似乎没有发挥其作用,即总是定位在北京。
检查之后,我觉得是这部分代码可能出现了一些问题。
位置:onReceiveLocation函数
书上这个函数的代码是没有开启线程的,这样的话就不会移动到我的当前位置,所以一直都是北京区域。
所以的话,在此函数增加一条线程代码即可,亲测有效的。^- ^
public class MyLocationListener implements BDLocationListener {
@Override
public void onReceiveLocation(final BDLocation location) {
runOnUiThread(new Runnable() {
@Override
public void run() {
if (location.getLocType() == BDLocation.TypeGpsLocation || location.getLocType() == BDLocation.TypeNetWorkLocation) {
navigateTo(location);
}
}
});
}
}