feat(mobile): flutter scaffold with env script and baseline nav

- scripts/flutter-env.sh: toolchain PATH/JAVA_HOME/ANDROID_HOME + pub 镜像 env
- apps/mobile: flutter create (com.photolive.photo_live, android+ios)
  - Android minSdk 24 / targetSdk 36;INTERNET 权限(main manifest,debug+release)
  - iOS Info.plist:本地网络 ATS 例外 + 相册/相机用途说明(zh+en)
- 依赖接入:riverpod / drift(+sqlite3_flutter_libs) / dio / secure_storage /
  image_picker / camera / qr_flutter / path_provider / path / intl
- l10n:l10n.yaml + app_zh/app_en arb(20 键),gen-l10n(zh 模板,非空 getter)
- 基线:Material 3 主题、/login→/home 命名路由、底部导航(相册/队列/设置桩)、
  locale provider 脚手架(Task 10 完成切换)
- flutter analyze 零问题;widget 测试通过;debug apk 构建成功
  (MuMu 冒烟因宿主 commit 内存耗尽未完成,Task 2 重试)

Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
浅念
2026-09-19 00:22:04 +08:00
parent 5879552ecb
commit 8bc50e07ef
80 changed files with 3408 additions and 0 deletions
+46
View File
@@ -0,0 +1,46 @@
name: photo_live
description: 工作人员现场影像上传 App(P3,Android 优先 / iOS 待 G3 编译)。
publish_to: 'none'
version: 1.0.0+1
environment:
sdk: ^3.12.2
dependencies:
flutter:
sdk: flutter
flutter_localizations:
sdk: flutter
# 状态管理
flutter_riverpod: ^3.4.3
# 网络
dio: ^5.11.1
# 本地任务库(Task 5 建 schema)
drift: ^2.35.0
sqlite3_flutter_libs: ^0.6.0+eol
# 会话与凭证存储
flutter_secure_storage: ^11.2.0
# 选图 / 连拍
image_picker: ^1.2.3
camera: ^0.12.1
# 分享二维码
qr_flutter: ^4.1.0
# 路径
path_provider: ^2.1.6
path: ^1.9.1
# l10n(与 flutter_localizations 来自 SDK 的约束保持一致)
intl: 0.20.2
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^6.0.0
build_runner: ^2.15.1
drift_dev: ^2.35.0
flutter:
# l10n 代码生成(arb 见 lib/l10n/,配置见 l10n.yaml)
generate: true
uses-material-design: true