Android 谷歌地图API密钥在发布版本中没有';行不通
我目前正在为Android开发一个应用程序,我正在使用谷歌地图API。在开发人员控制台中,我添加了我的SHA1证书打印,后跟我的包名。 即使我使用keytool打印这个SHA1证书,我也无法访问地图。 我做了很多搜索,但每一个主题都让我找到了在开发人员控制台中错误的API键中的答案。 但我选了右边的SHA1,我的证书上的那个Android 谷歌地图API密钥在发布版本中没有';行不通,android,google-maps,certificate,key,sha,Android,Google Maps,Certificate,Key,Sha,我目前正在为Android开发一个应用程序,我正在使用谷歌地图API。在开发人员控制台中,我添加了我的SHA1证书打印,后跟我的包名。 即使我使用keytool打印这个SHA1证书,我也无法访问地图。 我做了很多搜索,但每一个主题都让我找到了在开发人员控制台中错误的API键中的答案。 但我选了右边的SHA1,我的证书上的那个 提前谢谢 我也有同样的问题,非常令人沮丧。我最终做的是使用我的发布密钥库制作的密钥,并将其放入google开发者控制台。然后,将以下内容添加到android清单中 <
提前谢谢 我也有同样的问题,非常令人沮丧。我最终做的是使用我的发布密钥库制作的密钥,并将其放入google开发者控制台。然后,将以下内容添加到android清单中
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="KEY GOES HERE"/>
我相信您已经阅读了相关文档,但请务必严格按照发布证书的说明进行操作
您还可以在google_maps_api.xml文件中跟踪为您生成的链接。这自动化了将密钥输入开发人员控制台的过程。但是,请确保仍将该元数据值添加到清单中。文件google\u maps\u api.xml必须位于res/debug/和res/release下。编辑器仅显示默认情况下为调试的当前运行配置,如果不遵守文件夹名称后的(调试)注释,则会有点误导。将google_maps_api.xml复制到这两个文件夹中并进行编辑,确保它们具有每个构建的正确api密钥 Android Studio还在发布文件夹中为google_maps_api xml文件创建一个TODO,并让您在发布之前知道所需的过程。另外,请不要手动更改清单中的密钥。当您切换到版本变量时,该密钥将在清单中自动更新
<meta-data
android:name="com.google.android.geo.API_KEY"
android:value="KEY GOES HERE"/>
无论如何,你要这样做
我的地图在发布模式下显示,但在我发布到Play Store后,它没有显示 我提到了调试和发布证书SHA-1密钥到Google开发者控制台,但从play store下载应用程序后,在发布模式下的地图仍然没有显示 以下是问题所在: 此应用程序已启用Google Play应用程序签名 转到发布管理->应用程序签名->并从应用程序签名证书复制SHA-1证书指纹
将这个新复制的SHA-1指纹粘贴到开发者控制台,并在发布模式下显示地图。您必须在Google开发者控制台中启用SHA密钥 因此,在第一次进入发布管理获取您的应用程序SHA密钥(第一个) 然后点击这个链接
https://console.developers.google.com/flows/enableapi?apiid=maps_android_backend&keyType=CLIENT_SIDE_ANDROID&r=(Your SHA KEY)%3B(YOUR PACKAGE NAME)
现在它将启用API。
现在使用新密钥更新应用程序。
它会起作用。您在清单文件中提到android密钥了吗谢谢!我做了改变,我还注意到,当我创建GoogleMaps活动时,有两个地方的API密钥是存储的。一个文件用于发布,另一个用于调试。确保在这两个文件中指定了密钥!我一直在寻找这两个文件,它们都在src/debug/res/values/google_-maps_-api.xml和src/release/res/values/google_-maps_-api.xml中,api键应该如何与debug一起工作?您是否对调试版本进行签名?我从没听说过有人这样做…我已经被困在这三天了!非常感谢,在文档中我没有看到这一步的说明。我使用
keytool
从Android Studio内的终端获取SHA-1,但地图仍然无法与此SHA-1配合使用。谢谢你!Android Studio发布的SHA-1版本似乎与Google Play控制台中的版本有所不同。我也被困在这个问题上好几天了。非常感谢。Play控制台中的散列与命令行keytool中的散列明显不同。密钥工具显示上载证书。非常恼人的是应用程序签名密钥
和上载密钥
的描述基本相同