使用 Google Maps API v2 绘制行车路线
在此问题中,用户尝试使用 Google 在两个地理坐标之间绘制行车路线地图 API v2。然而,提供的代码只是绘制一条直线,而不是实际的驾驶路线。
要获得所需的结果,用户可以利用与 Google 的 Directions API 接口的库。此类库之一是“Android-GoogleDirectionLibrary”(https://github.com/akexorcist/Android-GoogleDirectionLibrary)。该库使开发人员能够轻松获取 JSON 数据形式的行车路线,然后将其绘制为地图上的折线。
要使用此库,请按照以下步骤操作:
将库添加到您的 Gradle 构建文件中:
dependencies { ... implementation 'com.akexorcist:googledirectionlibrary:1.3.5' ... }
初始化 Google Maps API 和 Directions API 客户端:
<code class="java">// Initialize the Google Maps API GoogleMap mMap = ... // Initialize the Directions API client DirectionsClient directionsClient = Directions.newDirectionsClient(getApplicationContext());</code>
指定起点和目的地坐标:
<code class="java">LatLng origin = new LatLng(12.917745600000000000, 77.623788300000000000); LatLng destination = new LatLng(12.842056800000000000, 7.663096499999940000);</code>
创建路线请求并执行它:
<code class="java">DirectionsApiRequest request = new DirectionsApiRequest.Builder() .origin(origin) .destination(destination) .build(); directionsClient.getDirectionsAsync(request, new DirectionListener() { @Override public void onDirectionRetrieved(DirectionsResult result) { // Handle the response from the Directions API PolylineOptions options = new PolylineOptions() .addAll(result.getRouteList().get(0).getOverviewPolyline().getDecodedPath()); mMap.addPolyline(options); } @Override public void onDirectionFailed(DirectionException e) { // Handle any errors } });</code>
利用此方法,用户可以在地图上准确绘制两点之间的行车路线,确保路线与实际道路一致。
以上是如何使用 Google Maps API v2 绘制行车路线?的详细内容。更多信息请关注PHP中文网其他相关文章!