Я новичок в Google Maps и Flutter, и мне было интересно, можно ли получить расстояние и продолжительность ходьбы, когда пользователь вводит пункт назначения.
Например, пользователь вводит пункт назначения своего рабочего места. Пешком от дома этого пользователя до автобусной остановки будет первое расстояние и продолжительность для извлечения, а затем, когда пользователь выйдет из автобуса, прогулка от автобусной остановки до рабочего места будет другим расстоянием и продолжительностью для извлечения.
Здесь я использую примеры ответов из документации по направлениям API. https://developers.google.com/maps/documentation/directions/intro#DirectionsResponseElements
class GoogleMapsServices{
Future<String> getRouteCoordinates()async{
String url = "https://maps.googleapis.com/maps/api/directions/json?
origin=Chicago,IL&destination=Los+Angeles,CA
&waypoints=Joplin,MO|Oklahoma+City,OK &key=$apiKey";
http.Response response = await http.get(url);
print (response.body);
Map values = jsonDecode(response.body);
return values["routes"][0]["overview_polyline"]["points"];
}
}
В настоящее время у меня есть эти коды и, глядя на response.body, я могу получить все время прибытия и т. Д., Но не расстояние и продолжительность ходьбы до автобусных остановок иот автобусных остановок. Возможно ли это сделать?
Я получаю эти результаты, когда печатаю response.body
I/flutter (23129): {
I/flutter (23129): "geocoded_waypoints" : [
I/flutter (23129): {
I/flutter (23129): "geocoder_status" : "OK",
I/flutter (23129): "place_id" : "ChIJ7cv00DwsDogRAMDACa2m4K8",
I/flutter (23129): "types" : [ "locality", "political" ]
I/flutter (23129): },
I/flutter (23129): {
I/flutter (23129): "geocoder_status" : "OK",
I/flutter (23129): "place_id" : "ChIJ69Pk6jdlyIcRDqM1KDY3Fpg",
I/flutter (23129): "types" : [ "locality", "political" ]
I/flutter (23129): },
I/flutter (23129): {
I/flutter (23129): "geocoder_status" : "OK",
I/flutter (23129): "place_id" : "ChIJgdL4flSKrYcRnTpP0XQSojM",
I/flutter (23129): "types" : [ "locality", "political" ]
I/flutter (23129): },
I/flutter (23129): {
I/flutter (23129): "geocoder_status" : "OK",
I/flutter (23129): "place_id" : "ChIJE9on3F3HwoAR9AhGJW_fL-I",
I/flutter (23129): "types" : [ "locality", "political" ]
I/flutter (23129): }
I/flutter (23129): ],
I/flutter (23129): "routes" : [
I/flutter (23129): {
I/flutter (23129): "bounds" : {
I/flutter (23129): "northeast" : {
I/flutter (23129): "lat" : 41.8781139,
I/flutter (23129): "lng" : -87.6297872
I/flutter (23129): },
I/flutter (23129): "southwest" : {
I/flutter (23129): "lat" : 34.0523523,
I/flutter (23129): "lng" : -118.2435731
I/flutter (23129): }
I/flutter (23129): },
I/flutter (23129): "copyrights" : "Map data ©2019 Google, INEGI",
I/flutter (23129): "legs" : [
I/flutter (23129): {
I/flutter (23129):
Спасибо.