sdk: 同步主仓新增模块 cachegov/lazygrid/select/net 通道

This commit is contained in:
AskaEth committed 2026-09-03 05:09:05 +08:00
1 parent 0af6af7c7e
commit 64cde13c8d
15 files changed
+1326 -10

No files matched your search

+5 -1
View File
@@ -22,7 +22,7 @@ MeowOS 应用框架 SDK 的**公开仓库**——面向第三方开发者,让
MeowOS-SDK/
├── sdk/ # meow_ui 应用框架静态库源码(自包含,可交叉 → sdk/meow_ui.a)
│ ├── meow_ui.h # 伞头(#include 聚合 include/ 子头;App 只 include 这个)
│ ├── include/ # 20 个模块子头(含 box/anim/scroll/str 等)+ meow_ipc.h / meow_font.h / meow_notif.h(vendored)
│ ├── include/ # 24 个模块子头(含 box/anim/scroll/str/lazygrid/select/cachegov/net 通道等)+ meow_ipc.h / meow_font.h / meow_notif.h(vendored)
│ ├── meow_font.c # 预渲染位图字体运行时(meow_font.a 源码,自包含)
│ ├── build_sdk.sh # 交叉编译 meow_ui.a(mipsel 静态库,内含 meow_font.o)
│ └── test_*.c # SDK 宿主逻辑测试(test_host_stub.c 打桩,无硬件可跑)
@@ -60,6 +60,10 @@ cd ../examples/hello
- **字符串资源 / i18n**(§13):`meow_str`/`meow_strf`/`meow_str_set_locale`——内嵌 `zh_cn`/`en_us` 双语表 + TF 卡覆盖表;UI 文案零硬编码,按 locale 取整串。
- **图标库 `sb_icons`**(§5.8):30 个 MD3 Material Symbols 位图动作图标(`MEOW_ICON_*`),`meow_topappbar_set_item_icon` 把 TopAppBar 动作项换成位图图标(修复 ⚙↻⌕ 豆腐)。
- **图片降采样 `meow_img_downscale`**(`include/meow_ui_image.h`):把解码图降到 ≤maxdim 边长省内存(封面/大图用,如 8.28MB→0.78MB)。
- **2 维虚拟化宫格 `meow_lazygrid`**(§12.4):卡片/图标宫格二维虚拟化——只实例化可见行(固定 item 池 ≤96、视口行数+2×cols),`count+bind` 数据源、长列表不卡;命中 `meow_lazygrid_hit/tap_at` 把滚动+网格坐标映射回 item idx;滚动复用 `meow_scroll`(fling/snap)。
- **枚举/预设选择器 `meow_select`**(§5.8.6):开箱即用下拉模态——BottomSheet(标题 + `meow_listview` SINGLE 单选列表)+ `meow_ui_modal_capture/restore` 背景快照(关闭无残影);点选项=选中+`on_change` 回调,点面板外/左缘=取消。
- **磁盘页缓存治理 `meow_cachegov`**(OOM_PAGECACHE_GOVERNANCE):App 登记缓存文件 + read_pos 回调,SDK 做 DONTNEED 治理(L0 曲终整文件丢 / L1 播放中丢已读前缀保 keep_hot 窗口);refault 滚窗逐级回退(放大 keep_hot→降 L0→关 A);`meow_cachegov_download/prefetch_paused` 提供给下载/预取方降载查询。
- **网络自愿通道 `meow_ui_net`**(netmgrd 期 4):联网前 `meow_net_policy_check(host)` 自查是否被策略放行(netmgrd 不在/超时→乐观放行);`meow_net_report(rx,tx)` 自愿上报本进程收发字节(best-effort,失败静默)。
## 构建要求