Files
suixinkan_ios_new/suixinkan/Features/Splash/Splash.md
汉秋 d9f897038d 移除 Splash 固定 1.5 秒等待,并补充启动流程分析文档。
未登录冷启动可立即进入登录页;已登录仍等待 bootstrap 接口完成,但不再叠加人为延迟。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 15:27:18 +08:00

1.4 KiB
Raw Blame History

Splash 模块业务逻辑

模块职责

Splash 模块负责冷启动时的品牌启动页展示,对齐 Android SplashActivity + activity_splash.xml 的视觉规范。

该模块不处理登录、隐私协议或远程配置,只承担启动阶段的品牌展示和时序控制。

核心对象

  • SplashView展示白底、180pt Logo、「随心瞰 / 商家版」文案。
  • SplashCoordinator:并行执行 SessionBootstrapper.restorebootstrap 完成后结束 Splash无固定最短展示时长
  • SplashLogo / LaunchBackground:启动页图片与背景色资源,同时用于系统 UILaunchScreen

展示规则

  • 背景色:白色 #FFFFFF
  • LogoSplashLogo180×180 pt
  • 标题:随心瞰40ptbold + italicAppDesign.primary
  • 副标题:商家版20ptbold距底 32pt

启动时序

  1. iOS 系统 Launch Screen 展示白底 + Logo。
  2. RootView 挂载后立即显示 SplashView
  3. SplashCoordinator.start 并行执行 SessionBootstrapper.restore 静默恢复登录态。
  4. bootstrap 完成后淡出 Splash进入 LoginViewMainTabsView
  5. 冷启动期间不显示 Lottie 全局 Loading。

与 Android 的差异

  • Android 首启隐私弹窗在 Splash 上iOS 仍在登录页勾选协议。
  • Android 系统 Launch Screen 与应用内 Splash 使用同一 XMLiOS 系统 Launch Screen 仅展示 Logo文案由 SwiftUI Splash 补齐。