flutter - 如何在 flutter 中使用 Google map 距离矩阵 API。谁能帮我

标签 flutter google-maps google-places-api google-distancematrix-api

我正在制作最后一年的项目,但我陷入了距离矩阵。我正在制作一个使用谷歌地图的应用程序,但我不知道如何查找两地之间的时间和距离。我读了一些文章,但无法理解我是 flutter 的初学者。

最佳答案

首先,您需要一个 Google map API key ,然后您需要一个 Google 云帐户,可以免费创建一个帐户,并且您还可以获得免费试用版,这对于研究项目来说应该足够了。 此链接可能有助于设置帐户和项目:https://developers.google.com/maps/documentation/distance-matrix/cloud-setup

帐户和项目设置后,您需要 enable the distance matrix API

然后create an API key

获得 API key 后,您就可以开始使用 API:进行 API 调用所需的只是您的 API key 以及出发地和目的地位置(为此,您可以使用纬度/经度、完整地址、地点 ID...)。这是使用纬度、经度坐标的示例:

https://maps.googleapis.com/maps/api/distancematrix/json?destinations=40.659569,-73.933783&origins=40.6655101,-73.89188969999998&key=**YOUR_API_KEY_HERE**

您可以为出发地和目的地提供多个由竖线 (|) 分隔的位置(例如:11.45455,-13.4675434|12.353645,-32.463634|11.45455,-13.4675434...) ,API 会将每个出发地位置与所有目的地进行匹配,并返回每一对的距离(基本上一个请求将返回出发地乘以目的地的结果)。

注意:我提供的示例非常简单,但是距离矩阵有更多功能(例如:考虑到流量)请访问此 link了解 API 功能的概述。

flutter

要在flutter应用程序中调用API,您将需要一个HTTP客户端,例如DIO :

import 'package:dio/dio.dart';
void getDistanceMatrix() async {
  try {
    var response = await Dio().get('https://maps.googleapis.com/maps/api/distancematrix/json?destinations=40.659569,-73.933783&origins=40.6655101,-73.89188969999998&key=YOUR_API_KEY_HERE');
    print(response);
  } catch (e) {
    print(e);
  }
}

要查看您将得到什么类型的响应,请访问此 link .

此答案中所有链接的内容将来可能会发生变化

关于flutter - 如何在 flutter 中使用 Google map 距离矩阵 API。谁能帮我,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70411197/

相关文章:

Flutter:使用带有卡住和 json_serializable 的 Map

javascript - 使用 PlacesService 反转地点 ID

dart - Flutter 中的 PlatformException(sign_in_failed, Status{statusCode=CANCELED, resolution=null}, null) 错误

flutter - Dart 中的多级 map 或 map 列表?

file - Dart - 如何获取文件的创建时间?

javascript - 检测 Google Maps API 配额限制

android - map Intent 不显示指定位置

java - Google map 不显示用户当前位置

android - 使用 FusedLocationApi 搜索地点

jquery - 谷歌自动完成语言