Flutter应用构建Release版本时如何修改keystore路径?
解决步骤
步骤1:手动创建
key.properties文件
该文件不会随Flutter项目自动生成,你需要自行在项目根目录的android/文件夹下新建,文件命名为key.properties。步骤2:填写最新keystore配置
在key.properties中写入如下内容,替换为你自己的实际信息:
# keystore存储密码 storePassword=你的存储密码 # 密钥密码 keyPassword=你的密钥密码 # 密钥别名 keyAlias=你的密钥别名 # keystore文件最新完整绝对路径,Mac可直接将文件拖入终端获取正确路径 storeFile=/Users/你的用户名/新的存储路径/my_keystore
- 步骤3:确认build.gradle签名配置
打开android/app/build.gradle文件,检查两处配置:
- android配置块上方是否有读取
key.properties的代码:
def keystoreProperties = new Properties() def keystorePropertiesFile = rootProject.file('key.properties') if (keystorePropertiesFile.exists()) { keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) }
- 签名配置块是否引用了上述变量,没有硬编码旧路径:
android { ... signingConfigs { release { keyAlias keystoreProperties['keyAlias'] keyPassword keystoreProperties['keyPassword'] storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null storePassword keystoreProperties['storePassword'] } } buildTypes { release { signingConfig signingConfigs.release } } }
如果之前你是直接把旧路径硬编码在storeFile字段里,直接替换为新路径即可,也可改为上述引用key.properties的方式避免后续修改麻烦。
- 步骤4:清理缓存重新构建
在项目根目录执行flutter clean清理旧构建缓存,之后再运行flutter build apk或flutter run --release即可正常读取新路径的keystore。
注意:请将
key.properties添加到项目的.gitignore文件中,避免密钥信息被提交到代码仓库造成泄露。
内容的提问来源于stack exchange,提问作者Agung
相关产品推荐
相关产品推荐

