[英]Flutter build Appbundle Error:* What went wrong: A problem occurred evaluating project ':app'
[英]Flutter build appbundle generate wrong environment variable for staging and production app
我是 Flutter 部署的新手,正在努力解決一些奇怪的問題。 事情一直很順利,直到有一天,當我發出命令fvm flutter build appbundle
時,它生成了兩個 .aab 版本,有利於 - 暫存和生產。 我嘗試將 staging.aab 文件上傳到我在 Play 控制台中的暫存項目。 當我從 Play Store 下載暫存應用程序時,該應用程序指的是生產環境,因此調用了錯誤的 API。事實證明,無論我如何使用fvm flutter clean
清理項目並手動刪除構建文件夾,它總是構建暫存應用程序和具有生產變量的生產應用程序。 它在 Android Studio 中使用暫存配置的模擬器中運行良好。 我不確定要提供什么代碼片段,我嘗試搜索類似的問題但找不到。 如果這是一個糟糕的問題,我深表歉意,我已經嘗試構建和上傳了幾個小時,但它的行為仍然相同。 iOS 雖然工作正常。
代碼檢測環境與此
factory Constants.of() {
if (_instance != null) {
return _instance!;
}
final flavor = EnumToString.fromString(
Flavor.values,
const String.fromEnvironment('FLAVOR'),
);
switch (flavor) {
case Flavor.staging:
_instance = Constants._stg();
break;
case Flavor.production:
default:
_instance = Constants._prd();
}
return _instance!;
}
在應用程序/build.gradle
flavorDimensions "environment"
productFlavors {
staging {
dimension "environment"
applicationIdSuffix ".staging"
versionNameSuffix "-Stg"
signingConfig signingConfigs.staging
}
production {
dimension "environment"
signingConfig signingConfigs.production
}
}
不確定是否有幫助
請嘗試使用此命令flutter build appbundle --flavor production
構建您的 App Bundle。 我認為這個命令解決了你的問題! 或者你可以按照這個博客來設置你的環境https://medium.com/@salvatoregiordanoo/flavoring-flutter-392aaa875f36
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.