Google Places API 总是返回错误

Posted

技术标签:

【中文标题】Google Places API 总是返回错误【英文标题】:Google Places API always return error 【发布时间】:2015-05-05 04:55:35 【问题描述】:

我已在我的 android 应用程序中集成了 Google Places API。 我已经阅读了api文档See Here。

我已经为 android 激活了 Google Places Api 并生成了浏览器密钥 当我调用 api 时得到错误响应 -

"error_message" : "This API project is not authorized to use this API.Please ensure that this API is activated in the APIs Console: Learn more: https://code.google.com/apis/console",
  "html_attributions" : [],
  "results" : [],
  "status" : "REQUEST_DENIED"

我也尝试创建 android 密钥并返回 -


 "error_message" : "This IP, site or mobile application is not authorized to use this API key.",
 "html_attributions" : [],
 "results" : [],
 "status" : "REQUEST_DENIED"

我没有发现我的代码有什么问题。

感谢任何帮助。提前致谢。

检查 API 控制台 -

【问题讨论】:

能给个你用过的网址吗? @Sandeep Singh 检查这个 -maps.googleapis.com/maps/api/place/textsearch/… KISS 使用正确的 API 密钥(浏览器密钥) 也尝试使用浏览器密钥,检查我的问题 经过大量搜索后,通过从控制台激活“Google Places API Web Service”api 找到了解决方案。我不确定这是否正确,因为它是付费 api,我正在使用它在 android 上,它是一个 web api。 【参考方案1】:

我遇到了同样的问题。就我而言,问题是我试图通过这个 url 使用简单的 HttpUrlconnection 发送请求:

 https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=62.25227243964484%2C59.12338379770518&radius=500&key=my_key

my_key 是 Google Places API for Android 的密钥,但当我切换到 Google Places API Web 服务 时,它可以正常工作。似乎要使用适用于 Android 的 Google Places API 的密钥,您应该遵循本指南https://developers.google.com/places/android/

【讨论】:

【参考方案2】:

您似乎正在使用 Places API Web 服务,这需要启用“Google Places API Web 服务”并提供服务器密钥:https://developers.google.com/places/webservice/intro#Authentication

由于您正在构建一个 Android 应用程序,您可能想尝试一下我们在 3 月刚刚发布的适用于 Android 的 Places API :) 文档位于 https://developers.google.com/places/android/

我希望这会有所帮助!

【讨论】:

我试过这个,但我得到了同样的错误。我已经为 Android 启用了 Places API。 同意。需要启用 Google Places API 网络服务。【参考方案3】:

我通过以下先决条件解决了这个问题:

1) 确保您使用的是以下网址

https://maps.googleapis.com/maps/api/place/autocomplete/json?input=YOURSEARCHTEXT&key=YOUR_SERVER_API_KEY。 不要使用您的 android/ios API 密钥。

2) 确保您已在控制台中启用以下 API。

Google Places API 网络服务(付费服务)

【讨论】:

在启用 Google Places API Web 服务(免费服务)之后......它对我有用...... Thnkx @Shoaib @AmitabhaBiswas +1 免费服务也对我有用。我使用 Android 密钥同时启用了 Places Android API 和 Places Web 服务。【参考方案4】:

其实我也遇到过这个问题,但是启用“Google Places API Web Service”对我有用。

问题是我们正在使用 Google Places 的网络服务来获取位置,而我们忘记在 Google 开发者控制台中启用 Google Places API Web Service

所以请确保在您使用 Google Place API 时,不要忘记启用 Google Maps Android APIGoogle Places API Web Service

【讨论】:

【参考方案5】:

确保您已启用 Google Places API 网络服务。 因为适用于 Android 的 Google Places API 不适合它。 希望它会起作用。 如果不 然后使用简单的 url "https://maps.googleapis.com/maps/api/place/autocomplete/json?key=YOUR_API_KEY&components=country:gr&input=YOUR_INPUT_VALUE" 像 POSTJSON 谢谢。

【讨论】:

【参考方案6】:

在使用 google places api 时,您的 android api 密钥将不起作用,创建一个服务器密钥并在发出请求时在 places url 中使用该服务器。在清单中,您将使用相同的 android api 密钥。这应该可以解决您的问题。

【讨论】:

【参考方案7】:

我尝试了很多次,我找到了解决方案

如果您要从您的应用发送 URL 以获取地点信息,那么您正在使用 Google Places API 网络服务 不是 Google Places API for Android

因此,您必须在 API Dashboard 上启用 Google Places API Web Service,它才会起作用。

【讨论】:

【参考方案8】:

使用 Android API 代替浏览器和服务器 API 密钥。遇到了同样的问题,但使用 Android API 密钥解决了。

【讨论】:

【参考方案9】:

启用“Google Maps Android API”后启用“Google Maps Geocoding API”

【讨论】:

【参考方案10】:

确保您启用了“Google Places API Web Service”,并且您必须使用服务器密钥(不是 Android 密钥)

【讨论】:

【参考方案11】:

我通过在开发者控制台中启用 Geocoding api 解决了这个问题。

【讨论】:

以上是关于Google Places API 总是返回错误的主要内容,如果未能解决你的问题,请参考以下文章

Android Google Places API,getAutocompletePredictions 返回状态“PLACES_API_ACCESS_NOT_CONFIGURED”

Google Places API 返回邮政编码

如何让 Google 地图“Places API”返回邮政编码信息?

Google Places API会返回未包含的类型

Google Places API 错误

Google Places API 不会返回大城市或中心的邮政编码。我该如何解决?