发布版本中的Google Maps API Key不起作用

时间:2015-08-05 13:48:01

标签: android google-maps certificate key sha

我目前正在开发Android应用程序,而我正在使用Google Maps API。在开发人员控制台中,我添加了SHA1证书打印,然后是我的包名。 即使我使用keytool打印此SHA1证书,我也无法访问这些地图。 我做了很多搜索,但每个主题都让我得到答案,其中错误是在开发人员控制台中错误的API密钥。 但我选择了正确的SHA1,这是我的证书之一。

提前致谢!

5 个答案:

答案 0 :(得分:10)

发布模式下的我的地图正在显示,但在我发布到Play商店后,它没有显示。

我已经提到了调试版和发行版证书SHA-1 Key to Google Developer Console,但是从Play商店下载应用后仍然没有显示发布模式。

这里有什么问题: 此应用已启用Google Play应用广告

转到发布管理 - > App Signing - >并从应用程序签名证书

复制 SHA-1证书指纹

将新复制的SHA-1指纹粘贴到Developer Console,并显示发布模式中的地图。

答案 1 :(得分:6)

我有同样的问题,这非常令人沮丧。我最终做的是使用我的发布密钥库获取密钥并将其放入谷歌开发者控制台。然后,将以下内容添加到android清单中。

<meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="KEY GOES HERE"/>

我确定您已阅读相关文档,但请务必按​​照发布证书的说明进行操作。

https://developers.google.com/maps/documentation/android/signup

您还可以在google_maps_api.xml文件中关注为您生成的链接。这会自动将密钥输入到开发人员控制台中。但是,请确保仍将该元数据值添加到清单中。

答案 2 :(得分:5)

文件google_maps_api.xml必须位于res / debug /和res / release下。编辑器仅显示当前的运行配置,默认情况下是调试,如果您没有在文件夹名称后面观察(调试)注释,则会有点误导。将google_maps_api.xml复制到这两个文件夹并进行编辑,确保每个版本都有正确的API密钥。

答案 3 :(得分:1)

Android Studio还会在google_maps_api xml文件的release文件夹中创建一个TODO,并在发布之前让您知道所需的过程。另外,请不要手动更改清单中的密钥。切换到版本变体时,密钥会在清单中自动更新。

无论如何都要这样做,

  1. 转到@Andrew Brook

  2. 所述的链接
  3. 点击&#34;获取密钥&#34;并继续

  4. 创建新项目或使用现有项目
  5. 指定选项并单击按钮
  6. 如果您之前已经创建了一个,请让我们说调试,然后转到创建一个新的api密钥 Image here
  7. 添加所需名称,单击&#34;添加包名称和指纹&#34;
  8. 添加应用程序的软件包名称和SHA-1密钥(在java / jdk ../ bin /中使用keytool生成它) Image here
  9. 你得到你的&#34;发布&#34;要在release文件夹的google_maps_api.xml中添加的变体API密钥。

答案 4 :(得分:0)

您必须在Google Developer Console中启用SHA键 因此,在1st发布管理,获取您的应用SHA密钥(1st) 然后点击此链接

 https://console.developers.google.com/flows/enableapi?apiid=maps_android_backend&keyType=CLIENT_SIDE_ANDROID&r=(Your SHA KEY)%3B(YOUR PACKAGE NAME)

现在它将启用API。 现在使用新密钥更新您的应用。 它将起作用。