You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android应用生成SHA-256密钥遇阻:仅获MD5、SHA-1密钥怎么办?

我来帮你解决这个问题,你遇到的情况其实和JDK版本以及keytool的命令参数有关——JDK 7及更早版本的keytool默认不会显示SHA-256指纹,不过有好几种方法可以获取到它:

方法1:给现有命令加参数(不用升级JDK)

你之前的命令没有开启详细输出模式,JDK7的keytool默认只展示MD5和SHA-1。只要在命令里加上-v(verbose,详细模式)参数,就能看到SHA-256了:

C:\Program Files (x86)\Java\jdk1.7.0\bin>keytool -printcert -v -file C:\Users\vabs\Desktop\app-releaseSHA256Demo\META-INF\CERT.RSA

执行后,输出内容里会找到SHA256:开头的那一行,就是你要的密钥指纹。

方法2:直接从Android Studio获取(最省心)

如果你的项目在Android Studio里,这是最快的方式:

  • 点击右上角的Gradle图标(大象形状的按钮)
  • 展开你的项目节点 → Tasks → android
  • 找到signingReport选项,双击运行它
  • 等运行完成后,在底部的Run窗口里,就能看到所有签名版本(debug、release)的MD5、SHA-1、SHA-256指纹,直接复制即可。

方法3:查看你的签名密钥库文件

如果你有自己的release签名密钥库(比如.keystore或.jks文件),可以直接用keytool查看它的详细信息:

keytool -list -v -keystore <你的密钥库文件路径> -alias <你的密钥别名>

输入密钥库的密码后,输出里就会包含SHA-256的指纹。同样,JDK7下记得加-v参数才能看到完整信息。

方法4:升级到JDK 8+(一劳永逸)

JDK 8及以上版本的keytool,默认执行keytool -printcert -file <CERT.RSA路径>时就会自动显示SHA-256指纹,不需要额外加参数。升级后再运行你原来的命令,就能看到想要的内容了。

内容的提问来源于stack exchange,提问作者VaibhavBhosale

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:26:10