FLUTTER := flutter .PHONY: help run-dev run-staging build-staging build-prod build-apk-dev clean gen gen-i18n help: @echo "Flutter Flavor 构建命令:" @echo "" @echo " make run-dev 开发版调试运行(热重载,连 dev 服务器)" @echo " make run-staging 测试版 Release 运行(连 test 服务器)" @echo " make build-staging 打测试版 APK(给测试团队安装)" @echo " make build-prod 打正式版 AAB(上 Play Store / 内部分发)" @echo " make build-apk-dev 打开发版 APK(快速真机验证)" @echo " make clean 清除构建缓存" @echo " make gen 代码生成(build_runner)" @echo " make gen-i18n 生成 i18n ARB → Dart" @echo "" @echo "注意:build-prod 需先复制 dart-defines/prod.json.template 为 dart-defines/prod.json 并填入真实密钥" run-dev: $(FLUTTER) run --flavor dev \ --dart-define-from-file=dart-defines/dev.json run-staging: $(FLUTTER) run --flavor staging --release \ --dart-define-from-file=dart-defines/staging.json build-apk-dev: $(FLUTTER) build apk --flavor dev --debug \ --dart-define-from-file=dart-defines/dev.json build-staging: $(FLUTTER) build apk --flavor staging --release \ --dart-define-from-file=dart-defines/staging.json @echo "APK 路径:build/app/outputs/flutter-apk/app-staging-release.apk" build-prod: @test -f dart-defines/prod.json || \ (echo "ERROR: dart-defines/prod.json 不存在!请从 prod.json.template 复制并填入真实密钥。" && exit 1) $(FLUTTER) build appbundle --flavor prod --release \ --dart-define-from-file=dart-defines/prod.json @echo "AAB 路径:build/app/outputs/bundle/prodRelease/app-prod-release.aab" clean: $(FLUTTER) clean gen: dart run build_runner build --delete-conflicting-outputs gen-i18n: dart run slang