Maison >Java >javaDidacticiel >Comment tracer des itinéraires routiers avec l'API Google Maps v2 ?
Dessiner un itinéraire avec l'API Google Maps v2
Dans cette question, l'utilisateur tente de tracer un itinéraire entre deux coordonnées géographiques à l'aide de Google API Cartes v2. Cependant, le code fourni trace simplement une ligne droite au lieu de l'itinéraire réel.
Pour obtenir le résultat souhaité, l'utilisateur peut utiliser une bibliothèque qui s'interface avec l'API Directions de Google. L'une de ces bibliothèques est « Android-GoogleDirectionLibrary » (https://github.com/akexorcist/Android-GoogleDirectionLibrary). Cette bibliothèque permet aux développeurs de récupérer facilement des itinéraires sous forme de données JSON, qui peuvent ensuite être tracées sous forme de polyligne sur la carte.
Pour utiliser cette bibliothèque, suivez ces étapes :
Ajoutez la bibliothèque à votre fichier de build Gradle :
dependencies { ... implementation 'com.akexorcist:googledirectionlibrary:1.3.5' ... }
Initialisez l'API Google Maps et le client API Directions :
<code class="java">// Initialize the Google Maps API GoogleMap mMap = ... // Initialize the Directions API client DirectionsClient directionsClient = Directions.newDirectionsClient(getApplicationContext());</code>
Spécifiez les coordonnées d'origine et de destination :
<code class="java">LatLng origin = new LatLng(12.917745600000000000, 77.623788300000000000); LatLng destination = new LatLng(12.842056800000000000, 7.663096499999940000);</code>
Créez une demande d'itinéraire et exécutez-la :
<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>
En utilisant ceci approche, l'utilisateur peut tracer avec précision des itinéraires routiers entre deux points sur la carte, garantissant ainsi que l'itinéraire correspond aux routes réelles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!