例如,为 API 构建客户端,例如 Twitch。
在 Dart CLI 二进制文件中,我可以使用通用环境变量或 Dart 定义变量。例如,将两者都用作后备:
main() {
String clientId =
// dart -dCLIENT_ID='abc bin/example.dart
// This is considered "compiled-into" the application.
const String.fromEnvironment('CLIENT_ID') ??
// CLIENT_ID='abc' dart bin/example.dart
// This is considered a runtime flag.
Platform.environment['CLIENT_ID'];
// Use clientId.
}
Flutter 是否有办法设置其中一个/两个,特别是...
一旦我弄清楚如何帮助一些文档,我很高兴:)
最佳答案
从 Flutter 1.17 开始,您可以根据需要定义编译时变量。
为此,只需在 flutter run
或 flutter build
--dart-define
参数
如果需要传递多个键值对,只需定义--dart-define
多次即可:
flutter run --dart-define=SOME_VAR=SOME_VALUE --dart-define=OTHER_VAR=OTHER_VALUE
然后,您可以在代码中的任何位置使用它们,例如:
const SOME_VAR = String.fromEnvironment('SOME_VAR', defaultValue: 'SOME_DEFAULT_VALUE');
const OTHER_VAR = String.fromEnvironment('OTHER_VAR', defaultValue: 'OTHER_DEFAULT_VALUE');
此外,它们也可以在原生层中使用。
Here is an article that explains more.
https://stackoverflow.com/questions/44250184/