From 0ecfa4fb693eb0fe4054e82f5583e5320879e781 Mon Sep 17 00:00:00 2001 From: joywayer Date: Mon, 22 Jun 2026 03:10:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20SplashImage=20=E6=96=B9?= =?UTF-8?q?=E5=90=91=EF=BC=9A=E7=B4=A0=E6=9D=90=E9=80=86=E6=97=B6=E9=92=88?= =?UTF-8?q?=E6=97=8B=E8=BD=AC=2090=C2=B0=20=E6=94=B9=E4=B8=BA=E7=9C=9F?= =?UTF-8?q?=E6=AD=A3=E6=A8=AA=E5=B1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 源素材 docs/res/Res/Default-568h@2x~iphone.png 是 CgBI PNG,物理 640×1136 但画面内容是"横躺"在竖向容器里 —— msext 旧 LaunchImage 系统依赖 device orientation 自动旋转,现代 LaunchScreen.storyboard 没有这个魔法,直接显示 会看到躺倒的画面(用户反馈:启动图的横竖方向错误)。 处理: - 用 sips -r -90 -s format png 一次性把素材逆时针旋转 90° 输出为标准 PNG(顺便去掉 CgBI 优化标志),物理像素 1136×640,覆盖到 ylgamehall/Assets.xcassets/SplashImage.imageset/SplashImage@2x.png - LaunchScreen.storyboard 中 的 width/height 从 640/1136 改为 1136/640;UIImageView 的 contentMode 从 scaleAspectFill 改为 scaleAspectFit。aspectFit 在比 16:9 更宽的现代横屏 iPhone(如 16 Pro ≈2.17:1)上左右补黑边(黑底无视觉违和),保画面完整不裁切 logo - WebContainer 的 SplashOverlay 用同款 scaleAspectFit,避免启动 → 容器 视觉过渡时出现裁切方式跳变 - BuildProject 通过 Plan 进度已勾选(§5 Phase 1.14.b + §8 同步修订) Co-Authored-By: Claude Opus 4.7 --- docs/Development-Plan.md | 4 ++-- .../SplashImage.imageset/SplashImage@2x.png | Bin 29708 -> 38253 bytes ylgamehall/Base.lproj/LaunchScreen.storyboard | 4 ++-- .../WebView/WebContainerViewController.swift | 6 +++++- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/docs/Development-Plan.md b/docs/Development-Plan.md index 18cbedd..499ded2 100644 --- a/docs/Development-Plan.md +++ b/docs/Development-Plan.md @@ -288,7 +288,7 @@ Contract Design Plan(本文档) ##### 1.E 集成 + 烟雾测试 - [x] **1.14.a** AppIcon:从 `docs/res/Images.xcassets/AppIcon-1.appiconset` 拷贝 9 个 png + Contents.json 到 `ylgamehall/Assets.xcassets/AppIcon.appiconset`,替换 Xcode 默认空模板。已实测 BuildProject 通过。actool 3 个 warning(iPad 76 / 83.5 / 1024 缺失)暂不处理,iPad 会自动用 iPhone 缩放,1024 是 App Store 上架要求(企业签不强制);待 Phase 10 上线前 polish 时补齐 -- [x] **1.14.b** LaunchScreen:把 `docs/res/Res/Default-568h@2x~iphone.png` 拷到 `ylgamehall/Assets.xcassets/SplashImage.imageset`(universal idiom,仅 @2x 物理文件 29708 字节 640×1136 竖图);改写 `LaunchScreen.storyboard` 为单一 UIImageView 全屏铺满(contentMode = .scaleAspectFill,背景 .black,四边约束到 superview)。注:竖图在横屏设备上会被 aspectFill 裁剪上下,启动只显示 0.x s 接受此折衷,Phase 10 polish 时再考虑出一张专门的横屏素材。BuildProject 通过 +- [x] **1.14.b** LaunchScreen:源素材 `docs/res/Res/Default-568h@2x~iphone.png` 是 CgBI PNG,物理 640×1136 但画面内容是"横躺"在竖向容器里(msext 旧 LaunchImage 系统依赖 device orientation 自动旋转);现代 LaunchScreen.storyboard 没有这个魔法,直接显示会看到躺倒画面。处理:用 `sips -r -90` 一次性把素材逆时针旋转 90° 输出为标准 PNG(去 CgBI),物理像素 1136×640,存到 `ylgamehall/Assets.xcassets/SplashImage.imageset/SplashImage@2x.png`(universal idiom)。storyboard 用单一 UIImageView 全屏铺满,`contentMode = scaleAspectFit`,背景 `.black`,四边约束到 superview。aspectFit 在比 16:9 更宽的现代横屏 iPhone 上左右补黑边(黑底无违和),保画面完整不裁切 logo。WebContainer 的 SplashOverlay 用同款 contentMode,避免启动 → 容器视觉过渡时跳变。BuildProject 通过 - [x] **1.14.c** `LobbyZipUpgrader` 加 progress 回调 - `upgradeIfNeeded(resolved:onProgress:) async throws -> Outcome`,`onProgress: @escaping @Sendable (Double) -> Void` 默认 no-op 报告 0.0…1.0 - 文件内私有 `DownloadProgressDelegate: URLSessionDownloadDelegate, @unchecked Sendable`,实现 `didWriteData:totalBytesWritten:totalBytesExpectedToWrite:`;通过 `session.download(from:delegate:)` 注入 @@ -800,7 +800,7 @@ H5 调 `OpenurlTitleData` 打开弹层 WebView,弹层内 H5 用 `window.settin - [x] 1.12 LocalVersionReader(version.xml 解析 + ATS 全局放行) - [x] 1.13 LobbyZipUpgrader(actor,原子 rename 升级;端到端实测 260→261) - [x] 1.14.a AppIcon 替换 Xcode 默认空模板(iPad / 1024 缺失留 Phase 10 polish) -- [x] 1.14.b LaunchScreen 改启动图(SplashImage 全屏 scaleAspectFill,竖图横屏裁剪折衷) +- [x] 1.14.b LaunchScreen 改启动图(素材逆时针旋转 90° → 物理 1136×640,scaleAspectFit + 黑底左右补边) - [x] 1.14.c LobbyZipUpgrader 加 progress 回调(URLSessionDownloadDelegate,0.0…1.0) - [x] 1.14.d WebContainerViewController(SplashOverlay + 16:9 letterbox + 启动流水线 + 三种 alert) - [x] 1.14.e WebView didFinish 后 0.3s 淡出 splash + removeFromSuperview diff --git a/ylgamehall/Assets.xcassets/SplashImage.imageset/SplashImage@2x.png b/ylgamehall/Assets.xcassets/SplashImage.imageset/SplashImage@2x.png index beb69b4164c183eb27aff1fd250087e7fe13d66c..1e011e55e7013fee82aec6789081549a10d806c6 100644 GIT binary patch literal 38253 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�V0?Ee58%kDzGmx@U_7!qF8BqKkv!U6!}U0s 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�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 BG6w(v diff --git a/ylgamehall/Base.lproj/LaunchScreen.storyboard b/ylgamehall/Base.lproj/LaunchScreen.storyboard index d651be4..206ab88 100644 --- a/ylgamehall/Base.lproj/LaunchScreen.storyboard +++ b/ylgamehall/Base.lproj/LaunchScreen.storyboard @@ -15,7 +15,7 @@ - + @@ -35,6 +35,6 @@ - + diff --git a/ylgamehall/Source/WebView/WebContainerViewController.swift b/ylgamehall/Source/WebView/WebContainerViewController.swift index 93ca307..a23ab3c 100644 --- a/ylgamehall/Source/WebView/WebContainerViewController.swift +++ b/ylgamehall/Source/WebView/WebContainerViewController.swift @@ -248,7 +248,11 @@ private final class SplashOverlay: UIView { super.init(frame: .zero) backgroundColor = .black - imageView.contentMode = .scaleAspectFill + // 与 LaunchScreen.storyboard 同款 contentMode:素材是 1136×640 横屏画面, + // 在更宽的现代横屏设备上用 scaleAspectFit 左右补黑边(黑底统一), + // 避免 scaleAspectFill 把 logo 上下裁切;同时确保 LaunchScreen → WebContainer + // 视觉过渡时不出现裁切方式跳变。 + imageView.contentMode = .scaleAspectFit imageView.image = UIImage(named: "SplashImage") imageView.clipsToBounds = true imageView.translatesAutoresizingMaskIntoConstraints = false