flutter 安卓端打包

在 Flutter 中打包 Android 应用程序是一个相对简单的过程。你可以使用 Flutter 的命令行工具来构建并打包你的 APK 或 AAB(Android App Bundle)。以下是打包 Flutter Android 应用的步骤:

1. 安装 Flutter 环境

确保你已经安装了 Flutter SDK,并且正确配置了 Android 开发环境。如果还没安装,可以按照Flutter 官方安装文档进行操作。

你可以通过以下命令来确认 Flutter 是否安装成功:

shell 复制代码
flutter doctor

2. 配置 Android 项目的签名

在发布应用之前,你需要为 Android 项目配置一个签名。Flutter 通过 keytool 工具生成签名证书,并将其配置到 android/app 文件夹中的 key.properties 文件。

生成签名证书

在终端中运行以下命令生成一个新的签名证书(如果你没有现成的证书):

shell 复制代码
keytool -genkey -v -keystore ~/key.jks -keyalg RSA -keysize 2048 -validity 10000 -alias key

● 输入6位密钥口令。如: 123123

● 一路回车

● 最后问是否正确打入 y 即可生成

然后将生成的.jks文件放到你的 Flutter 项目的 android/app 目录下。

配置 key.properties

在你的 Flutter 项目的 android/ 根目录下创建一个名为 key.properties 的文件,内容如下:

复制代码
storePassword=<your-store-password> 
keyPassword=<your-key-password>
keyAlias=<your-key-alias>
storeFile=<path-to-your-keystore> 

<your-store-password><your-key-password> 替换为你生成证书时设置的密码,<your-key-alias> 替换为证书的别名,<path-to-your-keystore> 替换为你 .jks 文件的路径。

复制代码
storePassword=123123
keyPassword=123123
keyAlias=key
storeFile=key.jks

修改 android/app/build.gradle

接下来,你需要在 android/app/build.gradle 文件中修改签名部分,使其使用你刚刚配置的证书。

● 首先在 android {这一行的上面,加入如下代码:

复制代码
def keystorePropertiesFile = rootProject.file("key.properties")
def keystoreProperties = new Properties()
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))

● 接着找到 signingConfigs 部分并进行修改:

复制代码
android {
    ...

    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile file(keystoreProperties['storeFile'])
            storePassword keystoreProperties['storePassword']
        }
    }

    buildTypes {
        release {
            signingConfig signingConfigs.release
            // Proguard 混淆配置,如果需要的话
            // minifyEnabled true
            // shrinkResources true
        }
    }
}

3. 打包 APK 或 AAB

打包 APK

如果你只想生成 APK 文件,可以运行以下命令:

shell 复制代码
flutter build apk --release

默认情况下,APK 文件会生成在 build/app/outputs/flutter-apk/ 目录下。

如果你想为特定的架构生成 APK,可以使用以下命令:

shell 复制代码
flutter build apk --release --target-platform android-arm,android-arm64,android-x64

打包 AAB

如果你需要生成 Android App Bundle (AAB),可以使用以下命令:

shell 复制代码
flutter build appbundle --release

生成的 AAB 文件将位于 build/app/outputs/bundle/release/ 目录下。

相关推荐
weixin_4407841114 小时前
【HandlerThread实现原理】
android·java·开发语言
唐诺16 小时前
Android USB ADB 调试方案完全解析
android·adb·usb
FungLeo19 小时前
Flutter 接入 Alice 调试浮窗:一个顶层 final 抢跑,把 release 网络整没了
网络·flutter
寰宇星城21 小时前
AppActuator - 让 AI Agent 直接理解并操作运行中的 Android App
android
波罗丁牌21 小时前
uni-app 实现视频聊天、屏幕分享,支持Android、HarmonyOS、iOS
android·uni-app·音视频
峥嵘life21 小时前
Android WiFi 热点 Channel 信道 和 Frequency 频率 转换总结
android·开发语言
jieyucx21 小时前
【高级利用】条件竞争与逻辑漏洞:与服务器赛跑的艺术
android·运维·服务器·web安全·文件上传
凡泰AI1 天前
APP同时覆盖了iOS、安卓和鸿蒙,如何选择混合开发架构才能减少重复建设,提高功能上线效率~
android·ios·harmonyos·mpaas·uni·小程序容器
叶辞树1 天前
死锁问题分析
android
TimeFine1 天前
让 Codex “用上”Android Studio:JetBrains MCP Server 接入与实践
android