Android App Bundle签名密钥错误且新密钥丢失,如何在Google Play Console解决?
解决Google Play上传密钥丢失导致的签名不匹配问题
前提条件
你必须已在Google Play Console中启用Google Play应用签名(新创建的应用默认已开启,若未开启则无法通过此方法解决,只能重新发布新应用)
步骤1:生成新的上传密钥
在终端执行以下命令生成新的密钥库文件:
keytool -genkeypair -alias upload -keyalg RSA -keysize 2048 -validity 9125 -keystore upload-keystore.jks
执行过程中需设置密钥库密码、密钥密码等信息,请妥善记录。
步骤2:导出公钥证书
从新密钥库导出PEM格式的公钥证书,用于提交给Google Play:
keytool -export -rfc -alias upload -file upload_certificate.pem -keystore upload-keystore.jks
步骤3:在Google Play Console提交密钥重置申请
- 打开你的应用后台,进入左侧菜单「发布」→「设置」→「应用签名」
- 在「上传密钥」区域,点击「申请重置上传密钥」
- 上传刚才生成的
upload_certificate.pem文件,填写密钥丢失的相关说明,提交申请 - 等待Google Play团队审核,通常1-3个工作日会完成处理
步骤4:更新项目签名配置
- 将新生成的
upload-keystore.jks文件放到项目的android/app目录下 - 确认
android/gradle.properties中的签名配置信息正确:MYAPP_UPLOAD_STORE_FILE=upload-keystore.jks MYAPP_UPLOAD_STORE_PASSWORD=你的密钥库密码 MYAPP_UPLOAD_KEY_ALIAS=upload MYAPP_UPLOAD_KEY_PASSWORD=你的密钥密码 - 确认
android/app/build.gradle中的签名配置引用正确:android { ... signingConfigs { upload { storeFile file(MYAPP_UPLOAD_STORE_FILE) storePassword MYAPP_UPLOAD_STORE_PASSWORD keyAlias MYAPP_UPLOAD_KEY_ALIAS keyPassword MYAPP_UPLOAD_KEY_PASSWORD } } buildTypes { release { ... signingConfig signingConfigs.upload } } }
步骤5:重新构建并上传
执行命令生成新的App Bundle:
flutter build appbundle --no-tree-shake-icons
将生成的文件上传至Google Play Console即可正常提交。
注意事项
- 密钥丢失后若未启用Google Play应用签名,无法恢复原有签名,只能创建新应用重新发布
- 新生成的密钥务必做好多份备份(如云存储、本地硬盘、U盘等),避免再次丢失
内容的提问来源于stack exchange,提问作者Даулет Жунусов
相关产品推荐
相关产品推荐

