Flutter android 风味生成 apk

问题描述 投票:0回答:4

我正在尝试使用 flutter 设置 Android 风格。

我有两个入口点。

lib/main_prod.dart
lib/main_dev.dart

我还在我的 gradle 文件中添加了以下内容

flavorDimensions "version"
productFlavors {
    prod {
        dimension "version"
        applicationIdSuffix ".prod"
    }
    dev {
        dimension "version"
        applicationIdSuffix ".dev"
        versionNameSuffix " Dev"
    }
}

现在我正在尝试生成两个单独的 apk,我可以用它们发布到 Google Play 商店。

我在 Android Studio 上尝试生成这些。

但是我收到此错误。

Android Studio 仍在尝试寻找 main.dart 文件,但是,对于我的两种风格,它们是 main_prod.dart 和 main_dev.dart。我如何告诉 Android Studio 根据我尝试获取 apk 文件的风格来查找适当的主文件。

android flutter dart google-play
4个回答
113
投票

要为每种风格构建 apk 或 appbundle(发布到 Playstore),您可以使用命令(推荐)而不是使用 android studio。

对于

prod
,您可以使用:

APK

flutter build apk --flavor prod -t lib/main_prod.dart

应用程序包

flutter build appbundle --flavor prod -t lib/main_prod.dart

dev

APK

flutter build apk --flavor dev -t lib/main_dev.dart

应用程序包

flutter build appbundle --flavor dev -t lib/main_dev.dart

5
投票

上述命令适用于发布版本,但对于调试版本,您可能需要使用此命令:

flutter build apk -t lib/main_dev.dart --flavor=dev --debug

否则可能会抛出这个错误:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:validateSigningDevRelease'.
> Keystore file not set for signing config release

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 5s
Running Gradle task 'assembleDevRelease'...                     6.6s
Gradle task assembleDevRelease failed with exit code 1

3
投票

仅适用于生产环境

flutter build apk -t lib/main_prod.dart --release
用于发布apk和
flutter build apk -t lib/main_prod.dart --debug
用于调试apk应该可以工作。


0
投票

这是非常简单的使用下面的命令

flutter build apk --[BuildType] --flavor [Flavor Name]

待发布

flutter build apk --release --flavor production

用于调试

flutter build apk --debug --flavor production
© www.soinside.com 2019 - 2024. All rights reserved.