Android Studio获取开发版SHA1值和发布版SHA1值的史上最详细方法

前言:

今天我想把百度地图的定位集成到项目中来,想写个小小的案例,实现一下,但在集成百度地图时首先要申请秘钥,申请秘钥要用到SHA1值,所以今天就来总结一下怎样去获取这个值吧,希望对大家有帮助。

 

正常情况下:

一、获取开发版SHA1:

在此我直接用Android Studio提供的命令控制台了,毕竟做Android开发几乎都是用Android Studio了。

1、打开android studio 找到Terminal并打开,或者在最下面找到Terminal 如下图:

2、 输入命令  C:    进入c盘;

3、接着 输入命令   cd Users\Administrator   其中Administrator是自己的用户名  Administrator文件下有个.adnroid文件, 输入命令   cd  .android,最后就找到了.android,如图:

4、输入命令  keytool -list -v -keystore debug.keystore  其中debug.keystore是studio默认的keystore,按回车,然后输入秘钥:android(系统默认)    回车(秘钥库口令是看不到的)如下图:

这样就成功获取到开发版的SHA1值了,是不是很简单呀,那是当然!

 

二、获取发布版的SHA1:

获取发布版的SHA1,跟获取开发版的SHA1的1、2、3步骤一样,不一样的地方就是第4步稍微不同而已。

1、同上;

2、同上;

3、同上;

4、输入命令  keytool -list -v -keystore 文件目录\自己的签名文件 比如我的:keytool -list -v -keystore E:\签名文件\android.keystore ,接着按回车,然后输入秘钥:(我只知道我的,哈哈)    回车(秘钥库口令是看不到的)如下图:

 

这样就成功获取到发布版的SHA1值了,是不是很简单呀,那是当然!

 

上面是正常情况下执行的,我在获取SHA1时就被坑了,接下来就是说一下不正常的情况了:

 

1、首先是出现:

'keytool' 不是内部或外部命令,也不是可运行的程序或批处理文件。如图:

 


 

于是我参考了一篇文章:http://blog.csdn.net/csdnhejingzhou/article/details/50643246 ,确实可以是解决了这个问题;


2、前面的问题解决了,然后我就按照他的步骤直接运行deybug.keystore,即C:\Program Files\Java\jdk1.8.0_31\bin>cd keytool.exe
但又出现了一个问题:提示目录名称无效。如图:


 

最后我直接 把  C:\Users\Administrator\.Android 目录下的 debug.keystore  拷贝到  C:\Program Files\Java\jdk\bin 目录下了,就是和debug.keystore同一个目录下。这样就解决所有问题了,不知道你们会不会这样,也许是我运气不好,或者我儍敷敷地绕弯路了。

尊重原创,转载请注明:From zsml2016(http://blog.csdn.net/qq_29269233)Power byzsml2016侵权必究!