在运行时更改目标坐标(动态)

时间:2016-08-13 23:11:08

标签: android google-maps navigation geolocation android-gps

我想编写一个Android应用程序,其中用户A 可以自行导航到用户B(使用Google地图及其导航器)。 但我希望我的Android应用程序更新用户B 的坐标并实时发送给用户A

我的问题是: 用户A 是否有办法检索更新的坐标 AND 没有获取每次用户B改变其位置时计算的新路线?

由于我希望我的用户B 每隔15米发送一个新坐标,如果用户A 每次都计算出一条新路线,那将会很糟糕。

1 个答案:

答案 0 :(得分:1)

您可以在渲染器上使用setDirection()方法并将其传递给DirectionsResult。 DirectionsResult包含路线查询的结果,您可以自己处理,可以自动处理在地图上显示结果。渲染器是MVCObject,它会自动检测其属性的任何更改,并在关联的方向发生变化时更新地图。

以下示例计算路线上两个位置之间的路线,其中原点和目的地由给定的" start"设置。和"结束"下拉列表中的值。 DirectionsRenderer处理指定位置之间折线的显示,以及原点,目的地和任何航点上标记的位置(如果适用)。

function calcRoute() {
  var start = document.getElementById('start').value;
  var end = document.getElementById('end').value;
  var request = {
    origin: start,
    destination: end,
    travelMode: 'DRIVING'
  };
  directionsService.route(request, function(result, status) {
    if (status == 'OK') {
      directionsDisplay.setDirections(result);
    }
  });