我正在尝试完成这个看似非常简单的简单任务,但它仍然无法正常工作。我正在使用下面的方法,但手机会放大市中心,距离我的蓝色位置点大约 2 公里。
public void setUpMap() {
mGoogleMap.setMyLocationEnabled(true);
String context = Context.LOCATION_SERVICE;
LocationManager locationManager = (LocationManager)mContext.getSystemService(context);
Criteria criteria = new Criteria();
String provider = locationManager.getBestProvider(criteria, true);
Location myLocation = locationManager.getLastKnownLocation(provider);
double latitude = myLocation.getLatitude();
double longitude = myLocation.getLongitude();
LatLng latLng = new LatLng(latitude, longitude);
mGoogleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(latLng, 10));
}
我尝试设置不同的缩放值,但没有太大变化。我不确定是否应该设置 newLatLngBounds,因为每个人都说这是正确的方法。似乎我没有得到我当前的位置,而是我所在城市的位置。
最佳答案
新答案:-
mMap.setMyLocationEnabled(true);
Location myLocation = mMap.getMyLocation();
if (myLocation != null) {
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(
new LatLng(myLocation.getLatitude(), myLocation
.getLongitude()), 14));
}