Android 映射API发布密钥不工作

Android 映射API发布密钥不工作,android,api,google-maps,maps,keytool,Android,Api,Google Maps,Maps,Keytool,我刚刚完成了我的第一个应用程序,它使用了MapsAPI和一个Maps片段。 调试一切正常,所以我决定制作一个签名的apk。 要使签名的apk与Maps API一起工作,我需要新密钥。以下是我如何尝试的: 1生成已签名的apk 2我创建了一个以.jks结尾的新密钥库文件 3 apk已成功创建此apk尚未包含新密钥 Configuration on demand is an incubating feature. :app:preBuild :app:preReleaseBuild :app:che

我刚刚完成了我的第一个应用程序,它使用了MapsAPI和一个Maps片段。 调试一切正常,所以我决定制作一个签名的apk。 要使签名的apk与Maps API一起工作,我需要新密钥。以下是我如何尝试的:

1生成已签名的apk

2我创建了一个以.jks结尾的新密钥库文件

3 apk已成功创建此apk尚未包含新密钥

Configuration on demand is an incubating feature.
:app:preBuild
:app:preReleaseBuild
:app:checkReleaseManifest
:app:preDebugBuild
:app:prepareComAndroidSupportAppcompatV72100Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42100Library UP-TO-DATE
:app:prepareComGoogleAndroidGmsPlayServices6171Library UP-TO-DATE
:app:prepareReleaseDependencies
:app:compileReleaseAidl
:app:compileReleaseRenderscript
:app:generateReleaseBuildConfig
:app:generateReleaseAssets UP-TO-DATE
:app:mergeReleaseAssets
:app:generateReleaseResValues UP-TO-DATE
:app:generateReleaseResources
:app:mergeReleaseResources
:app:processReleaseManifest
:app:processReleaseResources
:app:generateReleaseSources
:app:compileReleaseJava
:app:lintVitalRelease
:app:compileReleaseNdk
:app:preDexRelease
:app:dexRelease
:app:processReleaseJavaRes UP-TO-DATE
:app:validateExternalOverrideSigning
:app:packageRelease
:app:zipalignRelease
:app:assembleRelease

BUILD SUCCESSFUL

Total time: 1 mins 57.752 secs
4我使用keytool并从.jks密钥库文件接收sha1

5我去API网站,为我输入调试密钥的项目生成一个新密钥

我有钥匙

6.1另外,它只是说Android应用程序的密钥不是带有证书的Android应用程序的密钥,正如它在Maps API文档中所写的那样

7我将新键放入调试键所在的字段中

8我再次生成一个已签名的apk,输入密钥库和别名的密码

8.1日志输出相同,无异常

9我将apk安装在设备上

10地图分幅不加载

我已经一次又一次地阅读了文档,但是我找不到我在哪里犯了错误


非常感谢您提供的任何帮助

您需要将密钥库中的SHA1放入API控制台中项目允许的应用程序列表中


从google API控制台网页的下拉菜单中选择您的项目。然后单击API访问。从那里,你应该有一个按钮,上面写着编辑允许的Android应用程序。单击该按钮,您将看到一些操作说明

谢谢,但这是我在第5步和第6步中已经做过的。我已尝试为SHA1生成一个新密钥,并尝试将SHA1从调试版本的密钥添加到您刚才描述的允许应用列表中。您是否已将新密钥添加到AndroidManifest中?我发现了导致错误的原因。在Android Studio自动创建的地图活动中,密钥从资源文件values/google_maps_api.xml导入到清单中。当我在那里替换它时,出于某种原因,我支持它没有被导入到发布版本中。我现在将我的钥匙硬编码到舱单中,现在它工作了:-非常感谢您的帮助