perf(输入法): 降低查词与候选内存开销并放大等尺寸26键

这个提交包含在:
sydxky 于 2026-11-14 20:39:54 +08:00 提交
1 父节点 100757f684
当前提交 7cd1ab906c
33 个文件已更改
+513 -126

没有与搜索条件相匹配的文件

+17 -12
查看文件
@@ -4,20 +4,25 @@
**MIT 开源,允许商用、修改、再分发和闭源集成。** 使用时请保留 [LICENSE](LICENSE) 和 [第三方许可](NOTICE.md)。厂商 SDK、运行时与设备固件不包含在本项目授权中。
![1.2.4 RTOS原生测试工程界面,验证范围见截图说明](docs/UI_PREVIEW.png)
![1.2.5 RTOS原生测试工程界面,验证范围见截图说明](docs/UI_PREVIEW.png)
## 1.2.4 光标贴合、26键扩大与大小写切换
## 1.2.5 减少内存、加速查词与等大26键
- RTOS光标改为独立1像素细线,紧贴前后文字,保留真实空格、emoji与私密遮蔽;长文本仍保持光标可见。Android预览及示例编辑框去掉额外字间距。
- 扩大26键,标准10/9/7三排;圆屏逐排按安全宽度收放,方屏充分利用宽度。
- 点“abc”进入英文,再点“大写”切到大写,点“小写”恢复小写;按钮显示下一步动作,键面与实际输入同步。
- 保留1.2.3未完成拼音补全、上下文续词及稳定刷新:全拼/九宫/14键同步支持;完全离线,密码不参与上下文。
- RTOS运行索引91,357→2,158 B,缓存3分片/48,000字符;去掉整份词库复制,隐藏释放缓存,过期查询停止后续工作。
- 候选按需分页,首页只更新3项,展开才创建整数页计划,只生成当前页;RTOS反应式字段40→29。Android取消过期SQLite、后台规划候选页,文字变化复用键盘布局。
- 26字母统一宽高并放大,标准10/9/7三排,方屏利用全宽,圆屏同步调整留白、候选与底栏。保留光标贴合和大写/小写切换。
RTOS **59项引擎、49项UX及四配置生产构建通过**。独立原生测试工程中,生产键盘组件源码逐字节相同,圆/方普通及QuickApp四配置共96个状态全部通过,光标额外布局间距0px、26个按键边界合格;各配置均实际点击输入`qQq`。96张原生截图随验收ZIP提供。
同一词库、24种全拼/九宫/14键编码,5轮共120次查询:总耗时 227.12 → 194.87 ms,P95 6.70 → 5.01 ms,中位数 1.01 → 1.07 ms;GC后保留堆 1,149,800 → 805,848 B。总耗时减少14.2%,P95减少25.2%,保留堆减少29.9%。中位数略增,不能称所有输入都提速。
Android **7项Java测试及OWW261后台原生组件4项通过**,包含24帧非空绘制/控件复用、补全/续词、密码隔离、实际大小写切换和圆屏边界。Release APK/AAR、生产签名及API27元数据通过。上述是组件回归,未代替最终发布APK的前台端到端验收;本版未重跑原前台交互。RTOS截图来自明确标记的原生测试工程,Android截图为历史资料。
这是Windows Node/V8的对比,数值随主机负载变化;不是Glyphix MCU/真实手表的内存、帧率或触控延迟。原始报告及执行脚本随源码/验收ZIP提供。
[本版RTOS验收](com.sydxky.rtos.inputmethod/VALIDATION_1.2.4.md) · [本版Android验收](android/VALIDATION_1.2.4.md)
RTOS **59项引擎、49项UX、同步检查及四配置构建通过**,独立原生组件四配置**96状态/96截图通过**,26键等大、模式和底部控件边界合格,各配置实际输入qQq。24种编码的完整候选及补全与1.2.4一致,12,000候选分页顺序完整。
Android **8项Java、7项OWW261后台离屏组件回归通过**:原生绘制、24次文字更新只创建一次布局、补全/续词、密码隔离、大小写点击、圆方/192px尺寸等大键和边界、查询取消/恢复。16个运行时class与发布AAR相同;正式签名APK/AAR、API27和zipalign通过。
这是组件回归,不替代最终APK的前台整包验收。最终Android APK未安装到共享手表,原9项前台交互及RTOS原84项整包交互未重跑。RTOS截图来自明确标记的原生测试工程,Android截图为历史资料;RTOS真机、长期性能/功耗及商店审核未验收。
[本版RTOS验收](com.sydxky.rtos.inputmethod/VALIDATION_1.2.5.md) · [本版Android验收](android/VALIDATION_1.2.5.md)
## 1.2.0 已有功能
@@ -33,7 +38,7 @@ Android **7项Java测试及OWW261后台原生组件4项通过**,包含24帧非
| 平台 | 接入与产物 | 已完成的验证 |
| --- | --- | --- |
| Glyphix RTOS | 原生 `.ux` 页面;圆屏 466×466、方屏 390×450 两屏 QuickApp 完整 ZIP | 普通/QuickApp四配置构建;59项引擎和49项UX;独立原生组件四配置96状态/截图通过 |
| Android 8.1 / API 27+ | 原生 AAR;演示 APK;独立 `host/` 示例 | OWW261后台原生组件4项通过;24帧非空绘制及控件复用;前台交互未重跑 |
| Android 8.1 / API 27+ | 原生 AAR;演示 APK;独立 `host/` 示例 | OWW261后台原生组件7项通过;24帧非空绘制、布局复用、等大键及查询取消;前台交互未重跑 |
Android 版本作为**应用内公开组件**,由每个应用自行接入;组件不注册系统输入法。RTOS 页面也需宿主接入,系统级注册依赖厂商支持。
@@ -41,7 +46,7 @@ Android 版本作为**应用内公开组件**,由每个应用自行接入;
## 下载、源码与反馈
- [v1.2.4 发行包与更新说明](https://git2.sydxky.cn/sydxky/crab-input-rtos/releases/tag/v1.2.4):AAR、演示 APK、两屏 RTOS QuickApp、原生组件验收记录/截图及 SHA-256。
- [v1.2.5 发行包与更新说明](https://git2.sydxky.cn/sydxky/crab-input-rtos/releases/tag/v1.2.5):AAR、演示 APK、两屏 RTOS QuickApp、原生组件验收记录/截图及 SHA-256。
- [Android 接入文档](android/README.md) · [RTOS 接入文档](com.sydxky.rtos.inputmethod/README.md)
- [实际界面截图](docs/SCREENSHOTS.md) · [RTOS 验收](com.sydxky.rtos.inputmethod/VALIDATION_1.2.0.md) · [Android 真机验收](android/VALIDATION_1.2.0.md)
- [已有问题](https://git2.sydxky.cn/sydxky/crab-input-rtos/issues) · [免注册提交问题与建议](https://git2.sydxky.cn/feedback/sydxky/crab-input-rtos)
@@ -95,7 +100,7 @@ python .\com.sydxky.rtos.inputmethod\tests\native.py --work work/native --output
python .\com.sydxky.rtos.inputmethod\tests\visual.py --work work/visual --output work/evidence/visual
```
本版光标和26键回归可在独立原生模拟器中执行,不启用Inspector:
本版光标、等大26键及完整底部按钮回归可在独立原生模拟器中执行,不启用Inspector:
```powershell
python .\com.sydxky.rtos.inputmethod\tests\console-native.py --work work/caret --output work/evidence/caret