Unity安卓应用release.keystore SHA1指纹不一致致Google Play上传失败
解决Google Play上传版本指纹不一致问题
排查方向及解决步骤
确认Unity打包时的签名文件配置
打包时很容易误选debug keystore或其他无关签名文件,检查以下设置:- 打开
Build Settings→Player Settings→Publishing Settings - 在
Keystore Manager里确认选中的是你核对过SHA-1的release.keystore,同时密码、别名输入正确 - 确保未勾选
Use debug keystore选项
- 打开
区分Google Play的两类签名指纹
如果开启了Google Play App Signing,要明确两个指纹的区别:- 上传密钥指纹:对应你本地
release.keystore的指纹,需要和控制台App signing页面的Upload certificate一致 - 应用签名密钥指纹:由Google托管,控制台显示的
App signing certificate是这个,上传版本只需要匹配上传密钥指纹即可
确认你核对的是上传密钥的SHA-1,而非应用签名密钥
- 上传密钥指纹:对应你本地
重新打包并验证文件指纹
打包过程可能出现缓存或文件损坏,重新操作后验证:- 用Unity重新导出签名后的APK/AAB
- 用命令验证导出文件的指纹:
对比输出的SHA-1与本地keystore的指纹是否一致# 验证APK指纹 keytool -printcert -jarfile 你的应用文件.apk # 验证AAB指纹 jarsigner -verify -verbose -certs 你的应用文件.aab
清理Unity缓存后重新打包
Unity缓存可能导致使用旧签名配置:- 关闭Unity,删除项目根目录下的
Library文件夹 - 重新打开项目,等待资源重新导入
- 重新配置打包签名信息并导出
- 关闭Unity,删除项目根目录下的
内容的提问来源于stack exchange,提问作者Terrence Skill
相关产品推荐
相关产品推荐

