我知道这是一个常见问题,通常解决方案是生成一个单独的 key 用于发布。我已经完成了几次,我在开发人员控制台中的 API key 包含两个不同的 SHA1 指纹:一个用于从 AndroidStudio 进行调试,另一个用于从我自己的 keystore 中发布。我已使用相同的 keystore 对应用程序进行了签名,并在控制台中启用了 Google Maps Android API v2。但 map Activity 仍然只显示左下角带有“Google”的白屏。
有什么解决问题的建议吗?
最佳答案
听起来您只在调试 google_maps_api.xml 中输入了 API key 。此外,听起来您使用相同的 API key 进行调试和发布,但您仍然需要在发布文件夹下的 google_maps_api.xml 以及调试文件夹中输入。
这有点令人困惑,因为当项目在 Android View 中时,您只能看到调试文件(尽管在该 View 中它旁边的括号中应该有 (debug)
)。
要修改发布版本,请使用项目浏览器左上角的下拉菜单切换到项目 View 。然后,展开app/src/
,你会看到子文件夹debug
和release
。在那里,您应该在 debug/res/values
和 release/res/values
下看到两个单独的 google_maps_api.xml 文件。
确保将 API key 填充到 release/res/values
文件夹下的 google_maps_api.xml 文件中,因为这是将用于签名发布 apk 的 key 。
关于android - Google map 未显示在已签名的 apk 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32544737/