为什么我的位置和标记位置不同?在添加标记之前,我单击浮动按钮,当我单击它时,我从getLatitude
调用getLongitude
和LocationManager
。它类似于地图就绪并移动相机,所以我认为标记和mylocation必须相同:
这是我的代码:
private class MyLocationListeners implements LocationListener {
@Override
public void onLocationChanged(Location location) {
longitude = null;
latitude = null;
longitude = String.valueOf(location.getLongitude());
Log.d(TAG, "onLocationChanged1: " + longitude);
latitude = String.valueOf(location.getLatitude());
Log.d(TAG, "onLocationChanged2: " + latitude);
}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onProviderDisabled(String provider) {
}
}
我设置MyLocationListener
的代码:
locationListener = new MyLocationListeners();
locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,
5000,
10,
locationListener
);
答案 0 :(得分:0)
My location layer使用它自己的位置提供程序,它不是融合位置提供程序,也不是位置管理器。来自the documentation:
GoogleMap对象的my-location图层有一个内置的位置提供程序,但可以用另一个实现此接口的地图提供程序替换它。
此外,我的位置图层,融合位置提供商和位置管理器可以获得不同的位置(取决于提供商,GPS和网络可用性,......)。
您可以使用GoogleMap.setLocationSource
方法替换my-location图层的默认位置提供程序。