Android-使用google maps api动态更改标记的位置

Android-使用google maps api动态更改标记的位置,android,google-maps,google-maps-markers,marker,Android,Google Maps,Google Maps Markers,Marker,我正在编写一个应用程序来跟踪向服务器发送当前坐标(经度和纬度)的设备。我正在尝试使用谷歌地图api不断更新我地图上的标记。然而,我在这方面一直很不成功 我正在解析来自服务器的数据,以便获得更新标记所需的坐标。但是,如果我执行marker.remove()或marker.setPosition(lationgi),应用程序将只绘制从服务器解析的最后一个坐标 如果任何人对如何实现运行android应用程序并看到标记动态变化的效果有任何见解,将不胜感激 提前感谢听起来您想使用animateCamera

我正在编写一个应用程序来跟踪向服务器发送当前坐标(经度和纬度)的设备。我正在尝试使用谷歌地图api不断更新我地图上的标记。然而,我在这方面一直很不成功

我正在解析来自服务器的数据,以便获得更新标记所需的坐标。但是,如果我执行marker.remove()或marker.setPosition(lationgi),应用程序将只绘制从服务器解析的最后一个坐标

如果任何人对如何实现运行android应用程序并看到标记动态变化的效果有任何见解,将不胜感激


提前感谢

听起来您想使用
animateCamera()
updateCamera()

您可以在下面找到一些详细信息,但基本上,如果您知道地图的新中心,您将执行以下操作:

public void centerMapAt(LatLng latLng) {
    mMap.animateCamera(CameraUpdateFactory.newLatLng(latLng));
}

有很多选择


您可以使用此按钮移动带有动画的标记。使用此按钮:

  /**
   * @param marker the operation marker
   * @param finalPosition the destination latlng
   * @param latLngInterpolator interpolator of animation
   */
static void animateMarkerToICS(Marker marker, LatLng finalPosition, final LatLngInterpolator     latLngInterpolator)
代码如下:

视频:

当您使用
marker.setPosition(latilongi)
时会发生什么?它只会将标记设置为从服务器解析的最后一个位置,并且不会在最终位置之前的位置显示标记,因此您希望以前的标记与新添加的标记一起出现。对吗???不是真的,我想让标记像当前位置标记一样,因为当你的位置发生变化时,它会不断移动。哦,完全困惑了…这不是你现在真正得到的吗???好的,谢谢。我要试试看!我从onCreate()方法调用此方法是否正确?我想每次从服务器获得新位置时都会调用此方法。我所做的是在地图处于活动状态时每10秒轮询一次我的服务器,因此每10秒我会获得一个新位置,然后更新我的标记,并通过cameraAnimate(新位置)重新居中地图;
  /**
   * @param marker the operation marker
   * @param finalPosition the destination latlng
   * @param latLngInterpolator interpolator of animation
   */
static void animateMarkerToICS(Marker marker, LatLng finalPosition, final LatLngInterpolator     latLngInterpolator)