我使用的是Google Maps API v2。我有四倍检查我的应用程序的API密钥和SHA1是正确的。我有一个下拉菜单,当单击其中一个项目时,地图会显示该项目的标记。之前我曾经使用过它并且工作正常,但现在它还没有。我删除了旧密钥并创建了新密钥,认为它可以解决问题,但它没有。我打电话给这个网址以获得必要的回复:
https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=34.9782618,-120.1863181&radius=10000&query=walmart&key={MY_KEY}
但是当我点击一个按钮来调用该url时,返回的响应是:
{"error_message" : "This IP, site or mobile application is not authorized to use this API key.
Request received from IP address {BLOCKED},
with empty referer", "html_attributions" : [],
"results" : [], "status" : "REQUEST_DENIED"}
如果API密钥和SHA1正确,那么这是不可能的。我已经在这里工作了好几个小时试图找出问题所在并且我似乎无法弄清楚我的生活。如果我将API的限制设置为Android应用程序,那么它应该识别提供的指纹并且工作得很好。我已经尝试在调试和发布中运行它。
注意:出于安全和保密原因,此处已阻止IP地址。
答案 0 :(得分:1)
在Google API控制台中,检查您使用的密钥是否仅限于Android应用。即使您是从Android应用程序进行该调用,您也可以通过直接调用端点而不是使用Android Places API来访问Places API,就像您是浏览器一样。您需要为直接的http调用创建单独的浏览器密钥,或使用Android API。