最近因为公司项目要用到百度地图,为了拿到服务密钥(AK),需要填写开发版本SHA1值和发布版SHA1值。
一上来我是蒙圈的,然后上网查了一些别人的做法,发现获取的方法五花八门的,让我绕了很多路,在此终于找到一个比较适合的方法,用于记录和与大家分享。
一、获取开发版SHA1
首先,先找到你的jdk所在目录。可以从Android studio中查看到你的jdk所在目录,方法如下:
然后,打开命令行,会发现命令行会首先定位到管理员,如下
但是我们的jdk的目录是从C盘的根目录开始定位的,所以先要把指针定位到C盘根目录。方法如下
这样就可以返回到C盘的根目录了,接下来我们再去定位到我们的jdk的目录,方法如下:
具体目录根据你们的jdk目录来,这边是根据我的目录来的,我们需要定位到jdk的bin目录下。接着在后面接上
keytool -list -v -keystore debug.keystore
这个时候如果报如图所示的错误,就说明你的debug.keystore不在该目录下。那我们的debug.keystore在哪呢
在管理员目录里面。如图所示
接着,我们在刚刚的命令行代码里,去掉尾部的debug.keystore ,跟上刚刚找的debug.keystore目录,如下
会让你输入密钥库口令,口令是 android ,输入完成后即可获取。接着我们把SHA1直接复制粘贴就好了。这个是开发版的SHA1。
二、获取发布版SHA1
获取发布版的SHA1,首先要获取你所要集成百度地图的app的签名文件。为了防止大家不知道如何生成签名文件,我再跟大家分享一下如何生成,如图所示:
首先为你的签名文件选择目录,然后命名,名字随便你起啦。
接着输入你的签名文件的密码,以及确认密码,接着填写别名,也是随便你起,紧接着再输入你刚刚定的密码。然后填写下面的一些与你公司相关和与该app相关的信息。填写完成后,点击OK,即可生成了签名文件。这个时候你可以去你存放的文件目录下,找下你的签名文件是否生成。
生成了签名文件,我们接着来操作命令行。把生成开发版SHA1的命令行代码,尾部换成你的jks目录即可,如图:
这个时候的密钥库口令就是你刚刚生成签名文件的密码。这样就可以获取发布版的SHA1啦。