Android studio升级到最新版获取SHA1时遇到的问题

错误提示

Android studio安装升级到最新本后需要获取SHA1值,然后就输入密钥库口令:
keytool -v -list -keystore keystore文件路径

结果就提示了以下错误:

keytool 错误: java.io.IOException: Invalid keystore format 如下图所示:
在这里插入图片描述

解决方案

  刚开始还以为是自己粗心,哪里弄错了,没怎么在意,后来一直没弄成功,网上百度了一下,说是可能gradle的配置问题,还有说是生成密钥文件的jdk版本不一致的问题,我在Android studio里面设置jdk版本,然后重新创建密钥文件还是提示错误。然后我用以前项目的密钥文件来获取SHA1值反而成功了,就新生成的不行,然后我就去Android群里问了大佬,就给我说要去到Android studio自带的jre环境里面执行这个命令,然后就成功了,但我还是不理解,有知道的小伙伴留言指导一下,感谢了。
步骤如下:

  1. 生成keystore和访问keystore的JDK版本不一致。(通俗来讲就是 jks是用和当前jdk的不同版本生成的。比如1.8 和 11 )就会报错。(项目需要有时候本地会配置多个版本的jdk 此时多注意)。
    在这里插入图片描述

  2. 进入当前项目jdk根目录bin cmd (我这里用的是AndroidStudio自带的jre)要进入bin根路径,如下图所示:
    在这里插入图片描述
    在这个目录下进行命令输入keytool -v -list -keystore keystore文件路径,这样jdk 应该就一致了。
      直接在as中 的终端用的是哪个jdk我也不清楚,毕竟as自带一个jdk,电脑也装过java,可能终端默认用的是之前装的java的jdk吧。但是根据教程应该是这样的,步骤如下:

    1. 在签名文件位置处打开cmd

    2. 在cmd 中输入命令 keytool -list -v -keystore 签名文件名称

keytool -list -v -keystore 签名文件名称.keystore或者jks
输入命令后提示输入密钥库口令,口令是你在添加签名文件的时候设置的,输入后回车,即可获取到如下SHA 1值。或者在任意位置打开cmd命令输入以下命令:

keytool -list -v -keystore 签名文件的绝对路径

后来根据高德地图的官网教程,其实发现人家早就告诉了你报错应该怎么排查了,如下图所示:
在这里插入图片描述

结语

  每个人刚开始学习的时候都是小白,这个过程中或多或少的都会看看别人写的博客,过程中也可能会踩过很多坑。遇到问题的时候,我们可以记录下来,不管是对自己还是对其他学习的小伙伴都很有帮助。程序员大多都是很孤独的,写作也可以让自己的孤独“有处安放”,多去表达,多点表达,对于不善言辞的程序员总是有很多好处,博文写作的过程中最重要的是思路清晰有条理,和敲代码最大的不同是,编程有了明确的目标,日复一日必成高手,而写作如果只是为了写而写,往往会失了初心,丢了本真。写作不仅可以提高言语表达能力,更可以培养持续做事情的毅力,最好得是能遇到很多志同道合的朋友。

转载自:https://blog.csdn.net/u014727709/article/details/126540051
欢迎start,欢迎评论,欢迎指正

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

想你依然心痛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值