我正在尝试使用 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 文件的风格来查找适当的主文件。
要为每种风格构建 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
上述命令适用于发布版本,但对于调试版本,您可能需要使用此命令:
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
仅适用于生产环境
flutter build apk -t lib/main_prod.dart --release
用于发布apk和flutter build apk -t lib/main_prod.dart --debug
用于调试apk应该可以工作。
这是非常简单的使用下面的命令
flutter build apk --[BuildType] --flavor [Flavor Name]
待发布
flutter build apk --release --flavor production
用于调试
flutter build apk --debug --flavor production