如何在AndroidStudio中实现类似VSCode的preLaunchTask功能?
可行的Android Studio Run Configuration配置方案
方案1:可共享的外部工具+Run Configuration组合
- 打开Android Studio,点击顶部运行配置下拉框选择「Edit Configurations...」
- 点击左上角「+」,选「Flutter」新建配置:
- 「Name」填
UAT - 「Dart entrypoint」选择项目根目录的
lib/main.dart - 「Additional run args」填入:
--dart-define-from-file=env.json
- 「Name」填
- 配置预启动脚本:
- 打开「File -> Settings -> Tools -> External Tools」,点击「+」新建工具:
- 「Name」填
Run UAT Setup - 「Program」填
bash(Windows用户填cmd.exe) - 「Arguments」填
setup.sh uat(Windows用户对应填setup.bat uat) - 「Working directory」选择项目根目录
- 「Name」填
- 回到Run Configuration,在「Before launch」点击「+」,选「External tool」并选中刚创建的
Run UAT Setup - 右键该Run Configuration,选择「Export to File...」,保存到项目根目录下新建的
.run文件夹,将整个.run文件夹提交到Git - 同事只需右键项目,选「Import Run Configurations...」导入该文件,即可直接使用
- 打开「File -> Settings -> Tools -> External Tools」,点击「+」新建工具:
方案2:基于pubspec.yaml的自定义脚本
在项目根目录的pubspec.yaml中添加自定义命令:
scripts: uat-setup: bash setup.sh uat
然后配置Run Configuration:
- 新建Flutter配置,名称设为
UAT - 在「Before launch」点击「+」,选「Run Flutter Command」,命令填
run uat-setup - 「Additional run args」填入
--dart-define-from-file=env.json
方案3:Android端build.gradle绑定前置脚本
在android/app/build.gradle最外层添加:
task runUatSetup(type: Exec) { commandLine 'bash', 'setup.sh', 'uat' workingDir project.rootDir } flutter.run.dependsOn runUatSetup
之后在Flutter Run Configuration中,仅需将--dart-define-from-file=env.json填入「Additional run args」即可。注意该方案仅对Android端运行生效,iOS端需额外在ios/Runner.xcworkspace的构建阶段添加脚本执行逻辑。
内容的提问来源于stack exchange,提问作者cgutierr
相关产品推荐
相关产品推荐

