使用“com.google.android.gms.maps.GoogleMap”,我可以在maps.google.com上绘制路线吗?

时间:2013-01-18 23:36:33

标签: android google-maps google-maps-android-api-2

我预计可以使用Google Maps for Android获取路线/在两点之间绘制路线(请注意:Google地图,而不是Google导航)。

我刚刚使用“com.google.android.gms.maps.GoogleMap”(使用MapFragment)工作,但我没有看到任何方法来绘制/获取两点之间的路线。所以我怀疑这不可能做到。

有人可以验证或拒绝吗? =)

我搜索了SO和谷歌,但没有发现任何与此相关的事情,所以我想我会问......

PS:我知道“谷歌导航”。它可以使用Intent来获取路径,但问题是我不能让它在我的应用程序中“内联”,这在某种程度上并不理想。所以我正在寻找地图。

2 个答案:

答案 0 :(得分:1)

  

但是我没有看到任何在两点之间绘制/获取路线的方法。所以我怀疑这不可能做到。

使用a Polyline绘制路线。

“获取路线”不是Maps V1的一部分,也不是Maps V2的一部分。您必须找到一些可以为您提供路线信息的Web服务。

此外,我强烈建议您让合格的法律顾问审查使用Maps V2的条款和条件,以确认您要执行的操作是否符合该协议的范围,该协议具有与提供导航帮助相关的特定条款

答案 1 :(得分:-1)

Google开发人员使用API​​ V2讨论了获取路由.API V1真的不是正确的答案。这就是API V2代码

public void setupLine(LatLng startLocation){
     //set up path
     PolylineOptions line=new PolylineOptions().add(startLocation).add(startLocation).color(mLineColour);
     mPath=mMap.addPolyline(line);
     mPath.setGeodesic(true);

     //Add 2 points
      pathPoints=new ArrayList<LatLng>(2);
      pathPoints.add(startLocation);//origin
      pathPoints.add(startLocation);//destination - updated later
    }

private void updateLine(LatLng position){
      //replace location
      pathPoints.set(1, position);

      //assign new points to path
      mPath.setPoints(pathPoints);

    }