如何使用 Google API 键

How to use Google API Keys

首先:目前一切正常。我只需要您的改进意见。

我目前正在开发一个 Android 应用程序,它需要访问不同的 Google API。所以我创建了一个 API 键并做了一个应用程序 restioction。我在 google_maps_api.xml 中使用 API 键来验证我的 Google 地图 API 应用程序 API。

然后我需要 Google 方向 API。据我所知,访问它的唯一方法是通过 HTTP 请求。 HTTP 请求中需要 API 键。现在的问题是,我的 API 密钥受 App 限制。这意味着,它不适用于 HTTP 请求。我创建了第二个 API 密钥并删除了目前解决该问题的限制。但我认为这不是一个好的解决方案。

我还找到了2016年的this SO Question,虽然没有答案,但也面临同样的问题。

API 键不限于特定的 API。单个 API 键可用于访问所有可用的 Google API。这就是为什么您在创建新密钥时会看到所有这些受限选项的原因。并非所有 API 都支持 Android 和 IOS 限制。例如,Google Maps 有一个可用于 Android 和 IOS 的库。这意味着您可以创建一个密钥并将其限制为 Android 并在 Android 库中指定该密钥,然后通过创建另一个密钥并将其限制为 IOS 对 IOS 执行相同的操作] 而已。

但是,API像 Google 地图距离矩阵Google 地图方向不支持 Android 和 IOS 限制。这基本上是因为这两个 APIs 与 HTTP 请求一起工作。因此,为了添加限制,您必须创建自己的服务器,使用 PHP 或 Java,并将 API 密钥存储在您的服务器上。然后您的客户端将向您的服务器发送请求以获取 Google API。由于密钥仅限于您的服务器 ip,因此除了您的服务器之外,没有人能够使用 Google API.

这对于限制密钥非常重要,因为有人可以使用您的密钥访问您项目中所有已激活的 API。

有关 API 支持哪些限制的更多信息,请访问此页面: https://developers.google.com/maps/faq#restriction