Flutter项目打包android apk发布
环境介绍
- flutter 3.35.4
- android studio 2025.2.1
- java 17.0.16
- mac os 15.7.2
生产应用程序签名
keytool -genkey -v -keystore ~/[你的路径]/key.jks -keyalg RSA -keysize 2048 -validity 36500 -alias [你的APP别名]
指令中的 36500 表示证书有效期,单位为天。也就是100年。
下面是指令执行后的内容,你需要填写一些信息。

创建签名配置文件
改文件路径为:/android/key.properties,如果没有请创建

在这个文件中填写如下内容:
storePassword=1234567890 //创建签名时输入的密码
keyPassword=1234567890 //创建签名时输入的密码
keyAlias=key // 创建签名时输入的别名
storeFile=/Users/stephen/Flutter/key.jks // 签名存放的路径
修改app的build.gradle.kts文件
路径:/android/app/build.gradle.kts

在文件的顶部加入
import java.util.Properties
import java.io.FileInputStream
找到文件中的 android {}块,在他的前面,不是里面,添加如下内容。
val keystoreProperties = Properties()
val keystorePropertiesFile = rootProject.file("key.properties")
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(FileInputStream(keystorePropertiesFile))
}
// 他的前面
android {
// ..........
}
在 android 属性块内的 buildTypes 属性块之前添加签名配置。
signingConfigs {
create("release") {
keyAlias = keystoreProperties["keyAlias"] as String
keyPassword = keystoreProperties["keyPassword"] as String
storeFile = keystoreProperties["storeFile"]?.let { file(it) }
storePassword = keystoreProperties["storePassword"] as String
}
}
// buildTypes 块之前
buildTypes {
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
signingConfig = signingConfigs.getByName("debug")
}
}
运行打包命令
flutter build apk
等待一会儿,对应文件夹下的几个 apk 都可以

参考文件 https://docs.fluttercn.cn/deployment/android#sign-the-app
3794

被折叠的 条评论
为什么被折叠?



