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

Flutter AAB上传Google Play提示未签名,求Google代签配置方法

解决Flutter AAB上传Google Play提示未签名的问题

你搞错了一个关键点:即使选择「由Google Play签名发布」,你本地构建的AAB也必须先用上传密钥完成签名。Google Play是用它托管的应用签名密钥给最终用户下载的APK做签名,而上传的AAB需要你用上传密钥签名来证明身份,不然Google没法验证包的合法性。

按以下步骤操作即可解决:

1. 生成上传密钥(如果还没有)

打开终端,执行以下命令生成JKS格式的上传密钥库:

keytool -genkey -v -keystore upload-keystore.jks -storetype JKS -keyalg RSA -keysize 2048 -validity 10000 -alias upload

执行过程中会要求你设置密钥库密码和密钥密码,记得保存好。生成的upload-keystore.jks文件放到android/app目录下。

2. 配置密钥信息到gradle.properties

在项目根目录的gradle.properties文件中添加以下内容(替换成你自己的密码和文件名):

MYAPP_UPLOAD_STORE_FILE=upload-keystore.jks
MYAPP_UPLOAD_KEY_ALIAS=upload
MYAPP_UPLOAD_STORE_PASSWORD=你的密钥库密码
MYAPP_UPLOAD_KEY_PASSWORD=你的密钥密码

3. 修改android/app/build.gradle的签名配置

在android代码块中添加签名配置,然后关联到release构建类型:

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 {
            minifyEnabled true
            debuggable false
            // 关联上传密钥签名配置
            signingConfig signingConfigs.upload
        }
    }
}

4. 重新构建并上传

执行命令重新构建签名后的AAB:

flutter build appbundle --release

现在把生成的build/app/outputs/bundle/release/app-release.aab上传到Google Play,就不会再提示未签名了,Google会自动用应用签名密钥完成最终的签名流程。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 03:35:20