Skip to content

[codex] adapt UI for HarmonyOS 7 - #11

Draft
haohaoai0 wants to merge 1 commit into
DeadlinerStudio:mainfrom
haohaoai0:codex/harmonyos-7-ui-adaptation
Draft

[codex] adapt UI for HarmonyOS 7#11
haohaoai0 wants to merge 1 commit into
DeadlinerStudio:mainfrom
haohaoai0:codex/harmonyos-7-ui-adaptation

Conversation

@haohaoai0

Copy link
Copy Markdown

改动内容

  • 将工程目标 SDK 升级到 HarmonyOS 7 / API 26,并保留 API 20 最低兼容配置。
  • 新增统一的平台能力门控,使用公开 SDK API Level 判断沉浸材质与 HarmonyOS 7 能力。
  • 完成窗口沉浸、安全区 px/vp 转换、横竖屏、紧凑高度和手机/平板/折叠屏响应式适配。
  • 补充系统主题令牌、深浅色资源以及键盘、鼠标和焦点交互状态。
  • 移除 HdsMiniBarButton,标题栏按钮、分段按钮和搜索框改用原生 ButtonSegmentButtonSearch 系统材质。
  • 修复若干 ArkTS 不兼容写法,包括 Function.bind、类作为对象和嵌套函数。

改动原因

现有界面以旧版系统版本字符串和定制 MiniBar 包装组件控制材质效果,窗口安全区也混用了 px 与 vp。在 HarmonyOS 7、横屏、平板和可变窗口环境下可能出现首帧布局、顶部/底部避让和材质回退不一致的问题。

用户与开发者影响

  • HarmonyOS 7 设备获得完整原生沉浸材质和全屏体验。
  • 较低 API 设备会自动回退到普通原生组件,不影响基本交互。
  • 页面底部内容能够避开浮动导航和手势指示区域。
  • 构建配置可直接识别本地 API 26 SDK。

验证

  • devecocli build clean
  • devecocli build:ArkTS 编译及打包检查通过
  • git diff --check
  • 深浅色资源名称一致性检查
  • 资源 JSON 解析检查
  • HdsMiniBarButton 遗留引用检查:0

已知限制

上游仓库未包含 entry/src/main/cpp/types/libffi_ohos 的真实私有原生库。完整编译验证使用过仅含类型声明的临时桩,临时桩未包含在本 PR 中;生成可运行安装包仍需补回真实原生库并配置签名。

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.

1 participant