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

如何通过命令行使用新密钥库签名Android App Bundle?

解决AAB命令行签名及Google Play上传失败问题

你遇到的这个签名无效错误,核心原因是当前使用的签名算法不符合Google Play的要求——现在Google Play强制要求应用签名使用SHA-256相关算法,而你用的jarsigner命令里还是旧的SHA1算法,这就导致签名不被平台认可。

修正后的jarsigner签名命令

直接修改命令里的算法参数,就能符合Google Play的要求:

jarsigner -verbose -sigalg SHA256withRSA -digestalg SHA-256 -keystore example.jks bundle.aab keystoreAlias

重点调整这两个关键参数:

  • 把SHA1withRSA替换为SHA256withRSA(签名算法)
  • 把SHA1替换为SHA-256(摘要算法)
    另外要确保你的密钥库文件路径、密钥别名都是正确的,输入命令时注意不要拼写错误。

更推荐的现代签名方式:用apksigner

虽然jarsigner能解决问题,但Google现在更推荐用apksigner工具(属于Android SDK Build Tools组件)来签名应用束,它的命令更简洁,也更适配Android的签名规范:

apksigner sign --ks example.jks --ks-key-alias keystoreAlias bundle.aab

如果你的密钥库或密钥有密码,可以直接在命令里指定(注意明文密码存在安全风险,也可以不写让命令交互提示输入):

apksigner sign --ks example.jks --ks-pass pass:你的密钥库密码 --ks-key-alias keystoreAlias --key-pass pass:你的密钥密码 bundle.aab

验证签名是否有效

签名完成后,建议先验证一下签名是否正确,避免再次上传失败:

用jarsigner验证

jarsigner -verify -verbose -certs bundle.aab

如果输出里没有错误提示,就说明签名有效。

用apksigner验证

apksigner verify bundle.aab

如果返回Verified相关的提示,就说明签名符合要求了。

这样修改后再上传到Google Play,应该就能解决那个签名无效的错误了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:14:36