Skip to content

feat(ui): 接入 Miuix 并逐页优化原生界面 - #171

Closed
skynit wants to merge 3 commits into
DSH-APP:mainfrom
skynit:codex/miuix-ui
Closed

skynit wants to merge 3 commits into
DSH-APP:mainfrom
skynit:codex/miuix-ui

Conversation

@skynit

@skynit skynit commented Oct 19, 2026 •

Copy link
Copy Markdown

原生首页、设置和各管理页面的卡片、按钮与排版缺少统一体验,短屏、大字体和长路径也容易挤压操作。本次接入 Miuix,并按页面用途调整信息分组、滚动范围和操作排列。

UI 图片

以下为用户于 2026-10-19 提供的三张手机截图,分别展示启动首页、插件页面和设置页面;已替换此前的 UI 测试渲染图。截图保留原尺寸和原始字节,对应日志越界修复前的已安装版本。

启动首页 插件页面 设置页面
启动首页 插件页面 设置页面

查看三张原图与来源说明。问题反馈的第四张截图仅用于本地排查,不上传。

主要改动

  • 固定 Miuix 0.8.8、Compose UI/Foundation 1.10.5、Kotlin Compose 编译器 2.3.20;Kotlin 限于 ui/miuix 展示层,业务继续 Java 17,Standard API 30 / Low API 23。
  • 首页、设置和底部导航使用 Miuix;保留原页面导航、启动鉴权、禁用状态、日志独立滚动及已有操作回调。
  • 修复长启动日志滚动后越出黑色日志框、覆盖上方操作的问题:原生日志容器自行约束子控件绘制区域,裁剪坐标包含当前滚动量,保留可读日志、文字选择与末尾跟随。
  • 新增 Miuix 卡片容器承载既有 Java/XML 表单,原控件和表单状态可直接访问。共用正文限制宽屏行长,长值完整换行并可复制;短屏和大字体下按钮可纵排,正文与操作一起滚动。
  • 逐页优化配置、模型、插件、安装恢复、设备授权、数据备份、存储文件、终端、欢迎、更新诊断及虚拟屏控制等界面。完整页面清单见 docs/ui-miuix.md。
  • 增加非调试的 standardPersonal 独立体验版:com.dsh.client.miuix / DSHA Miuix,本机签名、数据独立,可与原应用并存;正式版仍遵守原包名和历史签名规则。
  • 补充依赖 SHA-256 与第三方声明,将 Compose 引入的 ARM64 图形库纳入实际 APK 原生成员核验。仅刷新本次四项源码输入的描述符摘要,保留原归档、受管资产与原生二进制摘要。

验证

按要求只执行相关包与定向检查,没有执行全量测试。

  • Standard UI 包:30 项通过,0 失败、0 错误、0 跳过。
  • Low UI 包:30 项通过,0 失败、0 错误、0 跳过。
  • 日志回归扩展在已有测试中:使用 1000 行合成日志,检查中部和末尾的日志像素均在框内且仍可读;原实现确认失败,修复后通过。本轮重新执行两版 UI 包测试和 Release 源码编译。
  • 语言入口:4 项通过;原生 APK 校验夹具:18 项通过;第三方声明:6 项通过;源码描述符检查夹具:8 项通过。
  • Standard / Low Release 的 Kotlin、Java 源码编译通过。
  • 源码描述符检查核验 381 项现有资产、369 项源码输入;国际化、源码卫生、修改 Java 文件格式及差异空白检查通过。
  • 用户于 2026-10-19 反馈已完成独立安装版的实际测试,并要求提交 PR;该反馈不扩写为全部功能或设备矩阵验证。

本次日志裁剪修复尚未重新打包安装到手机;用户此前的测试反馈和三张截图不作为这次修复的真机复验结果。

UI 测试分别执行:

./gradlew :app:testStandardDebugUnitTest --tests 'com.deepseekharness.app.ui.*' \
  -x :app:preBuild -x :app:mergeStandardDebugAssets
./gradlew :app:testLowDebugUnitTest --tests 'com.deepseekharness.app.ui.*' \
  -x :app:preBuild -x :app:mergeLowDebugAssets

上述源码测试与编译因缺少离线归档而在命令行排除资产准备,不代替完整 APK 构建、签名或发布验证。Low 未做设备安装;正式历史签名覆盖、运行中语言切换、读屏、全屏/PiP、Android 6/7 与 16 KiB 真机矩阵不在此次验证声明中。正式发布仍需准备完整资产、按当前 C 源码重建核验会话启动器并生成实际描述符,再执行正式门禁。

本 PR 提交源码、构建配置、必要文档及用户指定的三张手机 UI 截图,未上传 APK、离线归档、问题反馈图、本机签名或安装资料。

@ym2025szz ym2025szz closed this Oct 23, 2026
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.

2 participants