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/ 目录下。

相关推荐
StarShip1 小时前
从Activity.setContentView()开始
android
千里马学框架1 小时前
重学SurfaceFlinger之Layer显示区域bounds计算剖析
android·智能手机·sf·安卓framework开发·layer·surfaceflinger·车载开发
nono牛2 小时前
安卓休眠与唤醒流程
android
晚烛2 小时前
实战前瞻:构建高安全、强协同的 Flutter + OpenHarmony 智慧金融移动银行平台(支持国产密码体系、生物认证与信创全栈适配)
安全·flutter·金融
子榆.3 小时前
Flutter 与开源鸿蒙(OpenHarmony)国际化与无障碍适配指南:打造真正包容的跨平台应用
flutter·华为·开源·harmonyos
子榆.3 小时前
Flutter 与开源鸿蒙(OpenHarmony)深度集成:从原理到实战进阶
flutter·华为·开源·harmonyos
二流小码农3 小时前
鸿蒙开发:个人开发者如何使用华为账号登录
android·ios·harmonyos
StarShip3 小时前
Android View框架概览
android·计算机图形学
愤怒的代码3 小时前
解析Android内存分析的指标
android·app
summerkissyou19874 小时前
android-hardware/interfaces/automotive和hardware/libhardware/include/hardware区别
android