2

次のコードを使用して、2 地点間のルートを表示しています。

    Intent intent = new Intent(android.content.Intent.ACTION_VIEW, 
    Uri.parse("http://maps.google.com/maps?saddr="+lastLocation.getLatitude()+","+lastLocation.getLongitude()+"&daddr="+(double)point.getLatitudeE6()/1000000+","+(double)point.getLongitudeE6()/1000000));
    intent.setClassName("com.google.android.apps.maps", "com.google.android.maps.MapsActivity");           
    startActivity(intent);

このコードは完全に機能しますが、そのコードに公共交通機関などを選択できる機能を追加する必要があります。可能です?

4

1 に答える 1

1

Uri で、もう 1 つのパラメーターを追加して、トランスポートの種類を選択できます。

Intent intent = new Intent(android.content.Intent.ACTION_VIEW, 
    Uri.parse("http://maps.google.com/maps?saddr="+lastLocation.getLatitude()+","+lastLocation.getLongitude()+"&daddr="+(double)point.getLatitudeE6()/1000000+","+(double)point.getLongitudeE6()/1000000 + "&dirflg=r"));
    intent.setComponent(new ComponentName("com.google.android.apps.maps", 
            "com.google.android.maps.MapsActivity"));          
    startActivity(intent);

車の場合は dirflg = h、公共交通機関の場合は dirflg = r、徒歩の場合は dirflg = w です。

交通機関モード (公共交通機関) は、その地域で利用可能な場合にのみ表示されます。それ以外の場合、MapActivity は利用できないことを示すトーストを表示し、運転 (高速道路) の方向を示します。

于 2013-02-11T09:01:57.823 に答える