如何使用 Google 地图客户端 java api 优化 google 地图中的路线。

How to optimise route in google map using Google map client java api.

我正在获取这样的经纬度列表的路线详细信息,

DirectionsRoute[] routes = DirectionsApi.newRequest(context)
                .mode(TravelMode).origin(startPoint).destination(endPoint)
                .waypoints(wayPoints).await();

但是我得到的路线没有优化所以我想通过使用 google java 客户端 api.

来优化路线

在 google map javascript api 中,我们可以通过这样的布尔属性进行优化

 {
  origin: LatLng | String | google.maps.Place,
  destination: LatLng | String | google.maps.Place,
  travelMode: TravelMode,
  drivingOptions: DrivingOptions,
  waypoints[]: DirectionsWaypoint,
  optimizeWaypoints: boolean
}

但是如何使用 Google 地图 java 客户端 api 来实现这一点?

您可以使用optimizeWaypoints方法。确保您使用最新 (0.1.16) 版本的 google-maps-services:

dependencies {
    compile 'com.google.maps:google-maps-services:0.1.16'
}

<dependency>
    <groupId>com.google.maps</groupId>
    <artifactId>google-maps-services</artifactId>
    <version>0.1.16</version>
</dependency>

在您的代码中:

DirectionsRoute[] routes = DirectionsApi.newRequest(context)
    .mode(TravelMode)
    .origin(startPoint)
    .destination(endPoint)
    .waypoints(wayPoints)
    .optimizeWaypoints(true) // Add this
    .await();