docs(plans): 留痕 K60 原生开屏生成
This commit is contained in:
1 parent
36cd6a0fcd
commit
0a48d2739a
2 files changed
+56
-16
No files matched your search
+25
-16
@@ -1,23 +1,32 @@
|
||||
## [已处理] 2026-10-20 | K58-A 开屏改浅色(去掉原生黑屏)+ 自定义开屏文字加深(仅 App 端)
|
||||
## [已处理] 2026-10-20 | K60-A 用 flutter_native_splash 接管原生开屏(透明观感,无黑屏)(仅 App 端)
|
||||
|
||||
**用户指令(2026-10-20,原文)**:
|
||||
> 「现在安卓端安装的app 图标没有改为最新的 还有原来的启动屏弄成透明的 不然会黑屏 另外 自定义的启动屏的字体看不清」
|
||||
> 「启动屏用户这flutter_native_splash 把原生的改成透明」
|
||||
|
||||
**口径(只改 Flutter / 原生启动资源)**
|
||||
1. 原生启动不再黑屏:
|
||||
- `android/app/src/main/res/drawable*/launch_background.xml` 保持仅纯色,但颜色改为与 Flutter 开屏一致的浅暖色 `#FFF8F0`(`splash_background` 同步修改);
|
||||
- `values-v31` / `values-night-v31` 的 `windowSplashScreenBackground` 一并改成 `#FFF8F0`,`windowSplashScreenAnimatedIcon` 继续使用透明 drawable;
|
||||
- 这样原生阶段是浅暖底,不会出现黑屏,也与 Flutter 开屏无缝衔接(Android 12 的 splash 背景必须给不透明色,纯透明会被系统渲染成黑色)。
|
||||
2. Flutter 自定义开屏改浅色主题,解决文字看不清:
|
||||
- 背景 `AppColors.ink`(#FFF8F0),状态栏深色图标;
|
||||
- `FruitShorts` 改 `AppColors.onSurface` 28 号 w900;「水果短剧」改 `AppColors.muted` 13 号、字距 4;
|
||||
- logo 柔光改 `0x33FF7A1A`;转圈保持主题橙;
|
||||
- 动画时序、Key(splash-screen/splash-brand/splash-tagline/splash-loading)全部保留。
|
||||
3. 图标无需改图:最新 APK 已重装到 Android 设备(图标资源已在包内);若桌面仍显示旧图标属启动器缓存,重启桌面/重新添加图标即可,代码侧不做处理。
|
||||
**口径**
|
||||
1. `dev_dependencies` 增加 `flutter_native_splash`(取当前 pub 稳定版)。
|
||||
2. `pubspec.yaml` 增加配置(不配置 image,原生阶段不出现任何静态图):
|
||||
```yaml
|
||||
flutter_native_splash:
|
||||
color: "#FFF8F0"
|
||||
color_dark: "#FFF8F0"
|
||||
android: true
|
||||
ios: true
|
||||
web: false
|
||||
android_12:
|
||||
color: "#FFF8F0"
|
||||
color_dark: "#FFF8F0"
|
||||
icon_background_color: "#FFF8F0"
|
||||
```
|
||||
说明:Android 12 及 iOS 的启动背景必须是实色,纯透明会被系统渲染成黑色;这里用与 Flutter 动画开屏完全一致的 `#FFF8F0`,视觉上就是「无原生开屏、直接进动画」,不存在黑屏。
|
||||
3. 执行 `dart run flutter_native_splash:create` 生成原生资源:
|
||||
- Android:`launch_background.xml`、`values-v31`/`values-night-v31` 的 splash 背景统一 `#FFF8F0`,无 image;
|
||||
- iOS:LaunchScreen.storyboard 仅纯色背景、无 LaunchImage。
|
||||
4. 清理此前手写的冲突项(如 `drawable/splash_transparent.xml`、自定义 splash_icon 引用);保留 Flutter 动画开屏页(K58-A 浅色版)。
|
||||
5. 在 README 或 pubspec 注释注明:以后改开屏配置后需重新执行 `dart run flutter_native_splash:create`。
|
||||
|
||||
**测试/门禁**
|
||||
- 更新开屏测试:背景为 `AppColors.ink`、品牌文字颜色为 `AppColors.onSurface`、标语为 `AppColors.muted`;
|
||||
- 静态检查 `splash_background` 为 `#FFF8F0`;
|
||||
- 静态检查:生成的 launch_background / v31 styles 背景为 #FFF8F0、无 bitmap;iOS storyboard 无 LaunchImage;
|
||||
- `dart analyze lib test` 零告警 + `flutter test` 全过 + `flutter build apk --debug`。
|
||||
|
||||
**流程**:从 `develop` 拉 `feature/flutter-k58-light-splash`;作者 `Zhou Weidong <502333560@qq.com>`;`--no-ff` 合回 develop 并 push;PROGRESS 留痕;真机验收由用户执行。
|
||||
**流程**:从 `develop` 拉 `feature/flutter-k60-native-splash`;作者 `Zhou Weidong <502333560@qq.com>`;`--no-ff` 合回 develop 并 push;PROGRESS 留痕;真机验收由用户执行。
|
||||
@@ -22069,6 +22069,37 @@ Running Gradle task 'assembleDebug'...
|
||||
|
||||
解读:静态检查零告警,471 条测试全部通过,debug APK 构建成功。视频正常播放界面不再出现调试小字,错误诊断仍可通过错误摘要和 Xcode `[video]` 日志获取。
|
||||
|
||||
## 2026-10-20 ReelShort:K60-A flutter_native_splash 原生开屏
|
||||
|
||||
- 前置状态:K58-A 与 K59-A 均已合并,develop 合并提交分别为 `da54949`、`7c2fd09`。
|
||||
- 分支:`feature/flutter-k60-native-splash`
|
||||
- 功能提交:`983e99a feat(flutter): 接入 flutter_native_splash 原生开屏`
|
||||
- develop 合并提交:`9eec9ed merge: 合并 K60 flutter_native_splash 原生开屏`,已推送。
|
||||
- `dev_dependencies` 增加当前稳定版 `flutter_native_splash: ^2.4.8`,配置 `color`、`color_dark`、`android_12.color`、`android_12.color_dark`、`icon_background_color` 全部为 `#FFF8F0`,不配置 image;Android/iOS 开启,web 关闭。
|
||||
- 已执行 `dart run flutter_native_splash:create`。生成器在无 image 时仍会创建 1×1 background/LaunchImage 资源;为满足硬性无图片要求,已清理这些生成图片、Android 12 旧图标、`splash_transparent.xml` 和 iOS LaunchImage 图片集。
|
||||
- Android 五个 launch_background 均为纯色且无 bitmap,v31/night-v31 背景为 `#FFF8F0`,系统动画图标使用 `@android:color/transparent`;iOS storyboard 仅保留 `#FFF8F0` 背景,无 LaunchImage。
|
||||
- `pubspec.yaml` 已注明以后修改开屏配置必须重新执行 `dart run flutter_native_splash:create`。K58-A 的 Flutter 浅色动画开屏保持不变。
|
||||
|
||||
静态检查:splash 配置五项均为 #FFF8F0;XML 校验通过;Android 资源无 splash_icon/splash_transparent/android12splash/background.png 引用;iOS 无 LaunchImage。
|
||||
|
||||
门禁原始输出:
|
||||
|
||||
```text
|
||||
$ dart analyze lib test
|
||||
Analyzing lib, test...
|
||||
No issues found!
|
||||
|
||||
$ flutter test
|
||||
00:49 +471: All tests passed!
|
||||
|
||||
$ flutter build apk --debug
|
||||
Running Gradle task 'assembleDebug'...
|
||||
29.8s
|
||||
✓ Built build/app/outputs/flutter-apk/app-debug.apk
|
||||
```
|
||||
|
||||
解读:静态检查零告警,471 条测试全部通过,debug APK 构建成功。原生启动只保留浅暖纯色过渡,无静态 logo 或 LaunchImage,随后直接进入 Flutter 动画开屏。
|
||||
|
||||
## 2026-10-20 ReelShort:K53-A 详情页首帧直出
|
||||
|
||||
- 前置状态:K52-A 已完成并合并,develop 合并提交 `a11ba50`。
|
||||
|
||||
Reference in new issue
Block a user