【发布时间】:2014-05-19 06:29:34
【问题描述】:
通读关于这个主题的所有帖子并尝试所有组合: 1. 调用 google places API 时使用了 android 密钥( 2.切换到浏览器键 3.后来尝试使用服务器密钥。 4.重新生成密钥并尝试组合1-3。
没有任何工作!清单文件中 Mapv2 API 的密钥是 android 密钥。在我创建一个新项目并将我的包与新项目一起列出之前,此应用程序一直正常工作。我为这个包重新创建了新的 android 密钥。旧钥匙仍然在那里,但有一个不同的项目。我没有删除旧项目,但删除了它下面的所有密钥。 所以现在我有一个新项目下的 android 浏览器的新密钥。 我做错了吗?
我收到错误消息“提供的 API 密钥无效”... 当我使用浏览器键从浏览器进行此调用时,它正在工作。不是来自我的 android 应用程序。 有小费吗 ?。
请看下面的代码:-
final String PLACES_API_BASE = "https://maps.googleapis.com/maps/api/place/nearbysearch";
final String OUT_JSON = "/json";
final String KEY=<browser-key>
final String SENSOR="false";
StringBuilder querystring = new StringBuilder(PLACES_API_BASE+OUT_JSON);
try{
querystring.append("?sensor="+SENSOR+"&key="+KEY);
String localquery="&location=37.316318,-122.005916&radius=500&name=traderjoe";
querystring.append(URLEncoder.encode(localquery, "UTF-8"));
URL url = new URL(querystring.toString());
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("GET");
String line;
StringBuilder builder = new StringBuilder();
BufferedReader reader = new BufferedReader(
new InputStreamReader(connection.getInputStream()));
while((line = reader.readLine()) != null) {
builder.append(line);
}
System.out.println("JSON BUILDER INPUT FROM GOOGLE PLACES QUERY="+builder.toString());
这是我收到错误消息的地方:- 提供的 APi 密钥无效
【问题讨论】:
-
你设置了正确的api密钥吗?设置 api 位置时出现相同的错误。只需检查您是否拥有正确 api 的正确密钥。 link
-
@dpfauwadel - 是的,我尝试过使用 android 密钥、服务器密钥和浏览器密钥。没有想法了.. :-(
-
一些帖子谈论使用 android key ,而其他一些帖子谈论使用 browser key 。 google place 文档讨论了使用服务器密钥。我尝试了所有 3 - 但我仍然收到错误消息:“提供的 API 密钥无效”。我希望他们有更好的错误报告来告诉使用哪个键..
-
尊敬的专家们,这对我来说已经有数周的挫败感了。我重新生成了 android 密钥。有人可以权威地告诉我使用哪个密钥。我相信我已经逐字遵循了许多地方的说法。我也在上面发布了我的代码。
-
请按照以下清单进行操作: 1) 使用新的 .keystore 为应用程序签名。 2) 应使用新的 .keystore 的 SHA1。 3) 应使用此 SHA1 制作映射密钥。 4) 如果使用新的 Google 帐户,请确保为该帐户打开 Android Maps V2 服务。当 Maps V2 服务未开启时,通常会出现此错误。