Skip to content

feat(mobile): split iOS, Android, and HarmonyOS shells (#334 #335 #336) - #337

Merged
PeterGuy326 merged 1 commit into
mainfrom
feat/334-platform-shells
Sep 18, 2026
Merged

PeterGuy326 merged 1 commit into
mainfrom
feat/334-platform-shells

Conversation

@waterbro-8

Copy link
Copy Markdown
Collaborator

Implements #334 #335 #336 on top of #330.

Phone UAs are no longer one generic shell:

  • iOS (iPhone / iPad) → large title + inset grouped list
  • Android → Material top app bar + full-bleed list
  • HarmonyOS / OpenHarmony / ArkWeb → service cards + floating dock (Harmony wins over Android in mixed UAs)

Force with ?platform=ios|android|harmony. Desktop is unchanged.

node --test scripts/test/mobile-web.test.mjs

@waterbro-8

Copy link
Copy Markdown
Collaborator Author

已确认本 PR 是有意的 stacked PR:feat/334-platform-shells → feat/329-mobile-native-shell,先依赖 #330,不应提前改到 main。

已同步 #330 的 desktop surface 修复,并补回归测试,避免 /?surface=desktop 错误返回 Android shell。验证:node --test scripts/test/mobile-web.test.mjs,5/5 通过。当前 head:b1ca653e10c8db8443d890a455981dd16fef0484。

@PeterGuy326 @Bindy-lbb 请在本轮 CI 完成后对最终 head 做独立正式 review;#330 合并后再将本 PR 落到 main 并复核。

#335 #336)

Detect HarmonyOS/OpenHarmony/ArkWeb first, then iOS, then Android. Each OS gets its own layout.
@waterbro-8 waterbro-8 reopened this Sep 18, 2026
@waterbro-8
waterbro-8 changed the base branch from feat/329-mobile-native-shell to main September 18, 2026 09:46
@waterbro-8
waterbro-8 force-pushed the feat/334-platform-shells branch from b1ca653 to 6591ecc Compare September 18, 2026 09:46
@waterbro-8

Copy link
Copy Markdown
Collaborator Author

#330 已合入 main(abb8bcc)。

本 PR 已改 base 为 main,并 rebase 成最终提交 6591ecc:

  • iOS / Android / HarmonyOS 分壳
  • /?surface=desktop 仍 resolvePublicAsset → null,不吐手机壳
  • scripts/test/mobile-web.test.mjs 5/5 本地通过

请审这个最终 head。非阻塞项(CHANGELOG 三处 Added、WebSocket close 未真重连)未在本提交改。

@sun-970 @PeterGuy326 @Bindy-lbb

@waterbro-8
waterbro-8 requested a review from sun-970 September 18, 2026 09:46

@sun-970 sun-970 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed head 6591ecc after it landed on main.

  • detectPlatform 顺序是 HarmonyOS/OpenHarmony/ArkWeb → iOS → Android;混合 UA(Android + HarmonyOS)走 Harmony。
  • /?surface=desktop 时 resolvePublicAsset 返回 null,不会再吐手机壳;scripts/test/mobile-web.test.mjs 覆盖了这条回归,以及三端 UA 各拿自己的 shell。
  • CI 11/11 全绿。

非阻塞(与 #330 相同,本提交未改):

  • CHANGELOG 仍有多处 ### Added
  • WebSocket close 只提示「正在重试」,没有真正重连

Approve。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants