[英]How to use --dart-define in a Flutter app embdedded in Android
我正在将 Flutter 应用程序作为模块嵌入到现有 Android 应用程序中( https://flutter.dev/docs Isetup/add- to-app/android/project/)使用“--dart-define”来定义编译时常量。 尝试使用./gradlew -Ddart-define=myVal=Value
没有任何运气。
在构建典型的 Flutter 应用程序时,我将使用flutter
命令。 就我而言,我将继续使用gradlew
来构建我的应用程序,目前还不清楚如何传入 --dart-define 常量。
如果您的项目依赖于 Android 存档 (AAR)。
您可以在命令行中传递dart-defines
。
flutter build aar --dart-define=myVal=Value
如果您的项目依赖于模块的源代码。
您可以在您的 android 宿主项目目录(或yourHostProject/yourFlutter/.android/Flutter/
目录)中的gradle.properties
中设置dart-define
。
--dart-define=myVal=Value
解释
.android/Flutter/build.gradle
脚本执行"$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"
脚本。 执行flutter.gradle
时,您的 dart 文件将被编译为原生代码。
flutter.gradle
loads dart-defines from the .android/Flutter
project instance ( flutter.gradle#731-L734 ) and then, use it ( flutter.gradle#L1091-L1093 ).
要设置项目实例值,请将--dart-define=myVal=Value
添加到gradle.properties
中。 (如果您有多个gradle.properties
文件,请考虑配置顺序( Gradle 文档中的 Gradle 属性)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.