Google地图未在签名的apk中显示

mit*_*val 29 android google-maps release

我知道这是一个常见问题,通常解决方案是生成一个单独的密钥以便发布.我已经完成了几次,我在开发人员控制台中的API密钥包含两个不同的SHA1指纹:一个用于从AndroidStudio调试,另一个用于从我自己的密钥库发布.我已使用相同的密钥库对应用进行了签名,并在控制台中启用了Google Maps Android API v2.但是地图活动仍然只显示左下角带有"Google"的白色屏幕.

有什么建议如何解决这个问题?

Dan*_*ent 66

听起来您只在调试google_maps_api.xml中输入了API密钥.此外,听起来您使用相同的API密钥进行调试和发布,但您仍需要在release文件夹下的google_maps_api.xml以及debug文件夹中输入它.

这有点令人困惑,因为当项目处于Android视图中时,您只能看到调试文件(尽管它应该(debug)在该视图中的旁边的括号中).

要修改发行版本,请使用Project Explorer左上角的下拉列表切换到Project视图.然后,展开app/src/,您将看到子文件夹debugrelease.在那里,您应该在debug/res/values和下面看到两个单独的google_maps_api.xml文件release/res/values.

确保API密钥填充在该文件release/res/values夹下的google_maps_api.xml文件中,因为这是将用于签名版本的apk.

在此输入图像描述

  • 非常感谢!那就是问题!我使用Android视图,并没有怀疑它有两个不同的文件夹.我想知道为什么不在任何地方提到它.无论如何,谢谢! (3认同)

waj*_*jih 21

如果您选择Google Play App Signing,那么您的App SHA-1将会在发布时与其不同.

因为Google删除了您上传的证书,然后使用新的证书对应用进行了签名,

所以你必须知道新SHA-1密钥.

(您不必按日志发布并跟踪SHA-1生成的新内容)

在此输入图像描述


您可以比较2个SHA-1键.

来源答案