【问题标题】:Driving Direction- Google Map行车路线 - 谷歌地图
【发布时间】:2012-05-17 23:15:23
【问题描述】:

我想绘制从源地理点到目标地理点的行驶方向路线。我用下面的代码尝试了这个,但它在位置之间画了一条直线,而不是正确的最短路线。

@Override
public void draw(Canvas canvas, MapView mapView, boolean shadow) {
    // TODO Auto-generated method stub
    super.draw(canvas, mapView, shadow);

    Projection projection = classMapView.getProjection();

     Paint   mPaint = new Paint();
        mPaint.setDither(true);
        mPaint.setColor(Color.RED);
        mPaint.setStyle(Paint.Style.FILL_AND_STROKE);
        mPaint.setStrokeJoin(Paint.Join.ROUND);
        mPaint.setStrokeCap(Paint.Cap.ROUND);
        mPaint.setStrokeWidth(2);

        GeoPoint gP1 = new GeoPoint(22716221,75896816);
        GeoPoint gP2 = new GeoPoint(22715212, 75895806);

        Point p1 = new Point();
        Point p2 = new Point();

        Path    path = new Path();

        projection.toPixels(gP1, p1);
        projection.toPixels(gP2, p2);

        path.moveTo(p2.x, p2.y);
        path.lineTo(p1.x,p1.y);

        canvas.drawPath(path, mPaint);
}

请帮助并告诉我是否可以获得 Google 地图提供的方向文本。

【问题讨论】:

    标签: android google-maps android-maps android-mapview


    【解决方案1】:

    请转至Google Policies

    这表明,通过- 不允许使用 android MapView 进行转向导航。

    相反,您可以使用意图来执行以下操作

     Intent intent = new Intent(android.content.Intent.ACTION_VIEW, 
     Uri.parse("http://maps.google.com/maps?saddr=<start lat>,<start lon>&daddr=<dest lat>,<dest lon>"));
     startActivity(intent);
    

    【讨论】:

    • 有没有其他方法可以实现这些。
    • 请查看this。但在实施这样的事情之前,请阅读 Google 政策的第 8 节。未经事先许可,您不能在 android mapView 中使用路线。
    【解决方案2】:

    这是https://github.com/frogermcs/RoutePathExample 的完整源代码,用于在两个地理位置之间绘制路径。

    【讨论】:

    • @Murat Nafiz 不再是有效链接。
    猜你喜欢
    • 1970-01-01
    • 2015-04-18
    • 1970-01-01
    • 2015-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多