33 lines
1.9 KiB
Markdown
33 lines
1.9 KiB
Markdown
## [已处理] 2026-10-20 | K60-A 用 flutter_native_splash 接管原生开屏(透明观感,无黑屏)(仅 App 端)
|
||
|
||
**用户指令(2026-10-20,原文)**:
|
||
> 「启动屏用户这flutter_native_splash 把原生的改成透明」
|
||
|
||
**口径**
|
||
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`。
|
||
|
||
**测试/门禁**
|
||
- 静态检查:生成的 launch_background / v31 styles 背景为 #FFF8F0、无 bitmap;iOS storyboard 无 LaunchImage;
|
||
- `dart analyze lib test` 零告警 + `flutter test` 全过 + `flutter build apk --debug`。
|
||
|
||
**流程**:从 `develop` 拉 `feature/flutter-k60-native-splash`;作者 `Zhou Weidong <502333560@qq.com>`;`--no-ff` 合回 develop 并 push;PROGRESS 留痕;真机验收由用户执行。
|