Google maps 如何将lat和lng从onMyLocationChange发送到OnMaReady?
我正在为Android设计谷歌地图应用程序。在这个应用程序中,我喜欢使用用户的纬度和经度进行计算。但是,我不能使用这些数据,因为它们不能在4月1日公开作废 我试过几种方法,比如: 1.意图 2.共享引用 3.捆 4.甚至尝试将这些数据保存到SQLite,并在4月1日将其公开作废 所有这些方法似乎都是无用的Google maps 如何将lat和lng从onMyLocationChange发送到OnMaReady?,google-maps,android-studio,Google Maps,Android Studio,我正在为Android设计谷歌地图应用程序。在这个应用程序中,我喜欢使用用户的纬度和经度进行计算。但是,我不能使用这些数据,因为它们不能在4月1日公开作废 我试过几种方法,比如: 1.意图 2.共享引用 3.捆 4.甚至尝试将这些数据保存到SQLite,并在4月1日将其公开作废 所有这些方法似乎都是无用的 private GoogleMap.OnMyLocationChangeListener myLocationChangeListener = new GoogleMap.OnMyLocat
private GoogleMap.OnMyLocationChangeListener myLocationChangeListener = new GoogleMap.OnMyLocationChangeListener() {
@Override
public void onMyLocationChange(Location location) {
LatLng loc = new LatLng(location.getLatitude(), location.getLongitude());
if(mMap != null){
mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(loc, 10));
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(loc)
.zoom(16)
.bearing(0)
.tilt(30)
.build();
mMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
getLocation = location;
lat = getLocation.getLatitude();
lng = getLocation.getLongitude();
latitude = Double.toString(lat);
longitude= Double.toString(lng);
}
}
};
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
mMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);
mMap.setMyLocationEnabled(true);
mMap.setTrafficEnabled(false);
mMap.setIndoorEnabled(false);
mMap.setBuildingsEnabled(true);
mMap.getUiSettings().setScrollGesturesEnabled(true);
mMap.getUiSettings().setCompassEnabled(false);
mMap.getUiSettings().setMyLocationButtonEnabled(true);
mMap.setOnMyLocationChangeListener(myLocationChangeListener);
Toast.makeText(getApplicationContext(), "", Toast.LENGTH_SHORT).show();
}
我能做什么?仅在地图准备好使用时调用。例如,当您的地图显示在屏幕上时。如果您先将纬度和经度保存到SharedReferences,则在再次创建地图活动时(例如,您的应用程序被关闭并再次启动),可以使用onMapReady()
中的数据。但是,如果不需要再次创建地图活动,则不会再次调用onMapReady()
。另外,在代码示例中,它没有显示如何使用SharedReference。仅在地图准备好使用时调用。例如,当您的地图显示在屏幕上时。如果您先将纬度和经度保存到SharedReferences,则在再次创建地图活动时(例如,您的应用程序被关闭并再次启动),可以使用onMapReady()
中的数据。但是,如果不需要再次创建地图活动,则不会再次调用onMapReady()
。另外,在代码示例中,它没有显示如何使用SharedReference。