Che*_*ong 6 android flutter build-variant
我需要有 3 个不同的 APK(dev、UAT、prod),每个 APK 都针对不同的 Firebase 数据库。但在每个 Firebase 项目中,我需要提供一个永久的应用程序 ID。这意味着我需要有 3 个构建变体,每个变体都使用不同的应用程序 ID 部署 APK。但在Android Studio上,我似乎找不到这样的方法来为此目的构建Flutter变体(构建变体部分是空的)。
我正在寻找的不仅仅是不同的入口点和不同的常量,而是完全不同的应用程序 ID。据我所知,在 Flutter 中更改应用程序名称和应用程序 id 需要像这样的6 个步骤。我认为每次想要更改构建范围时执行这 6 个步骤并不是处理此问题的有效且正确的方法。
在 Flutter 中,您应该选择构建风格而不是构建变体(构建风格和构建类型的组合)。Flutter run有--flavor选项,但没有buildType。
在build.gradle下面defaultConfig {}:
android {\n ...\n buildTypes {\n release {\n // TODO: Add your own signing config for the release build.\n // Signing with the debug keys for now, so `flutter run --release` works.\n signingConfig signingConfigs.debug\n }\n debug {\n applicationIdSuffix ".debug" // Optional, you don\'t need to create a separate applicationId for debug.\n signingConfig signingConfigs.debug\n }\n }\n\n flavorDimensions "default"\n productFlavors {\n dev {\n applicationIdSuffix ".dev"\n }\n qa {\n applicationIdSuffix ".qa"\n }\n prod {\n }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\nflutter run --flavor flavorName, 或Additional run args:\xe2\x86\x92 添加--flavor dev或--flavor qa或--flavor prod确认 applicationId 已更改。我为此使用package_info_plus :
\npackage_info_plus: ^1.0.4pubspec.yamlandroid {\n ...\n buildTypes {\n release {\n // TODO: Add your own signing config for the release build.\n // Signing with the debug keys for now, so `flutter run --release` works.\n signingConfig signingConfigs.debug\n }\n debug {\n applicationIdSuffix ".debug" // Optional, you don\'t need to create a separate applicationId for debug.\n signingConfig signingConfigs.debug\n }\n }\n\n flavorDimensions "default"\n productFlavors {\n dev {\n applicationIdSuffix ".dev"\n }\n qa {\n applicationIdSuffix ".qa"\n }\n prod {\n }\n }\n}\nRun Code Online (Sandbox Code Playgroud)\napplicationIdSuffix和buildTypes, productFlavors. 如果您不需要/想要它,com.example.dev.debug可以将其删除。applicationIdSuffix ".debug"现在我们可以拥有单独的构建风味目录及其自己的google-services.json.
| 归档时间: |
|
| 查看次数: |
4867 次 |
| 最近记录: |